I'm trying to build kubernetes with containerd in bare-metal server (RHEL8).
There's no Internet connection so I manually downloaded needed images (e.g. k8s.gcr.io/kube-scheduler:v1.22.1) and loaded them using "ctr image import".
The images seem to be loaded successfully.
#ctr images ls -q
k8s.gcr.io/coredns/coredns:v1.8.4
k8s.gcr.io/etcd:3.5.0-0
k8s.gcr.io/kube-apiserver:v1.22.1
k8s.gcr.io/kube-controller-manager:v1.22.1
k8s.gcr.io/kube-proxy:v1.22.1
k8s.gcr.io/kube-scheduler:v1.22.1
k8s.gcr.io/pause:3.5
Then I executed "kubeadm init" but it failed with ImagePull errors.
#kubeadm init --kubernetes-version=1.22.1 --cri-socket=/run/containerd/containerd.sock
[init] Using Kubernetes version: v1.22.1
[preflight] Running pre-flight checks
[WARNING FileExisting-tc]: tc not found in system path
[preflight] Pulling images required for setting up a Kubernetes cluster
[preflight] This might take a minute or two, depending on the speed of your internet connection
[preflight] You can also perform this action in beforehand using 'kubeadm config images pull'
error execution phase preflight: [preflight] Some fatal errors occurred:
How can I let kubeadm to use local images? Or is it OK to ignore these preflight errors?
Edit: This procedure (manually loading images instead of executing kubeadm config images pull) worked well when with docker and CentOS7.