Problem with offline upgrade kubeadm clusters 1.18 -> 1.19

Hi Team,

I’m quite new with Kubernetes and trying to handle upgrade topic currently. It’s appeared that Kubernetes 1.18 version is reached EOL already, so we need to upgrade to the latest one (1.21). Documentation saying that we should do an upgrade like 1.18 → 1.19 → 1.20 → 1.21. So, I’ve tried to do this today but failed on very first part with 1.18 → 1.19.

I’ve used the following document: Upgrading kubeadm clusters | Kubernetes , it’s stated that first upgrade kubeadm should be performed. However, this step was failed due to lack of kubernetes-cni:

root@q4deumsy0u1:~ $ yum install -y --disablerepo=* /appl/genesys/app/sources/kubernetes/linux_packages/1.19/e54ab759298119b0f76276bbadc622cc959e5016a460e62b2e1f1fdadddb5c86-kubeadm-1.19.11-0.x86_64.rpm --disableexcludes=kubernetes

Error: Package: kubeadm-1.19.11-0.x86_64 (/e54ab759298119b0f76276bbadc622cc959e5016a460e62b2e1f1fdadddb5c86-kubeadm-1.19.11-0.x86_64)
Requires: kubernetes-cni >= 0.8.6

Ok, there is a kubernetes-cni file 0.8.7 which was downloaded together with 1.19, trying to install it but fails as well:

root@q4deumsy0u1:~ $ yum install -y --cacheonly --disablerepo=* /appl/genesys/app/sources/kubernetes/linux_packages/1.19/db7cb5cb0b3f6875f54d10f02e625573988e3e91fd4fc5eef0b1876bb18604ad-kubernetes-cni-0.8.7-0.x86_64.rpm

Cannot install package kubernetes-cni-0.8.7-0.x86_64. It is obsoleted by installed package kubelet-1.18.4-0.x86_64
Error: Nothing to do

Could you please advice if its known issue and how to proceed further?

Cluster information:

Kubernetes version:

root@q4deumsy0u1:~ $ kubectl version
Client Version: version.Info{Major:“1”, Minor:“18”, GitVersion:“v1.18.10”, GitCommit:“62876fc6d93e891aa7fbe19771e6a6c03773b0f7”, GitTreeState:“clean”, BuildDate:“2020-10-15T01:52:24Z”, GoVersion:“go1.13.15”, Compiler:“gc”, Platform:“linux/amd64”}
Server Version: version.Info{Major:“1”, Minor:“18”, GitVersion:“v1.18.11”, GitCommit:“99cfa4c8cdc8207f533a4f0376ccbebb59188e3d”, GitTreeState:“clean”, BuildDate:“2020-11-11T13:10:38Z”, GoVersion:“go1.13.15”, Compiler:“gc”, Platform:“linux/amd64”}
root@q4deumsy0u1:~ $

root@q4deumsy0u1:~ $ kubectl get nodes
NAME STATUS ROLES AGE VERSION
q4deumsy0u1 Ready master 137d v1.18.4
q4deumsy1rj Ready 137d v1.18.4

Cloud being used:
https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64

Installation method:
As described here: Documentation:GCXI:Dep:DockerOffline:9.0.0 - Genesys Documentation

Host OS:
RHEL 7