Skip to content

Instantly share code, notes, and snippets.

@initcron
Created November 22, 2022 03:44
Show Gist options
  • Save initcron/027ccade07f8ee34545d1a068c474b24 to your computer and use it in GitHub Desktop.
Save initcron/027ccade07f8ee34545d1a068c474b24 to your computer and use it in GitHub Desktop.
User Data Script to Setup Kubernetes Nodes with Containerd as the Runtime
#!/bin/bash
apt-get update
apt-get install -y git wget
# Install Docker
apt-get install -yq \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
apt-get update
apt-get install -yq containerd
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo cat <<EOF > /etc/apt/sources.list.d/kubernetes.list
deb http://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update -y
sudo apt-get install -y kubelet kubeadm kubectl kubernetes-cni nfs-common
# Install Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo sysctl net.bridge.bridge-nf-call-iptables=1
sudo swapoff -a
sudo rm -rf /var/lib/kubelet/*
sudo apt-get install nfs-common -y
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment