The current upstream kubeadm Debian packages are currently causing failures with the Konvoy Image Builder version 1.23 and 1.24.
The problem is caused by the kubeadm packages not pinning the crictl version, so the version of crictl it installs is not compatible with the version of containerd that is installed by KIB for DKP.
More information can be found in this upstream issue:
The current workaround is to edit the ansible/roles/kubeadm/tasks/debian.yaml file in your KIB directory and edit it with the following contents:
---
- name: remove version hold for kubeadm packages
command: apt-mark unhold kubeadm
# cri-tools is a dependency of kubeadm
# the Kubernetes repo now has cri-tools=1.26.0
# this versions is incompatible with the older version of Containerd
# install an older version of cri-tools
- name: install cri-tools remote deb package
shell: |
apt-get install --force-yes --yes \
cri-tools=1.25.0-00
args:
warn: false
register: result
until: result is success
retries: 3
delay: 3
- name: install kubeadm remote deb package
shell: |
apt-get install --force-yes --yes \
kubeadm={{ package_versions.kubernetes_deb }}
args:
warn: false
register: result
until: result is success
retries: 3
delay: 3
- name: add version hold for kubeadm packages
command: apt-mark hold kubeadm