# How to install kubernetes cluster in a private network without internet

**URL:** <https://discuss.kubernetes.io/t/how-to-install-kubernetes-cluster-in-a-private-network-without-internet/19437>\
**Category:** General Discussions\
**Created:** [March 23, 2022, 2:24pm UTC](https://discuss.kubernetes.io/t/how-to-install-kubernetes-cluster-in-a-private-network-without-internet/19437 "2022-03-23T14:24:57Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![rishikushwaha](https://avatars.discourse-cdn.com/v4/letter/r/a88e4f/32.png) [@rishikushwaha](https://discuss.kubernetes.io/u/rishikushwaha)\
**Post date:** [March 23, 2022, 2:24pm UTC](https://discuss.kubernetes.io/t/how-to-install-kubernetes-cluster-in-a-private-network-without-internet/19437/1 "2022-03-23T14:24:57Z")

</div>

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:  
[https://storage.googleapis.com/kubernetes-release/release/v1.20.0/bin/linux/amd64/kubelet](https://storage.googleapis.com/kubernetes-release/release/v1.20.0/bin/linux/amd64/kubelet)  
[https://storage.googleapis.com/kubernetes-release/release/v1.20.0/bin/linux/amd64/kubeadm](https://storage.googleapis.com/kubernetes-release/release/v1.20.0/bin/linux/amd64/kubeadm)  
[https://storage.googleapis.com/kubernetes-release/release/v1.20.0/bin/linux/amd64/kubectl](https://storage.googleapis.com/kubernetes-release/release/v1.20.0/bin/linux/amd64/kubectl)  
[https://github.com/etcd-io/etcd/releases/download/v3.3.13/etcd-v3.3.13-linux-amd64.tar.gz](https://github.com/etcd-io/etcd/releases/download/v3.3.13/etcd-v3.3.13-linux-amd64.tar.gz)

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

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

[Unit]  
Description=kubelet.service

[Service]  
Type=simple  
ExecStart=/usr/local/bin/kubelet  
Restart=always  
RestartSec=10

[Install]  
WantedBy=multi-user.target

This is the error we are getting:  
root@master:/etc/systemd/system/kubelet.service.d# sudo kubeadm init --pod-network-cidr=10.0.0.0/16  
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.

Thanks

### Cluster information:

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