From 261023f9c3c93d9a1c207dfdce841ff5490504d3 Mon Sep 17 00:00:00 2001 From: Michal Zegan Date: Wed, 19 Dec 2018 11:47:30 +0100 Subject: Add ansible nfs role This commit adds role for creating /dockerdata-nfs and exporting i over nfs for later use during onap deployment. Change-Id: I0ea8e858d581534b983eaab6e1ee570068fc623c Issue-ID: OOM-1551 Signed-off-by: Michal Zegan --- ansible/roles/nfs/defaults/main.yml | 5 +++++ ansible/roles/nfs/tasks/main.yml | 33 +++++++++++++++++++++++++++++++++ ansible/roles/nfs/templates/exports.j2 | 3 +++ 3 files changed, 41 insertions(+) create mode 100644 ansible/roles/nfs/defaults/main.yml create mode 100644 ansible/roles/nfs/tasks/main.yml create mode 100644 ansible/roles/nfs/templates/exports.j2 (limited to 'ansible/roles') diff --git a/ansible/roles/nfs/defaults/main.yml b/ansible/roles/nfs/defaults/main.yml new file mode 100644 index 00000000..a5e1d2a5 --- /dev/null +++ b/ansible/roles/nfs/defaults/main.yml @@ -0,0 +1,5 @@ +--- +nfs_services: + RedHat: + - rpcbind + - nfs diff --git a/ansible/roles/nfs/tasks/main.yml b/ansible/roles/nfs/tasks/main.yml new file mode 100644 index 00000000..32194d13 --- /dev/null +++ b/ansible/roles/nfs/tasks/main.yml @@ -0,0 +1,33 @@ +--- +- name: Create nfs directory + file: + path: "{{ nfs_mount_path }}" + state: directory + mode: 0777 + +- name: Setup nfs server + block: + - name: Start services + systemd: + name: "{{ item }}" + state: started + with_items: "{{ nfs_services[ansible_os_family] }}" + + - name: Add hosts to exports + template: + src: exports.j2 + dest: /etc/exports + + - name: Export nfs + command: exportfs -ar + when: + - "'nfs-server' in group_names" + +- name: Mount dockerdata-nfs + mount: + path: "{{ nfs_mount_path }}" + src: "{{ hostvars[groups['nfs-server'].0].ansible_host }}:{{ nfs_mount_path }}" + fstype: nfs + state: mounted + when: + - "'nfs-server' not in group_names" diff --git a/ansible/roles/nfs/templates/exports.j2 b/ansible/roles/nfs/templates/exports.j2 new file mode 100644 index 00000000..1f6956c2 --- /dev/null +++ b/ansible/roles/nfs/templates/exports.j2 @@ -0,0 +1,3 @@ +{% for host in groups.kubernetes[1:] -%} + {{ nfs_mount_path }} {{ hostvars[host].ansible_host }}(rw,sync,no_root_squash,no_subtree_check) +{% endfor %} -- cgit 1.2.3-korg