ansible-role-basic-system-s.../tasks/nfs-kernel-server.yml

86 lines
2.7 KiB
YAML

---
- name: nfs-kernel-server | Create the export directory trees
block:
- name: nfs-kernel-server | Create the directory of the NFS exports
ansible.builtin.file:
dest: "{{ item.path }}"
state: directory
owner: root
group: root
mode: "0755"
loop: "{{ nfs_server_exports }}"
tags: [san, nfs, storage, kernel_nfs]
- name: nfs-kernel-server | Repositories and packages on EL
block:
- name: nfs-kernel-server | Install the NFS packages on EL
ansible.builtin.yum:
name: "{{ nfs_server_kernel_el_pkgs }}"
state: present
- name: nfs-kernel-server | Ensure that the Ganesha NFS server is not installed
ansible.builtin.yum:
name: nfs-ganesha
state: absent
when: ansible_distribution_file_variety == "RedHat"
tags: [san, nfs, storage, kernel_nfs]
- name: nfs-kernel-server | Repositories and packages on Ubuntu/Debian
block:
- name: nfs-kernel-server | Install the nfs packages on deb systems
ansible.builtin.apt:
pkg: "{{ nfs_server_kernel_deb_pkgs }}"
state: present
cache_valid_time: 1800
- name: nfs-kernel-server | Ensure that the ganesha server package is not installed
ansible.builtin.apt:
pkg: nfs-ganesha
state: absent
when: ansible_distribution_file_variety == "Debian"
tags: [san, nfs, storage, kernel_nfs]
- name: nfs-kernel-server | Manage the NFS exports
block:
- name: nfs-kernel-server | Create the NFS exports folder
ansible.builtin.file:
dest: /etc/exports.d
owner: root
group: root
state: directory
mode: "0755"
- name: nfs-kernel-server | Install the NFS export files
ansible.builtin.template:
src: kernel-nfs-exports.j2
dest: /etc/exports.d/{{ item.name }}.exports
owner: root
group: root
mode: "0644"
loop: "{{ nfs_server_exports }}"
register: update_exportfs
- name: nfs-kernel-server | Ensure that the Kernel NFS service is started and enabled on EL
ansible.builtin.service:
name: nfs-server
state: started
enabled: true
when: ansible_distribution_file_variety == "RedHat"
- name: nfs-kernel-server | Ensure that the Kernel NFS service is started and enabled on deb systems
ansible.builtin.service:
name: nfs-kernel-server
state: started
enabled: true
when: ansible_distribution_file_variety == "Debian"
- name: nfs-kernel-server | Refresh the exports
ansible.builtin.shell: exportfs -r
when: update_exportfs is changed # noqa: no-handler
changed_when: false
tags: [san, nfs, storage, kernel_nfs, kernel_nfs_conf]