summaryrefslogtreecommitdiff
path: root/roles/containerd
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2019-10-10 23:36:51 +0200
committerChristian Pointner <equinox@spreadspace.org>2019-10-10 23:37:00 +0200
commit6d65dac3d747cd126eaa71463237f290b12360f3 (patch)
treebbd37676079469e443e05774bca0118aaa4657b6 /roles/containerd
parentadded zfs support for docker (diff)
added role for containerd and improve kubernetes/base
Diffstat (limited to 'roles/containerd')
-rw-r--r--roles/containerd/tasks/lvm.yml18
-rw-r--r--roles/containerd/tasks/main.yml19
-rw-r--r--roles/containerd/tasks/zfs.yml15
3 files changed, 52 insertions, 0 deletions
diff --git a/roles/containerd/tasks/lvm.yml b/roles/containerd/tasks/lvm.yml
new file mode 100644
index 00000000..d6233ff7
--- /dev/null
+++ b/roles/containerd/tasks/lvm.yml
@@ -0,0 +1,18 @@
+---
+- name: create logical volume
+ lvol:
+ vg: "{{ containerd_lvm.vg }}"
+ lv: "{{ containerd_lvm.lv }}"
+ size: "{{ containerd_lvm.size }}"
+
+- name: create filesystem
+ filesystem:
+ fstype: "{{ containerd_lvm.fs }}"
+ dev: "/dev/mapper/{{ containerd_lvm.vg | replace('-', '--') }}-{{ containerd_lvm.lv | replace('-', '--') }}"
+
+- name: mount filesytem
+ mount:
+ src: "/dev/mapper/{{ containerd_lvm.vg | replace('-', '--') }}-{{ containerd_lvm.lv | replace('-', '--') }}"
+ path: /var/lib/containerd
+ fstype: "{{ containerd_lvm.fs }}"
+ state: mounted
diff --git a/roles/containerd/tasks/main.yml b/roles/containerd/tasks/main.yml
new file mode 100644
index 00000000..daf613ae
--- /dev/null
+++ b/roles/containerd/tasks/main.yml
@@ -0,0 +1,19 @@
+---
+- name: check for supported platform
+ when: ansible_distribution != "Ubuntu"
+ fail:
+ msg: "currenty this only works with ubuntu"
+
+- name: prepare /var/lib/containerd as LVM
+ when: containerd_lvm is defined
+ import_tasks: lvm.yml
+
+- name: prepare /var/lib/containerd as ZFS dataset
+ when: containerd_zfs is defined
+ import_tasks: zfs.yml
+
+- name: install containerd
+ apt:
+ name: containerd
+ state: present
+ force: yes
diff --git a/roles/containerd/tasks/zfs.yml b/roles/containerd/tasks/zfs.yml
new file mode 100644
index 00000000..52dde5af
--- /dev/null
+++ b/roles/containerd/tasks/zfs.yml
@@ -0,0 +1,15 @@
+---
+- name: create zfs dataset
+ zfs:
+ name: "{{ containerd_zfs.pool }}/{{ containerd_zfs.name }}"
+ state: present
+ extra_zfs_properties:
+ quota: "{{ containerd_zfs.size }}"
+
+- name: bind mount filesytem
+ mount:
+ src: "{{ zfs_zpools[containerd_zfs.pool].mountpoint }}/{{ containerd_zfs.name }}"
+ path: /var/lib/containerd
+ fstype: none
+ opts: bind,x-systemd.automount,nofail
+ state: mounted