-
-
Save bikashckarmokar/8d4445390750feedd85b7449b28fe59f to your computer and use it in GitHub Desktop.
Kubernetes 1.24 with dockerd
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - | |
echo "step1" | |
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list | |
echo "kubeadm install" | |
sudo apt update -y | |
sudo apt -y install vim git curl wget kubelet=1.24.0-00 kubeadm=1.24.0-00 kubectl=1.24.0-00 | |
wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.2.0/cri-dockerd-v0.2.0-linux-amd64.tar.gz | |
tar -xvf cri-dockerd-v0.2.0-linux-amd64.tar.gz | |
mkdir -p /usr/local/bin | |
install -o root -g root -m 0755 ./cri-dockerd /usr/local/bin/cri-dockerd | |
sudo tee /etc/systemd/system/cri-docker.service << EOF | |
[Unit] | |
Description=CRI Interface for Docker Application Container Engine | |
Documentation=https://docs.mirantis.com | |
After=network-online.target firewalld.service docker.service | |
Wants=network-online.target | |
Requires=cri-docker.socket | |
[Service] | |
Type=notify | |
ExecStart=/usr/local/bin/cri-dockerd --container-runtime-endpoint fd:// --network-plugin= | |
ExecReload=/bin/kill -s HUP $MAINPID | |
TimeoutSec=0 | |
RestartSec=2 | |
Restart=always | |
StartLimitBurst=3 | |
StartLimitInterval=60s | |
LimitNOFILE=infinity | |
LimitNPROC=infinity | |
LimitCORE=infinity | |
TasksMax=infinity | |
Delegate=yes | |
KillMode=process | |
[Install] | |
WantedBy=multi-user.target | |
EOF | |
sudo tee /etc/systemd/system/cri-docker.socket << EOF | |
[Unit] | |
Description=CRI Docker Socket for the API | |
PartOf=cri-docker.service | |
[Socket] | |
ListenStream=%t/cri-dockerd.sock | |
SocketMode=0660 | |
SocketUser=root | |
SocketGroup=docker | |
[Install] | |
WantedBy=sockets.target | |
EOF | |
systemctl daemon-reload | |
systemctl enable cri-docker.service | |
systemctl enable --now cri-docker.socket | |
echo "memory swapoff" | |
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab | |
sudo swapoff -a | |
sudo modprobe overlay | |
sudo modprobe br_netfilter | |
sudo tee /etc/sysctl.d/kubernetes.conf<<EOF | |
net.bridge.bridge-nf-call-ip6tables = 1 | |
net.bridge.bridge-nf-call-iptables = 1 | |
net.ipv4.ip_forward = 1 | |
EOF | |
sysctl --system | |
sudo systemctl enable kubelet | |
sudo kubeadm config images pull --cri-socket /var/run/cri-dockerd.sock --kubernetes-version v1.24.0 | |
sudo kubeadm init --pod-network-cidr=10.244.0.0/16 --upload-certs --kubernetes-version=v1.24.0 --control-plane-endpoint=$(hostname) --ignore-preflight-errors=all --cri-socket /var/run/cri-dockerd.sock | |
mkdir -p $HOME/.kube | |
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config | |
sudo chown $(id -u):$(id -g) $HOME/.kube/config | |
export KUBECONFIG=/etc/kubernetes/admin.conf | |
kubectl apply -f https://github.com/coreos/flannel/raw/master/Documentation/kube-flannel.yml | |
kubectl taint node $(hostname) node-role.kubernetes.io/control-plane:NoSchedule- | |
kubectl taint node $(hostname) node-role.kubernetes.io/master:NoSchedule- | |
wget https://get.helm.sh/helm-v3.7.2-linux-amd64.tar.gz | |
tar -xvf helm-v3.7.2-linux-amd64.tar.gz | |
mv linux-amd64/helm /usr/local/bin/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment