diff --git a/cesnet-central/playbooks/cvmfs.yaml b/cesnet-central/playbooks/cvmfs.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..74d53ee0971e71ab97f88bb63e5771aaa955642d
--- /dev/null
+++ b/cesnet-central/playbooks/cvmfs.yaml
@@ -0,0 +1,77 @@
+---
+- name: CVMFS deployment
+  hosts: ingress, nfs, worker
+  vars:
+    # EGI repositories: gridpp.egi.eu eosc.egi.eu pheno.egi.eu mice.egi.eu ghost.egi.eu wenmr.egi.eu neugrid.egi.eu auger.egi.eu dirac.egi.eu galdyn.egi.eu seadatanet.egi.eu ligo.egi.eu supernemo.egi.eu pravda.egi.eu chipster.egi.eu hyperk.egi.eu snoplus.egi.eu km3net.egi.eu t2k.egi.eu na62.egi.eu biomed.egi.eu eiscat.egi.eu comet.egi.eu notebooks.egi.eu
+    cvmfs_repositories:
+      - cvmfs-config.cern.ch  # required
+      - atlas.cern.ch
+      - cms.cern.ch
+      - grid.cern.ch
+      - auger.egi.eu
+      - biomed.egi.eu
+      - dirac.egi.eu
+      - eiscat.egi.eu
+      - notebooks.egi.eu
+  become: true
+  tasks:
+    - name: Check cvmfs apt repository
+      command:
+        cmd: dpkg-query -W cvmfs-release
+      register: cvmfs_release_check_deb
+      failed_when: cvmfs_release_check_deb.rc > 1
+      changed_when: false
+    # Avoid occasional network failures (partially)
+    - name: Set cvmfs apt repository proxy cache
+      copy:
+        dest: /etc/apt/apt.conf.d/99cvmfs-proxy
+        mode: 0644
+        content: |
+          Acquire::http::Proxy {
+              cvmrepo.web.cern.ch "http://[{{ groups['ingress'][0] }}]:3128";
+          };
+    - name: Install and setup cvmfs apt repository
+      vars:
+        f: cvmfs-release-latest_all.deb
+      when: cvmfs_release_check_deb.rc | default(0) == 1
+      block:
+        - name: Download cvmfs-release latest package
+          get_url:
+            url: https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/{{ f }}
+            dest: /tmp/{{ f }}
+            mode: 0644
+        - name: Install cvmfs-release latest package
+          apt:
+            deb: /tmp/{{ f }}
+        - name: Update apt cache with cvmfs apt repository
+          apt:
+            update_cache: true
+    - name: Install cvmfs
+      package:
+        name: cvmfs
+        state: present
+    - name: Config cvmfs
+      copy:
+        dest: /etc/cvmfs/default.local
+        mode: 0644
+        content: |
+          CVMFS_HTTP_PROXY=http://[{{ groups['ingress'][0] }}]:3128
+    - name: Setup and mount cvmfs repository {{ item }}
+      ansible.posix.mount:
+        path: /cvmfs/{{ item }}
+        src: "{{ item }}"
+        fstype: cvmfs
+        opts: defaults,_netdev,nodev,x-systemd.requires-mounts-for=/cvmfs/config-egi.egi.eu
+        state: mounted
+      with_items: "{{ cvmfs_repositories }}"
+    - name: Check updatedb.conf existence
+      stat:
+        path: /etc/updatedb.conf
+      register: register_updatedb
+    - name: Tune updatedb.conf - ensure /cvmfs in PRUNEPATHS
+      lineinfile:
+        path: /etc/updatedb.conf
+        backrefs: true
+        regex: '^(\s*PRUNEPATHS\s*=\s*)"(.*?)\s*(/cvmfs\s*)?"\s*$'
+        line: '\1"\2 /cvmfs"'
+      when: register_updatedb.stat.exists
diff --git a/cesnet-central/playbooks/squid.yaml b/cesnet-central/playbooks/squid.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..1a9c1af27de778e7d9f9b515a9701caade2f239c
--- /dev/null
+++ b/cesnet-central/playbooks/squid.yaml
@@ -0,0 +1,49 @@
+---
+- name: Gather facts on all nodes
+  hosts: allnodes
+  become: true
+  tasks:
+    - name: Gather facts on the node
+      debug:
+        msg: "IPv4: {{ansible_default_ipv4.address }}, IPv6: {{ansible_default_ipv6.address }}"
+- name: Squid proxy deployment
+  hosts: ingress[0]
+  become: true
+  tasks:
+    - name: Install squid
+      package:
+        name: squid
+      # full-fledge restart needed to build cache
+      notify: Restart squid
+    # https://cvmfs.readthedocs.io/en/stable/cpt-squid.html
+    - name: Configure squid
+      lineinfile:
+        regexp: '^\s*{{ item.key }}\s+.*'
+        line: "{{ item.key }} {{ item.value }}"
+        path: /etc/squid/squid.conf
+      loop: "{{ config | dict2items }}"
+      vars:
+        config:
+          collapsed_forwarding: "on"
+          minimum_expiry_time: 0
+          maximum_object_size: 1024 MB
+          cache_mem: 128 MB
+          maximum_object_size_in_memory: 128 KB
+          cache_dir: ufs /var/spool/squid 81920 16 256
+      notify: Reload squid
+    - name: Configure squid - ACL allcluster
+      template:
+        src: templates/etc/squid/conf.d/allcluster.conf
+        dest: /etc/squid/conf.d/allcluster.conf
+        mode: 0644
+      notify: Reload squid
+
+  handlers:
+    - name: Restart squid
+      service:
+        name: squid
+        state: restarted
+    - name: Reload squid
+      service:
+        name: squid
+        state: reloaded
diff --git a/cesnet-mcc/playbooks/templates/etc/squid/conf.d/allcluster.conf b/cesnet-central/playbooks/templates/etc/squid/conf.d/allcluster.conf
similarity index 100%
rename from cesnet-mcc/playbooks/templates/etc/squid/conf.d/allcluster.conf
rename to cesnet-central/playbooks/templates/etc/squid/conf.d/allcluster.conf
diff --git a/cesnet-mcc/playbooks/cvmfs.yaml b/cesnet-mcc/playbooks/cvmfs.yaml
deleted file mode 100644
index 74d53ee0971e71ab97f88bb63e5771aaa955642d..0000000000000000000000000000000000000000
--- a/cesnet-mcc/playbooks/cvmfs.yaml
+++ /dev/null
@@ -1,77 +0,0 @@
----
-- name: CVMFS deployment
-  hosts: ingress, nfs, worker
-  vars:
-    # EGI repositories: gridpp.egi.eu eosc.egi.eu pheno.egi.eu mice.egi.eu ghost.egi.eu wenmr.egi.eu neugrid.egi.eu auger.egi.eu dirac.egi.eu galdyn.egi.eu seadatanet.egi.eu ligo.egi.eu supernemo.egi.eu pravda.egi.eu chipster.egi.eu hyperk.egi.eu snoplus.egi.eu km3net.egi.eu t2k.egi.eu na62.egi.eu biomed.egi.eu eiscat.egi.eu comet.egi.eu notebooks.egi.eu
-    cvmfs_repositories:
-      - cvmfs-config.cern.ch  # required
-      - atlas.cern.ch
-      - cms.cern.ch
-      - grid.cern.ch
-      - auger.egi.eu
-      - biomed.egi.eu
-      - dirac.egi.eu
-      - eiscat.egi.eu
-      - notebooks.egi.eu
-  become: true
-  tasks:
-    - name: Check cvmfs apt repository
-      command:
-        cmd: dpkg-query -W cvmfs-release
-      register: cvmfs_release_check_deb
-      failed_when: cvmfs_release_check_deb.rc > 1
-      changed_when: false
-    # Avoid occasional network failures (partially)
-    - name: Set cvmfs apt repository proxy cache
-      copy:
-        dest: /etc/apt/apt.conf.d/99cvmfs-proxy
-        mode: 0644
-        content: |
-          Acquire::http::Proxy {
-              cvmrepo.web.cern.ch "http://[{{ groups['ingress'][0] }}]:3128";
-          };
-    - name: Install and setup cvmfs apt repository
-      vars:
-        f: cvmfs-release-latest_all.deb
-      when: cvmfs_release_check_deb.rc | default(0) == 1
-      block:
-        - name: Download cvmfs-release latest package
-          get_url:
-            url: https://ecsft.cern.ch/dist/cvmfs/cvmfs-release/{{ f }}
-            dest: /tmp/{{ f }}
-            mode: 0644
-        - name: Install cvmfs-release latest package
-          apt:
-            deb: /tmp/{{ f }}
-        - name: Update apt cache with cvmfs apt repository
-          apt:
-            update_cache: true
-    - name: Install cvmfs
-      package:
-        name: cvmfs
-        state: present
-    - name: Config cvmfs
-      copy:
-        dest: /etc/cvmfs/default.local
-        mode: 0644
-        content: |
-          CVMFS_HTTP_PROXY=http://[{{ groups['ingress'][0] }}]:3128
-    - name: Setup and mount cvmfs repository {{ item }}
-      ansible.posix.mount:
-        path: /cvmfs/{{ item }}
-        src: "{{ item }}"
-        fstype: cvmfs
-        opts: defaults,_netdev,nodev,x-systemd.requires-mounts-for=/cvmfs/config-egi.egi.eu
-        state: mounted
-      with_items: "{{ cvmfs_repositories }}"
-    - name: Check updatedb.conf existence
-      stat:
-        path: /etc/updatedb.conf
-      register: register_updatedb
-    - name: Tune updatedb.conf - ensure /cvmfs in PRUNEPATHS
-      lineinfile:
-        path: /etc/updatedb.conf
-        backrefs: true
-        regex: '^(\s*PRUNEPATHS\s*=\s*)"(.*?)\s*(/cvmfs\s*)?"\s*$'
-        line: '\1"\2 /cvmfs"'
-      when: register_updatedb.stat.exists
diff --git a/cesnet-mcc/playbooks/cvmfs.yaml b/cesnet-mcc/playbooks/cvmfs.yaml
new file mode 120000
index 0000000000000000000000000000000000000000..b5dcdf012c6c9390bf06efdebe81cd3ec41d1205
--- /dev/null
+++ b/cesnet-mcc/playbooks/cvmfs.yaml
@@ -0,0 +1 @@
+../../cesnet-central/playbooks/cvmfs.yaml
\ No newline at end of file
diff --git a/cesnet-mcc/playbooks/squid.yaml b/cesnet-mcc/playbooks/squid.yaml
deleted file mode 100644
index 1a9c1af27de778e7d9f9b515a9701caade2f239c..0000000000000000000000000000000000000000
--- a/cesnet-mcc/playbooks/squid.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
----
-- name: Gather facts on all nodes
-  hosts: allnodes
-  become: true
-  tasks:
-    - name: Gather facts on the node
-      debug:
-        msg: "IPv4: {{ansible_default_ipv4.address }}, IPv6: {{ansible_default_ipv6.address }}"
-- name: Squid proxy deployment
-  hosts: ingress[0]
-  become: true
-  tasks:
-    - name: Install squid
-      package:
-        name: squid
-      # full-fledge restart needed to build cache
-      notify: Restart squid
-    # https://cvmfs.readthedocs.io/en/stable/cpt-squid.html
-    - name: Configure squid
-      lineinfile:
-        regexp: '^\s*{{ item.key }}\s+.*'
-        line: "{{ item.key }} {{ item.value }}"
-        path: /etc/squid/squid.conf
-      loop: "{{ config | dict2items }}"
-      vars:
-        config:
-          collapsed_forwarding: "on"
-          minimum_expiry_time: 0
-          maximum_object_size: 1024 MB
-          cache_mem: 128 MB
-          maximum_object_size_in_memory: 128 KB
-          cache_dir: ufs /var/spool/squid 81920 16 256
-      notify: Reload squid
-    - name: Configure squid - ACL allcluster
-      template:
-        src: templates/etc/squid/conf.d/allcluster.conf
-        dest: /etc/squid/conf.d/allcluster.conf
-        mode: 0644
-      notify: Reload squid
-
-  handlers:
-    - name: Restart squid
-      service:
-        name: squid
-        state: restarted
-    - name: Reload squid
-      service:
-        name: squid
-        state: reloaded
diff --git a/cesnet-mcc/playbooks/squid.yaml b/cesnet-mcc/playbooks/squid.yaml
new file mode 120000
index 0000000000000000000000000000000000000000..408847ec888f5eed343c23e047160d0873dc2416
--- /dev/null
+++ b/cesnet-mcc/playbooks/squid.yaml
@@ -0,0 +1 @@
+../../cesnet-central/playbooks/squid.yaml
\ No newline at end of file
diff --git a/cesnet-mcc/playbooks/templates/etc/squid b/cesnet-mcc/playbooks/templates/etc/squid
new file mode 120000
index 0000000000000000000000000000000000000000..a7a265f80f6810852a6ff9f0da92426e6bf4a8a5
--- /dev/null
+++ b/cesnet-mcc/playbooks/templates/etc/squid
@@ -0,0 +1 @@
+../../../../cesnet-central/playbooks/templates/etc/squid
\ No newline at end of file