main.yml 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. ---
  2. - name: Install nfs-utils
  3. package: name=nfs-utils state=present
  4. - name: Configure NFS
  5. lineinfile:
  6. dest: /etc/sysconfig/nfs
  7. regexp: '^RPCNFSDARGS=.*$'
  8. line: 'RPCNFSDARGS="-N 2 -N 3"'
  9. register: nfs_config
  10. - name: Restart nfs-config
  11. systemd: name=nfs-config state=restarted
  12. when: nfs_config | changed
  13. - name: Ensure exports directory exists
  14. file:
  15. path: "{{ openshift.hosted.registry.storage.nfs.directory }}"
  16. state: directory
  17. - name: Ensure export directories exist
  18. file:
  19. path: "{{ item.storage.nfs.directory }}/{{ item.storage.volume.name }}"
  20. state: directory
  21. mode: 0777
  22. owner: nfsnobody
  23. group: nfsnobody
  24. with_items:
  25. - "{{ openshift.hosted.registry }}"
  26. - "{{ openshift.hosted.metrics }}"
  27. - "{{ openshift.hosted.logging }}"
  28. - "{{ openshift.hosted.loggingops }}"
  29. - "{{ openshift.hosted.etcd }}"
  30. - name: Configure exports
  31. template:
  32. dest: /etc/exports.d/openshift-ansible.exports
  33. src: exports.j2
  34. notify:
  35. - restart nfs-server
  36. # Now that we're putting our exports in our own file clean up the old ones
  37. - name: register exports
  38. command: cat /etc/exports.d/openshift-ansible.exports
  39. register: exports_out
  40. - name: remove exports from /etc/exports
  41. lineinfile:
  42. dest: /etc/exports
  43. line: "{{ item }}"
  44. state: absent
  45. with_items: "{{ exports_out.stdout_lines | default([]) }}"
  46. when: exports_out.rc == 0
  47. notify:
  48. - restart nfs-server
  49. - name: Enable and start services
  50. systemd:
  51. name: nfs-server
  52. state: started
  53. enabled: yes
  54. register: start_result
  55. - set_fact:
  56. nfs_service_status_changed: "{{ start_result | changed }}"