How to install kubernetes cluster in a private network without internet

Hello Community,

We have a requirement of installing kubernetes 1.20.0 manually (private network without internet access) at customer environment.
We have downloaded the following executables for linux ubuntu distro:

We unpacked and copied into /usr/local/bin directory. Also we verified the version by running the command:
kubeadm version
kubelet --version
kubectl version
and verified the executable is able to run and printout the version number.

We also added the the following to the directory kubelet.service.d:

/etc/systemd/system/kubelet.service.d/10-kubeadm.conf contents:




This is the error we are getting:
root@master:/etc/systemd/system/kubelet.service.d# sudo kubeadm init --pod-network-cidr=
I0323 23:23:43.111842 234447 version.go:251] remote version is much newer: v1.23.5; falling back to: stable-1.20
[init] Using Kubernetes version: v1.20.15
[preflight] Running pre-flight checks
[WARNING FileExisting-socat]: socat not found in system path
[WARNING SystemVerification]: this Docker version is not on the list of validated versions: 20.10.12. Latest validated version: 19.03
error execution phase preflight: [preflight] Some fatal errors occurred:
[ERROR FileExisting-conntrack]: conntrack not found in system path
[preflight] If you know what you are doing, you can make a check non-fatal with --ignore-preflight-errors=...
To see the stack trace of this error execute with --v=5 or higher

Could someone please help us for the fix of this issue.


Cluster information:

Kubernetes version: 1.20.0
Installation method: Offline, manual
Host OS: Ubuntu 20.x