Loading playbooks/roles/containerd/handlers/main.yml +2 −6 Original line number Diff line number Diff line --- - name: Restart containerd systemd: name: containerd state: restarted enabled: true become: true # Containerd handlers moved to docker role. # This file is intentionally left empty. playbooks/roles/containerd/tasks/main.yml +4 −57 Original line number Diff line number Diff line --- - name: Ensure Docker repo exists for containerd import_role: name: docker tasks_from: repo.yml - name: Ensure containerd is installed apt: name: containerd.io state: present update_cache: true become: true retries: 3 delay: 10 - name: Check if containerd config already exists stat: path: "{{ containerd_config_path }}" register: containerd_config_stat - name: Check if containerd config has CRI disabled (Docker default) shell: grep -q 'disabled_plugins.*cri' {{ containerd_config_path }} args: executable: /bin/bash register: cri_disabled_check failed_when: false changed_when: false - name: Generate default containerd config (new install or CRI disabled) shell: containerd config default > {{ containerd_config_path }} args: executable: /bin/bash become: true when: not containerd_config_stat.stat.exists or cri_disabled_check.rc == 0 notify: Restart containerd - name: Ensure SystemdCgroup is true replace: path: "{{ containerd_config_path }}" regexp: 'SystemdCgroup\s*=\s*false' replace: 'SystemdCgroup = true' become: true notify: Restart containerd - name: Update containerd sandbox image to latest pause version replace: path: "{{ containerd_config_path }}" regexp: 'sandbox_image = "registry.k8s.io/pause:3\.\d+"' replace: 'sandbox_image = "registry.k8s.io/pause:3.10"' become: true notify: Restart containerd - name: Debug - Containerd setup completed # Containerd configuration is now handled by the docker role (roles/docker/tasks/install.yml). # This role is intentionally left empty. - name: Containerd - handled by docker role debug: msg: | ✅ Containerd setup completed successfully: - Installed - Config generated - SystemdCgroup enabled msg: "Containerd configuration is managed as part of the Docker role." playbooks/roles/docker/tasks/install.yml +42 −2 Original line number Diff line number Diff line Loading @@ -64,12 +64,52 @@ group: root mode: "0644" - name: Debug - Docker setup completed # --- Containerd configuration (post-Docker install) --- - name: Generate default containerd config shell: containerd config default | tee /etc/containerd/config.toml args: executable: /bin/bash become: true - name: Set SystemdCgroup to true in containerd config shell: | sed -i '/\[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options\]/,/^\s*\[/{s/^.*SystemdCgroup *= *.*/ SystemdCgroup = true/}' /etc/containerd/config.toml args: executable: /bin/bash become: true - name: Set sandbox image to recommended version shell: | sed -i '/\[plugins."io.containerd.grpc.v1.cri"\]/,/^\s*\[/{s/^\(\s*\)sandbox_image *= *.*/\1sandbox_image = "registry.k8s.io\/pause:3.10"/}' /etc/containerd/config.toml args: executable: /bin/bash become: true - name: Restart containerd systemd: name: containerd state: restarted enabled: true become: true - name: Restart docker systemd: name: docker state: restarted enabled: true become: true - name: Debug - Docker & Containerd setup completed debug: msg: | ✅ Docker setup completed successfully: ✅ Docker & Containerd setup completed successfully: - GPG key added - repo configured - engine & plugins installed - packages held - user {{ target_user }} added to Docker group - containerd config generated - SystemdCgroup enabled - sandbox image set to pause:3.10 - containerd and docker restarted playbooks/site.yml +0 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,6 @@ roles: - common - kernel - containerd - docker - kubernetes/master - cni_calico Loading Loading
playbooks/roles/containerd/handlers/main.yml +2 −6 Original line number Diff line number Diff line --- - name: Restart containerd systemd: name: containerd state: restarted enabled: true become: true # Containerd handlers moved to docker role. # This file is intentionally left empty.
playbooks/roles/containerd/tasks/main.yml +4 −57 Original line number Diff line number Diff line --- - name: Ensure Docker repo exists for containerd import_role: name: docker tasks_from: repo.yml - name: Ensure containerd is installed apt: name: containerd.io state: present update_cache: true become: true retries: 3 delay: 10 - name: Check if containerd config already exists stat: path: "{{ containerd_config_path }}" register: containerd_config_stat - name: Check if containerd config has CRI disabled (Docker default) shell: grep -q 'disabled_plugins.*cri' {{ containerd_config_path }} args: executable: /bin/bash register: cri_disabled_check failed_when: false changed_when: false - name: Generate default containerd config (new install or CRI disabled) shell: containerd config default > {{ containerd_config_path }} args: executable: /bin/bash become: true when: not containerd_config_stat.stat.exists or cri_disabled_check.rc == 0 notify: Restart containerd - name: Ensure SystemdCgroup is true replace: path: "{{ containerd_config_path }}" regexp: 'SystemdCgroup\s*=\s*false' replace: 'SystemdCgroup = true' become: true notify: Restart containerd - name: Update containerd sandbox image to latest pause version replace: path: "{{ containerd_config_path }}" regexp: 'sandbox_image = "registry.k8s.io/pause:3\.\d+"' replace: 'sandbox_image = "registry.k8s.io/pause:3.10"' become: true notify: Restart containerd - name: Debug - Containerd setup completed # Containerd configuration is now handled by the docker role (roles/docker/tasks/install.yml). # This role is intentionally left empty. - name: Containerd - handled by docker role debug: msg: | ✅ Containerd setup completed successfully: - Installed - Config generated - SystemdCgroup enabled msg: "Containerd configuration is managed as part of the Docker role."
playbooks/roles/docker/tasks/install.yml +42 −2 Original line number Diff line number Diff line Loading @@ -64,12 +64,52 @@ group: root mode: "0644" - name: Debug - Docker setup completed # --- Containerd configuration (post-Docker install) --- - name: Generate default containerd config shell: containerd config default | tee /etc/containerd/config.toml args: executable: /bin/bash become: true - name: Set SystemdCgroup to true in containerd config shell: | sed -i '/\[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options\]/,/^\s*\[/{s/^.*SystemdCgroup *= *.*/ SystemdCgroup = true/}' /etc/containerd/config.toml args: executable: /bin/bash become: true - name: Set sandbox image to recommended version shell: | sed -i '/\[plugins."io.containerd.grpc.v1.cri"\]/,/^\s*\[/{s/^\(\s*\)sandbox_image *= *.*/\1sandbox_image = "registry.k8s.io\/pause:3.10"/}' /etc/containerd/config.toml args: executable: /bin/bash become: true - name: Restart containerd systemd: name: containerd state: restarted enabled: true become: true - name: Restart docker systemd: name: docker state: restarted enabled: true become: true - name: Debug - Docker & Containerd setup completed debug: msg: | ✅ Docker setup completed successfully: ✅ Docker & Containerd setup completed successfully: - GPG key added - repo configured - engine & plugins installed - packages held - user {{ target_user }} added to Docker group - containerd config generated - SystemdCgroup enabled - sandbox image set to pause:3.10 - containerd and docker restarted
playbooks/site.yml +0 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,6 @@ roles: - common - kernel - containerd - docker - kubernetes/master - cni_calico Loading