summaryrefslogtreecommitdiff
path: root/roles/vm/host/base/tasks/zfs.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/vm/host/base/tasks/zfs.yml')
-rw-r--r--roles/vm/host/base/tasks/zfs.yml20
1 files changed, 20 insertions, 0 deletions
diff --git a/roles/vm/host/base/tasks/zfs.yml b/roles/vm/host/base/tasks/zfs.yml
new file mode 100644
index 00000000..b84f2d0d
--- /dev/null
+++ b/roles/vm/host/base/tasks/zfs.yml
@@ -0,0 +1,20 @@
+---
+- name: create zfs base datasets
+ loop: "{{ lookup('dict', vm_host.zfs, wantlist=True) }}"
+ loop_control:
+ label: "{{ item.key }} -> {{ item.value.pool }}/{{ item.value.name }} ({{ (item.value.properties | default({})).items() | map('join', '=') | join(', ') }})"
+ vars:
+ default_properties:
+ canmount: no
+ mountpoint: none
+ zfs:
+ name: "{{ item.value.pool }}/{{ item.value.name }}"
+ state: present
+ extra_zfs_properties: "{{ default_properties | combine(item.value.properties | default({})) }}"
+
+- name: configure lvm to ignore zfs volumes
+ lineinfile:
+ path: /etc/lvm/lvm.conf
+ backrefs: yes
+ regexp: '^\s*#?\s*global_filter\s*='
+ line: ' global_filter = [ "r|/dev/zd[0-9]+|" ]'