diff --git a/playbook/cvl2.yml b/playbook/cvl2.yml
index 4dc5df2daed2bb72874faf991c7755ca8a59562f..d333fbe7e8c16ba8391178592b0a9154c42cccbe 100644
--- a/playbook/cvl2.yml
+++ b/playbook/cvl2.yml
@@ -22,13 +22,23 @@
     slurmctrl: "{{ groups['ManagementNodes'][0] }}"
     slurmqueues:
       - {name: batch, group: ComputeNodes, default: true}
+      - {name: debug, group: ComputeNodesDebug, default: false}
+      - {name: multicore, group: ComputeNodesLarge, default: false}
+    mkFileSystems:
+        - {fstype : 'ext4', dev: '/dev/vdc1', opts: '', name: '/scrach'}
+        - {fstype : 'ext4', dev: '/dev/vdc2', opts: '', name: '/cvl_home'}
+        - {fstype : 'ext4', dev: '/dev/vdc3', opts: '', name: '/usr/local'}
+    mountFileSystems:
+        - {fstype : 'ext4', dev: '/dev/vdc1', opts: 'defaults,nofail', name: '/scrach'}
+        - {fstype : 'ext4', dev: '/dev/vdc2', opts: 'defaults,nofail', name: '/cvl_home'}
+        - {fstype : 'ext4', dev: '/dev/vdc3', opts: 'defaults,nofail', name: '/usr/local'}
   roles:
     - { role: easy-rsa-CA }
-    - { role: OpenVPN-Server, configDiskDevice: true, mkFileSystems: {fstype : 'ext4', dev: '/dev/vdc', opts: 'defaults,nofail'} }
+    - { role: OpenVPN-Server }
     - { role: ntp }
     - { role: openLdapClient }
     - { role: slurm-build }
-    - { role: nfs-server, configDiskDevice: false }
+    - { role: nfs-server, configDiskDevice: true }
     - { role: slurm, slurm_use_vpn: true}
     - { role: installPackage, yumGroupPackageList: ['CVL Pre-installation', 'CVL Base Packages'], cliCopy: {'run': 'cp -r /usr/local/Modules/modulefiles/cvl /usr/local/Modules/modulefiles/massive', 'check': '/usr/local/Modules/modulefiles/massive'} }
   tasks:
@@ -40,6 +50,32 @@
   roles:
     - { role: etcHosts, domain: "{{ ldapDomain }}" }
 
+- hosts: 'ComputeNodes*'
+  vars_files:
+    - massive_var/main.yml
+    - massive_var/passwords.yml
+    - massive_var/package.yml
+  vars:
+    openvpn_servers: "{{ groups['ManagementNodes'] }}"
+  roles:
+    - { role: OpenVPN-Client }
+
+- hosts: 'LoginNodes'
+  vars_files:
+    - massive_var/main.yml
+    - massive_var/passwords.yml
+    - massive_var/package.yml
+  vars:
+    openvpn_servers: "{{ groups['ManagementNodes'] }}"
+  roles:
+    - { role: OpenVPN-Client }
+
+- hosts: all 
+  vars_files:
+    - massive_var/main.yml
+  roles:
+    - { role: etcHosts, domain: "{{ ldapDomain }}" }
+
 - hosts: 'ComputeNodes'
   vars_files:
     - massive_var/main.yml
@@ -54,21 +90,42 @@
     nfs_server: "{{ groups['ManagementNodes'][0] }}"
     groupList:
       - { name : 'ComputeNodes', interface : 'tun0' }
