From 6bc4203f98fb847ae136ffd7f6a5e8e2bbd73b11 Mon Sep 17 00:00:00 2001 From: shahaan <shahaan@gmail.com> Date: Wed, 19 Nov 2014 18:23:29 +1100 Subject: [PATCH] Adding nfs roles --- roles/nfs-client/tasks/main.yml | 2 ++ roles/nfs-client/tasks/mountFileSystem.yml | 8 ++++++++ roles/nfs-client/vars/main.yml | 3 +++ roles/nfs-common/handlers/main.yml | 4 ++++ roles/nfs-common/tasks/main.yml | 2 ++ roles/nfs-common/tasks/yumPackages.yml | 7 +++++++ roles/nfs-server/tasks/main.yml | 2 ++ roles/nfs-server/tasks/startServer.yml | 10 ++++++++++ roles/nfs-server/templates/exports.j2 | 1 + roles/nfs-server/templates/iptables.j2 | 13 +++++++++++++ 10 files changed, 52 insertions(+) create mode 100644 roles/nfs-client/tasks/main.yml create mode 100644 roles/nfs-client/tasks/mountFileSystem.yml create mode 100644 roles/nfs-client/vars/main.yml create mode 100644 roles/nfs-common/handlers/main.yml create mode 100644 roles/nfs-common/tasks/main.yml create mode 100644 roles/nfs-common/tasks/yumPackages.yml create mode 100644 roles/nfs-server/tasks/main.yml create mode 100644 roles/nfs-server/tasks/startServer.yml create mode 100644 roles/nfs-server/templates/exports.j2 create mode 100644 roles/nfs-server/templates/iptables.j2 diff --git a/roles/nfs-client/tasks/main.yml b/roles/nfs-client/tasks/main.yml new file mode 100644 index 00000000..e1512485 --- /dev/null +++ b/roles/nfs-client/tasks/main.yml @@ -0,0 +1,2 @@ +--- +- include: mountFileSystem.yml diff --git a/roles/nfs-client/tasks/mountFileSystem.yml b/roles/nfs-client/tasks/mountFileSystem.yml new file mode 100644 index 00000000..1b9d5d2b --- /dev/null +++ b/roles/nfs-client/tasks/mountFileSystem.yml @@ -0,0 +1,8 @@ +--- +- + mount: "name={{ item.0 }} src={{ nfs_server }}:{{ item.1 }} fstype=nfs opts=vers=3,noatime,rsize=16384,wsize=16384,hard,intr,tcp,nolock state=mounted" + name: "Mounting NFS mounts" + with_together: + - destDir + - srcDir + diff --git a/roles/nfs-client/vars/main.yml b/roles/nfs-client/vars/main.yml new file mode 100644 index 00000000..2a7137f2 --- /dev/null +++ b/roles/nfs-client/vars/main.yml @@ -0,0 +1,3 @@ +--- +srcDir: ['/mnt'] +destDir: ['/mnt/test-nfs'] diff --git a/roles/nfs-common/handlers/main.yml b/roles/nfs-common/handlers/main.yml new file mode 100644 index 00000000..7b77dc76 --- /dev/null +++ b/roles/nfs-common/handlers/main.yml @@ -0,0 +1,4 @@ +--- +- + name: "Run rpcbind service" + service: "name=rpcbind state=started" diff --git a/roles/nfs-common/tasks/main.yml b/roles/nfs-common/tasks/main.yml new file mode 100644 index 00000000..c7e34d16 --- /dev/null +++ b/roles/nfs-common/tasks/main.yml @@ -0,0 +1,2 @@ +--- +- include: yumPackages.yml diff --git a/roles/nfs-common/tasks/yumPackages.yml b/roles/nfs-common/tasks/yumPackages.yml new file mode 100644 index 00000000..b0bc93f6 --- /dev/null +++ b/roles/nfs-common/tasks/yumPackages.yml @@ -0,0 +1,7 @@ +--- +- + name: "Install nfs-utils" + with_items: + - bind-utils + - nfs-utils + yum: "name={{ item }} state=latest" diff --git a/roles/nfs-server/tasks/main.yml b/roles/nfs-server/tasks/main.yml new file mode 100644 index 00000000..e6a2c4aa --- /dev/null +++ b/roles/nfs-server/tasks/main.yml @@ -0,0 +1,2 @@ +--- +- include: startServer.yml diff --git a/roles/nfs-server/tasks/startServer.yml b/roles/nfs-server/tasks/startServer.yml new file mode 100644 index 00000000..4821a0a9 --- /dev/null +++ b/roles/nfs-server/tasks/startServer.yml @@ -0,0 +1,10 @@ +--- +- + name: "Starting rpcbind" + service: "name=rpcbind state=started" +- + name: "Copying /etc/exports template" + template: "src=exports.j2 dest=/etc/exports mode=0644 owner=root" +- + name: "Start the Server" + service: "name=nfs state=started" diff --git a/roles/nfs-server/templates/exports.j2 b/roles/nfs-server/templates/exports.j2 new file mode 100644 index 00000000..2d30f92a --- /dev/null +++ b/roles/nfs-server/templates/exports.j2 @@ -0,0 +1 @@ +/mnt {{ nfs_network }}(rw,sync,root_squash) diff --git a/roles/nfs-server/templates/iptables.j2 b/roles/nfs-server/templates/iptables.j2 new file mode 100644 index 00000000..0ba375f5 --- /dev/null +++ b/roles/nfs-server/templates/iptables.j2 @@ -0,0 +1,13 @@ +*filter +:INPUT ACCEPT [0:0] +:FORWARD ACCEPT [0:0] +:OUTPUT ACCEPT [3876421698:11303590692860] +:OpenVPN-INPUT - [0:0] +-A INPUT -i tun0 -j OpenVPN-INPUT +-A FORWARD -j OpenVPN-INPUT + +# Start adding the Rules +#-A OpenVPN-INPUT -p tcp -m tcp -i tun0 -s {{ nfs_network }} -j ACCEPT + +-P INPUT -i tun0 -j ACCEPT +COMMIT -- GitLab