diff --git a/roles/nfs-client/tasks/main.yml b/roles/nfs-client/tasks/main.yml new file mode 100644 index 0000000000000000000000000000000000000000..e1512485a89d2c747db556af2b3495e626c06b5c --- /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 0000000000000000000000000000000000000000..1b9d5d2b8c121c3d039d0df5135c9b6fd9053d6b --- /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 0000000000000000000000000000000000000000..2a7137f29478b7cdbedecceda8e1ccfaa2e57565 --- /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 0000000000000000000000000000000000000000..7b77dc761daa5d64900882953560e05d713c3c2e --- /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 0000000000000000000000000000000000000000..c7e34d16ebe7f846fb5433b5c9dfacba4794c9a8 --- /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 0000000000000000000000000000000000000000..b0bc93f6bf9808cf1269d8d2f9ddbc5ed6eb27c0 --- /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 0000000000000000000000000000000000000000..e6a2c4aac840402f65ed37fd10328b25e5865bd6 --- /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 0000000000000000000000000000000000000000..4821a0a95f38173d08926bd230a7cb27bc7087ae --- /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 0000000000000000000000000000000000000000..2d30f92a882e405af04428fe6f983e9184e9c099 --- /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 0000000000000000000000000000000000000000..0ba375f55c86d93791f64d7a006bdf7981df06ab --- /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