!/bin/bash userid=$(id -u) if [ $userid -ne 0 ]; then echo "Aborting. Script needs to run as user root !!!" exit 1 fi echo overlay > /etc/modules-load.d/containerd.conf echo br_netfilter > /etc/modules-load.d/containerd.conf modprobe -v br_netfilter modprobe -v overlay echo "net.bridge.bridge-nf-call-iptables = 1" > /etc/sysctl.d/99-kubernetes.conf echo "net.bridge.bridge-nf-call-ip6tables = 1" >> /etc/sysctl.d/99-kubernetes.conf echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.d/99-kubernetes.conf sysctl --system apt update apt install -y containerd mkdir /etc/containerd containerd config default > /etc/containerd/config.toml sed -i 's@SystemdCgroup = false@SystemdCgroup = true@' /etc/containerd/config.toml systemctl restart containerd apt update apt install -y apt-transport-https ca-certificates curl gpg mkdir -p -m 755 /etc/apt/keyrings curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /" > /etc/apt/sources.list.d/kubernetes.list apt update apt install -y kubelet kubeadm kubectl apt-mark hold kubelet kubeadm kubectl crictl completion bash > /etc/bash_completion.d/crictl crictl config --set runtime-endpoint=unix:///run/containerd/containerd.sock \ --set image-endpoint=unix:///run/containerd/containerd.sock