summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--inventory/host_vars/sk-2019.yml14
-rw-r--r--inventory/host_vars/sk-2019vm.yml52
-rw-r--r--inventory/host_vars/sk-cloudia/vars.yml10
-rw-r--r--roles/zfs/base/defaults/main.yml9
-rw-r--r--roles/zfs/base/tasks/enable-systemd-mount-generator.yml23
-rw-r--r--roles/zfs/base/tasks/main.yml22
6 files changed, 72 insertions, 58 deletions
diff --git a/inventory/host_vars/sk-2019.yml b/inventory/host_vars/sk-2019.yml
index 9de2b04a..f54d852f 100644
--- a/inventory/host_vars/sk-2019.yml
+++ b/inventory/host_vars/sk-2019.yml
@@ -10,12 +10,13 @@ install:
network: {}
base_intel_nic_stability_fix: true
+ssh_keys_root: "{{ ssh_keys.equinox[env_group] + ssh_keys.dan + ssh_keys.brt }}"
+ssh_allowusers_host: "{{ admin_user_host | map(attribute='name') | list }}"
+
admin_user_host:
- "{{ brt_user }}"
-ssh_keys_root: "{{ ssh_keys.equinox[env_group] + ssh_keys.dan + ssh_keys.brt }}"
-ssh_allowusers_host: "{{ admin_user_host | map(attribute='name') | list }}"
cryptdisk_volumes:
@@ -27,11 +28,12 @@ cryptdisk_volumes:
device: /dev/disk/by-id/nvme-eui.0025388791050fdc-part3
+zfs_use_systemd_mount_generator: no
+zfs_arc_size:
+ min: "{{ 2 * 1024 * 1024 * 1024 }}"
+ max: "{{ 12 * 1024 * 1024 * 1024 }}"
+
zfs_zpools:
storage:
mountpoint: /srv/storage
create_vdevs: mirror /dev/mapper/crypto-nvme0 /dev/mapper/crypto-nvme1
-
-# zfs_arc_size:
-# min: "{{ 2 * 1024 * 1024 * 1024 }}"
-# max: "{{ 16 * 1024 * 1024 * 1024 }}"
diff --git a/inventory/host_vars/sk-2019vm.yml b/inventory/host_vars/sk-2019vm.yml
index 723d0b5c..f9bfb0bb 100644
--- a/inventory/host_vars/sk-2019vm.yml
+++ b/inventory/host_vars/sk-2019vm.yml
@@ -10,6 +10,33 @@ install:
network: {}
base_intel_nic_stability_fix: true
+ssh_keys_root: "{{ ssh_keys.equinox[env_group] + ssh_keys.dan }}"
+
+apt_repo_components:
+- main
+- contrib ## for zfs
+- non-free ## for microcode updates
+
+
+cryptdisk_volumes:
+ crypto-nvme0:
+ passphrase: "{{ vault_cryptdisk_volumes['crypto-nvme0'].passphrase }}"
+ device: /dev/disk/by-id/nvme-eui.0025388291b201dc-part3
+ crypto-nvme1:
+ passphrase: "{{ vault_cryptdisk_volumes['crypto-nvme1'].passphrase }}"
+ device: /dev/disk/by-id/nvme-eui.0025388291b201cb-part3
+
+
+zfs_use_systemd_mount_generator: no
+zfs_arc_size:
+ min: "{{ 2 * 1024 * 1024 * 1024 }}"
+ max: "{{ 8 * 1024 * 1024 * 1024 }}"
+
+zfs_zpools:
+ storage:
+ mountpoint: /srv/storage
+ create_vdevs: mirror /dev/mapper/crypto-nvme0 /dev/mapper/crypto-nvme1
+
vm_host:
network:
@@ -37,28 +64,3 @@ vm_host:
ele-gwhetzner: 2
ch-mimas: 6
sk-testvm: 7
-
-ssh_keys_root: "{{ ssh_keys.equinox[env_group] + ssh_keys.dan }}"
-
-apt_repo_components:
-- main
-- contrib ## for zfs
-- non-free ## for microcode updates
-
-cryptdisk_volumes:
- crypto-nvme0:
- passphrase: "{{ vault_cryptdisk_volumes['crypto-nvme0'].passphrase }}"
- device: /dev/disk/by-id/nvme-eui.0025388291b201dc-part3
- crypto-nvme1:
- passphrase: "{{ vault_cryptdisk_volumes['crypto-nvme1'].passphrase }}"
- device: /dev/disk/by-id/nvme-eui.0025388291b201cb-part3
-
-
-zfs_zpools:
- storage:
- mountpoint: /srv/storage
- create_vdevs: mirror /dev/mapper/crypto-nvme0 /dev/mapper/crypto-nvme1
-
-zfs_arc_size:
- min: "{{ 2 * 1024 * 1024 * 1024 }}"
- max: "{{ 8 * 1024 * 1024 * 1024 }}"
diff --git a/inventory/host_vars/sk-cloudia/vars.yml b/inventory/host_vars/sk-cloudia/vars.yml
index 15dcb860..085a9c95 100644
--- a/inventory/host_vars/sk-cloudia/vars.yml
+++ b/inventory/host_vars/sk-cloudia/vars.yml
@@ -11,15 +11,17 @@ network: {}
base_intel_nic_stability_fix: true
-zfs_zpools:
- storage:
- mountpoint: /srv/storage
- create_vdevs: mirror nvme0n1p3 nvme1n1p3
+zfs_use_systemd_mount_generator: no
zfs_arc_size:
min: "{{ 2 * 1024 * 1024 * 1024 }}"
max: "{{ 16 * 1024 * 1024 * 1024 }}"
+zfs_zpools:
+ storage:
+ mountpoint: /srv/storage
+ create_vdevs: mirror nvme0n1p3 nvme1n1p3
+
docker_zfs:
pool: storage
diff --git a/roles/zfs/base/defaults/main.yml b/roles/zfs/base/defaults/main.yml
index f3dfbce9..c275b981 100644
--- a/roles/zfs/base/defaults/main.yml
+++ b/roles/zfs/base/defaults/main.yml
@@ -1,4 +1,9 @@
---
+zfs_use_systemd_mount_generator: yes
+#zfs_arc_size:
+# min: {{ 2 * 1024 * 1024 * 1024 }}
+# max: {{ 8 * 1024 * 1024 * 1024 }}
+
zfs_zpool_properties:
ashift: 12
@@ -12,7 +17,3 @@ zfs_zpool_properties:
# properties:
# ashift: 12
# prop: value
-
-#zfs_arc_size:
-# min: {{ 2 * 1024 * 1024 * 1024 }}
-# max: {{ 8 * 1024 * 1024 * 1024 }}
diff --git a/roles/zfs/base/tasks/enable-systemd-mount-generator.yml b/roles/zfs/base/tasks/enable-systemd-mount-generator.yml
new file mode 100644
index 00000000..abefbeb1
--- /dev/null
+++ b/roles/zfs/base/tasks/enable-systemd-mount-generator.yml
@@ -0,0 +1,23 @@
+---
+- name: enable zfs-list-cacher zlet
+ file:
+ src: /usr/lib/zfs-linux/zed.d/history_event-zfs-list-cacher.sh
+ dest: /etc/zfs/zed.d/history_event-zfs-list-cacher.sh
+ state: link
+
+- name: create base-directory for zfs-list.cache
+ file:
+ path: /etc/zfs/zfs-list.cache/
+ state: directory
+
+- name: create zfs-list.cache file for zpools
+ loop: "{{ zfs_zpools | dict2items }}"
+ loop_control:
+ label: "{{ item.key }}"
+ copy:
+ content: ""
+ dest: "/etc/zfs/zfs-list.cache/{{ item.key }}"
+ force: no
+
+## TODO: if this is installed after the zpool has already been created zed needs to be triggered
+## using someing like: zfs set canmount=on DATASET
diff --git a/roles/zfs/base/tasks/main.yml b/roles/zfs/base/tasks/main.yml
index e86b974b..ad5d1ce2 100644
--- a/roles/zfs/base/tasks/main.yml
+++ b/roles/zfs/base/tasks/main.yml
@@ -22,25 +22,9 @@
- zfs-zed
state: present
-- name: enable zfs-list-cacher zlet for systemd zfs-mount-generator
- file:
- src: /usr/lib/zfs-linux/zed.d/history_event-zfs-list-cacher.sh
- dest: /etc/zfs/zed.d/history_event-zfs-list-cacher.sh
- state: link
-
-- name: create base-directory for zfs-list.cache
- file:
- path: /etc/zfs/zfs-list.cache/
- state: directory
-
-- name: create zfs-list.cache file for zpools
- loop: "{{ zfs_zpools | dict2items }}"
- loop_control:
- label: "{{ item.key }}"
- copy:
- content: ""
- dest: "/etc/zfs/zfs-list.cache/{{ item.key }}"
- force: no
+- name: enable systemd -mount-generator
+ when: zfs_use_systemd_mount_generator
+ import_tasks: enable-systemd-mount-generator.yml
- name: create zpools
loop: "{{ zfs_zpools | dict2items }}"