From 6ff0f56c468fc0311cee3bd213de6ce8663fbeb7 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 12 Jan 2024 23:53:40 +0100 Subject: fix kubernetes roles to accomodate new package naming convention --- roles/kubernetes/base/defaults/main.yml | 2 -- roles/kubernetes/base/tasks/main.yml | 25 +++++++++++------------ roles/kubernetes/kubeadm/base/tasks/main.yml | 6 +++--- roles/kubernetes/kubeadm/upgrade | 30 ++++++++++++++-------------- 4 files changed, 30 insertions(+), 33 deletions(-) (limited to 'roles/kubernetes') diff --git a/roles/kubernetes/base/defaults/main.yml b/roles/kubernetes/base/defaults/main.yml index 2b69fb5e..07a37504 100644 --- a/roles/kubernetes/base/defaults/main.yml +++ b/roles/kubernetes/base/defaults/main.yml @@ -1,4 +1,2 @@ --- -kubernetes_cri_tools_pkg_version: "{{ ([0, 1] | map('extract', kubernetes_version.split('.'))) | join('.') }}.0-00" - kubernetes_cri_sandbox_image: "registry.k8s.io/pause:3.9" diff --git a/roles/kubernetes/base/tasks/main.yml b/roles/kubernetes/base/tasks/main.yml index d2f7ef81..614f7685 100644 --- a/roles/kubernetes/base/tasks/main.yml +++ b/roles/kubernetes/base/tasks/main.yml @@ -20,27 +20,26 @@ include_role: name: apt-repo/kubernetes -- name: generate apt pin files for kubelet and cri-tools - loop: - - name: kubelet - version: "{{ kubernetes_version }}-00" - - name: cri-tools - version: "{{ kubernetes_cri_tools_pkg_version }}" - loop_control: - label: "{{ item.name }} == {{ item.version }}" +- name: generate apt pin file for kubelet copy: - dest: "/etc/apt/preferences.d/{{ item.name }}.pref" + dest: "/etc/apt/preferences.d/kubelet.pref" content: | - Package: {{ item.name }} - Pin: version {{ item.version }} + Package: kubelet + Pin: version {{ kubernetes_version }}-* Pin-Priority: 1001 +## TODO: remove once all servers have been converted +- name: remove apt pin file for cri-tools + file: + path: "/etc/apt/preferences.d/cri-tools.pref" + state: absent + - name: install kubelet and common packages apt: name: - bridge-utils - - "cri-tools={{ kubernetes_cri_tools_pkg_version }}" - - "kubelet={{ kubernetes_version }}-00" + - cri-tools + - "kubelet={{ kubernetes_version }}-*" state: present allow_downgrade: yes diff --git a/roles/kubernetes/kubeadm/base/tasks/main.yml b/roles/kubernetes/kubeadm/base/tasks/main.yml index e339fbcb..1e5ef920 100644 --- a/roles/kubernetes/kubeadm/base/tasks/main.yml +++ b/roles/kubernetes/kubeadm/base/tasks/main.yml @@ -7,7 +7,7 @@ dest: "/etc/apt/preferences.d/{{ item }}.pref" content: | Package: {{ item }} - Pin: version {{ kubernetes_version }}-00 + Pin: version {{ kubernetes_version }}-* Pin-Priority: 1001 - name: install kubeadm packages @@ -15,8 +15,8 @@ name: - haproxy - hatop - - "kubeadm={{ kubernetes_version }}-00" - - "kubectl={{ kubernetes_version }}-00" + - "kubeadm={{ kubernetes_version }}-*" + - "kubectl={{ kubernetes_version }}-*" state: present allow_downgrade: yes diff --git a/roles/kubernetes/kubeadm/upgrade b/roles/kubernetes/kubeadm/upgrade index 5328eefa..eb54ab17 100644 --- a/roles/kubernetes/kubeadm/upgrade +++ b/roles/kubernetes/kubeadm/upgrade @@ -8,8 +8,8 @@ VERSION=1.24.3 apt-get update -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubeadm.pref -apt-get install -y "kubeadm=$VERSION-00" +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubeadm.pref +apt-get install -y "kubeadm=$VERSION-*" kubeadm version kubeadm upgrade plan @@ -17,9 +17,9 @@ kubectl drain $(hostname) --ignore-daemonsets --delete-emptydir-data kubeadm upgrade apply "v$VERSION" sed "s/^kubernetesVersion: .*$/kubernetesVersion: $VERSION/" -i /etc/kubernetes/kubeadm.config -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubelet.pref -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubectl.pref -apt-get update && apt-get install -y "kubelet=$VERSION-00" "kubectl=$VERSION-00" +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubelet.pref +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubectl.pref +apt-get update && apt-get install -y "kubelet=$VERSION-*" "kubectl=$VERSION-*" // security updates + reboot ? @@ -32,14 +32,14 @@ secondary control-plane node: VERSION=1.24.3 apt-get update -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubeadm.pref -apt-get install -y "kubeadm=$VERSION-00" +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubeadm.pref +apt-get install -y "kubeadm=$VERSION-*" kubectl drain $(hostname) --ignore-daemonsets --delete-emptydir-data kubeadm upgrade node -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubelet.pref -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubectl.pref -apt-get update && apt-get install -y kubelet="$VERSION-00" "kubectl=$VERSION-00" +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubelet.pref +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubectl.pref +apt-get update && apt-get install -y kubelet="$VERSION-*" "kubectl=$VERSION-*" // security updates + reboot ? @@ -52,15 +52,15 @@ worker nodes: VERSION=1.24.3 apt-get update -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubeadm.pref -apt-get install -y "kubeadm=$VERSION-00" +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubeadm.pref +apt-get install -y "kubeadm=$VERSION-*" @primary control-plane node: kubectl drain --ignore-daemonsets --delete-emptydir-data kubeadm upgrade node -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubelet.pref -sed "s/^Pin: version .*$/Pin: version $VERSION-00/" -i /etc/apt/preferences.d/kubectl.pref -apt-get update && apt-get install -y kubelet="$VERSION-00" "kubectl=$VERSION-00" +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubelet.pref +sed "s/^Pin: version .*$/Pin: version $VERSION-*/" -i /etc/apt/preferences.d/kubectl.pref +apt-get update && apt-get install -y kubelet="$VERSION-*" "kubectl=$VERSION-*" // security updates + reboot ? -- cgit v1.2.3