Ansible Role for ZFS on Fedora, Red Hat/derivatives, Debian, or Ubuntu.
| Variable | Description | Role Default | Upstream Default |
|---|---|---|---|
zfs_dkms_arc_pct_min |
Minimum physical memory (%) for ARC. (Adaptive Read Cache) |
0 |
0 |
zfs_dkms_arc_pct_max |
Peak physical memory (%) for ARC. | 16 |
0 |
zfs_dkms_timeout |
Seconds to wait while rebooting Fedora, RHEL, or derivatives for kernel/header currency. Not applicable to Debian or Ubuntu.Skipped when zfs is already loaded. |
3600 |
N/A |
community.general: use modulesrhsm_repository,dnf_config_manager, andmodprobe
---
- name: ZFS + Pool
hosts: all
vars:
zfs_mirror_disks: # see NOTE below
- /dev/disk/by-id/ata-WDC_WD120EFBX-ABCDEFG_12345678
- /dev/disk/by-id/ata-WDC_WD120EFBX-HIJKLMN_87654321
roles:
- name: zfs_dkms # this role, installs/builds ZFS
vars:
zfs_dkms_arc_pct_max: 33
tasks:
- name: "Pool (mirror, 'rust')" # see also: 'community.general.zfs'
when: zfs_mirror_disks is defined
community.general.zpool:
name: rust
pool_properties:
ashift: 12
filesystem_properties:
compression: lz4
vdevs:
- type: mirror
disks: "{{ zfs_mirror_disks }}" # reminder: see NOTE below
become: trueNOTE: Not recommended to inline zfs_mirror_disks, zfs_dkms_arc_pct_max, or pool/filesystem properties.
Values are expected to be unique among hosts [or groups].
Use the
inventory
or host/group vars
instead.
DNF may fail to find packages on Fedora when the kernel is not supported by ZFS. Previously-installed kernels, or LTS [from third-parties/COPR], may be advisable until the latest 'stable' is supported.