+    exportList: 
+      - { name: '/usr/local', src: '/usr/local', fstype: 'nfs4', opts: 'defaults,ro,nofail', interface : 'tun0', srvopts: 'ro,fsid=0,sync' } 
+      - { name: '/home', src: '/cvl_home', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' } 
+      - { name: '/scratch', src: '/scratch', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' }
   roles:
-    - { role: OpenVPN-Client, x509_ca_server: "cvlm2management1" }
     - { role: ntp }
     - { role: openLdapClient }
-    - { role: syncExports, nfs_server: "cvlm2management1", exportList: [{ name: '/', src: '/usr/local', fstype: 'nfs4', opts: 'defaults,ro,nofail', nfsServerIp: "{{ hostvars['cvlm2management1']['ansible_tun0']['ipv4']['address'] }}", srvopts: 'ro,fsid=0,sync' }] }
-    - { role: nfs-client, exportList: "[{ 'name': '/home', 'src': '/', 'fstype': 'nfs4', 'opts': 'defaults,nofail', 'nfsServerIp': '{{ nfsServerIpAddress }}', 'nfsClientIp': '{{ ansible_tun0.ipv4.address }}', 'srvopts': 'rw,root_squash,fsid=0,sync' }]" }
-    - { role: nfs-client, exportList: "[ { 'name': '/usr/local', 'src': '/', 'fstype': 'nfs4', 'opts': 'defaults,ro,nofail', 'nfsServerIp': '{{ hostvars[nfs_server]['ansible_tun0']['ipv4']['address'] }}', 'srvopts': 'ro,fsid=0,sync' }]" }
+    - { role: syncExports }
+    - { role: nfs-client }
     - { role: slurm, slurm_use_vpn: true}
     - { role: installPackage, preInstallation: "umount /usr/local", postInstallation: "mount /usr/local", yumGroupPackageList: ["CVL Pre-installation", "CVL Base Packages"], cliFileCopy: {'src': '/tmp/gconf_path', 'dest': '/etc/gconf/2/path'} }
 
-- hosts: all 
+- hosts: 'ComputeNodesDev'
   vars_files:
     - massive_var/main.yml
+    - massive_var/passwords.yml
+    - massive_var/package.yml
+  vars:
+    x509_ca_server: "{{ groups['ManagementNodes'][0] }}"
+    openvpn_servers: "{{ groups['ManagementNodes'] }}"
+    slurmctrl: "{{ groups['ManagementNodes'][0] }}"
+    slurmqueues:
+      - {name: debug, group: ComputeNodesDebug, default: false}
+    nfs_server: "{{ groups['ManagementNodes'][0] }}"
+    groupList:
+      - { name : 'ComputeNodes', interface : 'tun0' }
+    exportList: 
+      - { name: '/home', src: '/cvl_home', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' } 
+      - { name: '/scratch', src: '/scratch', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' }
   roles:
-    - { role: etcHosts, domain: "{{ ldapDomain }}" }
+    - { role: ntp }
+    - { role: openLdapClient }
+    - { role: syncExports }
+    - { role: nfs-client }
+    - { role: slurm, slurm_use_vpn: true}
+    - { role: installPackage, preInstallation: "umount /usr/local", postInstallation: "mount /usr/local", yumGroupPackageList: ["CVL Pre-installation", "CVL Base Packages"], cliFileCopy: {'src': '/tmp/gconf_path', 'dest': '/etc/gconf/2/path'} }
 
 - hosts: 'ComputeNodesLarge'
   vars_files:
@@ -80,26 +137,22 @@
     openvpn_servers: "{{ groups['ManagementNodes'] }}"
     slurmctrl: "{{ groups['ManagementNodes'][0] }}"
     slurmqueues:
-      - {name: multicore, group: ComputeNodesLarge, default: true}
+      - {name: multicore, group: ComputeNodesLarge, default: false}
     nfs_server: "{{ groups['ManagementNodes'][0] }}"
     groupList:
       - { name : 'ComputeNodes', interface : 'tun0' }
+    exportList: 
+      - { name: '/usr/local', src: '/usr/local', fstype: 'nfs4', opts: 'defaults,ro,nofail', interface : 'tun0', srvopts: 'ro,fsid=0,sync' }
+      - { name: '/home', src: '/cvl_home', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' } 
+      - { name: '/scratch', src: '/scratch', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' }
   roles:
-    - { role: OpenVPN-Client, x509_ca_server: "cvlm2management1" }
     - { role: ntp }
     - { role: openLdapClient }
-    - { role: syncExports, nfs_server: "cvlm2management1", exportList: [{ name: '/', src: '/usr/local', fstype: 'nfs4', opts: 'defaults,ro,nofail', nfsServerIp: "{{ hostvars['cvlm2management1']['ansible_tun0']['ipv4']['address'] }}", srvopts: 'ro,fsid=0,sync' }] }
-    - { role: nfs-client, exportList: "[{ 'name': '/home', 'src': '/', 'fstype': 'nfs4', 'opts': 'defaults,nofail', 'nfsServerIp': '{{ nfsServerIpAddress }}', 'nfsClientIp': '{{ ansible_tun0.ipv4.address }}', 'srvopts': 'rw,root_squash,fsid=0,sync' }]" }
-    - { role: nfs-client, exportList: "[ { 'name': '/usr/local', 'src': '/', 'fstype': 'nfs4', 'opts': 'defaults,ro,nofail', 'nfsServerIp': '{{ hostvars[nfs_server]['ansible_tun0']['ipv4']['address'] }}', 'srvopts': 'ro,fsid=0,sync' }]" }
+    - { role: syncExports }
+    - { role: nfs-client }
     - { role: slurm, slurm_use_vpn: true}
     - { role: installPackage, preInstallation: "umount /usr/local", postInstallation: "mount /usr/local", yumGroupPackageList: ["CVL Pre-installation", "CVL Base Packages"], cliFileCopy: {'src': '/tmp/gconf_path', 'dest': '/etc/gconf/2/path'} }
 
-- hosts: all 
-  vars_files:
-    - massive_var/main.yml
-  roles:
-    - { role: etcHosts, domain: "{{ ldapDomain }}" }
-
 - hosts: 'LoginNodes'
   vars_files:
     - massive_var/main.yml
@@ -112,12 +165,27 @@
     slurmctrl: "{{ groups['ManagementNodes'][0] }}"
     slurmqueues:
       - {name: batch, group: ComputeNodes, default: true}
-#      - {name: vis, group: ComputeNodes, default: false}
+    exportList: 
+      - { name: '/home', src: '/cvl_home', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' } 
   roles:
-    - { role: OpenVPN-Client }
+    - { role: syncExports }
+#    - { role: OpenVPN-Client }
     - { role: ntp }
     - { role: openLdapClient }
-    - { role: nfs-client, exportList: "[{ 'name': '/home', 'src': '/', 'fstype': 'nfs4', 'opts': 'defaults,nofail', 'nfsServerIp': '{{ nfsServerIpAddress }}', 'nfsClientIp': '{{ ansible_tun0.ipv4.address }}', 'srvopts': 'rw,root_squash,fsid=0,sync' }]" }
+    - { role: nfs-client }
     - { role: slurm, slurm_use_vpn: true}
     - { role: installPackage, importRepo: { command: "wget http://cvlrepo.massive.org.au/repo/cvl.repo -O", destination: "/etc/yum.repos.d/cvl.repo" }, yumGroupPackageList: ['CVL Pre-installation', 'CVL Base Packages'], cliCopy: {'run': 'cp -r /usr/local/Modules/modulefiles/cvl /usr/local/Modules/modulefiles/massive', 'check': '/usr/local/Modules/modulefiles/massive'} }
 
+- hosts: "'ComputeNodes*' 'LoginNodes'"
+  vars_files:
+    - massive_var/main.yml
+    - massive_var/passwords.yml
+    - massive_var/package.yml
+  vars:
+    exportList: 
+      - { name: '/usr/local', src: '/usr/local', fstype: 'nfs4', opts: 'defaults,ro,nofail', interface : 'tun0', srvopts: 'ro,fsid=0,sync' } 
+      - { name: '/home', src: '/cvl_home', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' } 
+      - { name: '/scratch', src: '/scratch', fstype: 'nfs4', opts: 'defaults,nofail', interface : 'tun0', srvopts: 'rw,root_squash,fsid=0,sync' }
+  roles:
+    - { role: syncExports }
+
diff --git a/playbook/massive_var/main.yml b/playbook/massive_var/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..22b784529a43f4a50abc243f365b9d0328b4f288
--- /dev/null
+++ b/playbook/massive_var/main.yml
@@ -0,0 +1,71 @@
+---
+ldapServerHostIpLine: "130.220.209.234 m2-w.massive.org.au"
+ldapCaCertSrc: "/tmp/m1-w-ca.pem" 
+countryName: "AU"
+reginalName: "Victoria"
+cityName: "Melbourne"
+organizationName: "Monash University"
+emailAddress: "help@massive.org.au"
+organizationUnit: "MASSIVE"
+nfsServerIpAddress: m2-login3.massive.org.au
+
+x509_cert_file: "/etc/openvpn/certs/{{ x509_ca_server }}.crt"
+x509_key_file: "/etc/openvpn/private/{{ x509_ca_server }}.key"
+x509_cacert_file: "/etc/ssl/certs/ca_{{ x509_ca_server }}.crt"
+###x509_common_name: "{{ x509_ca_server }}CommonName"
+x509_common_name: "{{ inventory_hostname }}"
+x509_csr_args: "--server"
+x509_sign_args: "{{ x509_csr_args }}"
+dhparms_file: "/etc/openvpn/private/dh.pem"
+server_network: "10.8.0.0"
+server_netmask: "255.255.255.0"
+
+slurm_version: 14.11.2
+munge_version: 0.5.11
+userRelocationName: "ec2-user"
+userNewHome: "/local_home"
+#nfs_type: "nfs4"
+#nfs_options: "defaults"
+#nfs_server: "m2-login3.massive.org.au"
+ldapServerHost: "130.220.209.234 m2-w.massive.org.au"
+ldapDomain: "massive.org.au"
+ldapURI: "ldaps://m2-w.massive.org.au:1637/"
+ldapBindDN: "cn=ldapbind,cn=users,dc=massive,dc=org,dc=au" 
+ldapBase: "cn=users,dc=massive,dc=org,dc=au"
+ldapUserClass: "user"
+ldapUserHomeDirectory: "unixHomeDirectory"
+ldapUserPricipal: "userPrincipalName"
+ldapGroupBase: "ou=groups,dc=massive,dc=org,dc=au"
+tlsCaCertDirectory: "/etc/openldap/certs"
+ldapCaCertFile: "/etc/openldap/certs/m1-w-ca.pem"
+ldapCaCertFileSource: "/tmp/cvl2server/m1-w-ca.pem"
+cacertFile: "cacert.pem"
+#domain: "cvl.massive.org.au"
+domain: "massive.org.au"
+ldapRfc2307: |
+  ldap_schema = rfc2307
+  ldap_search_base = cn=users,dc=massive,dc=org,dc=au
+  ldap_user_search_base = cn=users,dc=massive,dc=org,dc=au
+  ldap_user_object_class = user
+  ldap_user_home_directory = unixHomeDirectory
+  ldap_user_principal = userPrincipalName
+  ldap_user_name = uid
+  ldap_group_search_base = ou=groups,dc=massive,dc=org,dc=au
+  ldap_group_object_class = group
+  ldap_access_order = expire
+  ldap_account_expire_policy = ad
+
+ldapRfc2307Pam: |
+  scope sub
+  nss_base_passwd cn=users,dc=massive,dc=org,dc=au?sub
+  nss_base_shadow cn=users,dc=massive,dc=org,dc=au?sub
+  nss_base_group cn=users,dc=massive,dc=org,dc=au?sub
+  nss_map_objectclass posixAccount user
+  nss_map_objectclass shadowAccount user
+  nss_map_objectclass posixGroup group
+  nss_map_attribute homeDirectory unixHomeDirectory
+  nss_map_attribute uniqueMember member
+  nss_map_attribute shadowLastChange pwdLastSet
+  pam_login_attribute sAMAccountName
+  pam_filter objectClass=User
+  pam_password ad
diff --git a/playbook/massive_var/package.yml b/playbook/massive_var/package.yml
new file mode 100644
index 0000000000000000000000000000000000000000..26d13db3708730b0ab3500e97c4b3346b3bd6641
--- /dev/null
+++ b/playbook/massive_var/package.yml
@@ -0,0 +1,8 @@
+---
+importRepo: { command: "wget http://cvlrepo.massive.org.au/repo/cvl.repo -O", destination: "/etc/yum.repos.d/cvl.repo" }
+#yumGroupPackageList:
+#  - CVL Pre-installation
+#  - CVL Base Packages
+#  - CVL System
+#  - CVL System Extension
+#  - CVL General Imaging Tools