diff --git a/inventory.yaml b/inventory.yaml index 9222528..1f0f9a7 100644 --- a/inventory.yaml +++ b/inventory.yaml @@ -16,4 +16,5 @@ slaves: all: vars: - install_kubeadm_version: "1.29.14-1.1" \ No newline at end of file + install_kubeadm_version: "1.32" + install_kubeadm_version_patch: "2" \ No newline at end of file diff --git a/playbooks/task_set_repos.yaml b/playbooks/task_set_repos.yaml index a048e7d..022e142 100644 --- a/playbooks/task_set_repos.yaml +++ b/playbooks/task_set_repos.yaml @@ -3,11 +3,11 @@ - name: Add Kubernetes GPG key apt_key: - url: https://pkgs.k8s.io/core:/stable:/v1.29/deb/Release.key + url: https://pkgs.k8s.io/core:/stable:/v{{ install_kubeadm_version }}/deb/Release.key state: present keyring: /etc/apt/keyrings/kubernetes-apt-keyring-kubernetes.gpg - name: Add Kubernetes APTarepository apt_repository: - repo: deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring-kubernetes.gpg] https://pkgs.k8s.io/core:/stable:/v1.29/deb/ / + repo: deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring-kubernetes.gpg] https://pkgs.k8s.io/core:/stable:/v{{ install_kubeadm_version }}/deb/ / state: present \ No newline at end of file diff --git a/playbooks/task_upgrade.yaml b/playbooks/task_upgrade.yaml index 05b3cd3..c088a70 100644 --- a/playbooks/task_upgrade.yaml +++ b/playbooks/task_upgrade.yaml @@ -3,14 +3,48 @@ ansible.builtin.apt: update_cache: yes +- name: Hold kubeadm + dpkg_selections: + name: kubeadm + selection: hold + +- name: Hold kubelet + dpkg_selections: + name: kubelet + selection: hold + +- name: Hold kubectl + dpkg_selections: + name: kubectl + selection: hold + +#- name: Hold kubeadm kubelet kubectl +# shell: apt-mark hold kubeadm kubelet kubectl + - name: apt install kubeadm ansible.builtin.apt: allow_change_held_packages: true name: - - kubeadm={{ install_kubeadm_version }} + - kubeadm={{ install_kubeadm_version }}.{{ install_kubeadm_version_patch }}-1.1 -- name: Call `kubeadm upgrade` + +- name: Call `kubeadm upgrade plan [master]` + shell: kubeadm upgrade plan + register: plan_output + when: is_master + +- debug: msg="{{ plan_output.stdout.split('\n') }}" + when: is_master + +# Master +- name: Call `kubeadm upgrade [master]` + shell: kubeadm upgrade apply v{{ install_kubeadm_version }}.{{ install_kubeadm_version_patch }} -y + when: is_master + +# Slave +- name: Call `kubeadm upgrade [slave]` shell: kubeadm upgrade node + when: not is_master - name: Drain node become: false @@ -28,12 +62,12 @@ ansible.builtin.apt: update_cache: yes -- name: apt install kubelet && kubeadm +- name: apt install kubelet && kubectl ansible.builtin.apt: allow_change_held_packages: true name: - - kubelet={{ install_kubeadm_version }} - - kubectl={{ install_kubeadm_version }} + - kubelet={{ install_kubeadm_version }}.{{ install_kubeadm_version_patch }}-1.1 + - kubectl={{ install_kubeadm_version }}.{{ install_kubeadm_version_patch }}-1.1 - name: systemctl daemon-reload ansible.builtin.systemd_service: