Skip to content

Instantly share code, notes, and snippets.

@johann-ramos
Forked from initcron/k8s-user-data.sh
Last active September 5, 2018 05:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save johann-ramos/86bca6cc367a8da83d20fdd82b28e0df to your computer and use it in GitHub Desktop.
Save johann-ramos/86bca6cc367a8da83d20fdd82b28e0df to your computer and use it in GitHub Desktop.
kubernetes user data script
#!/bin/bash
#Docker repo
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
#Kubernetes repo
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo 'deb http://apt.kubernetes.io/ kubernetes-xenial main' | sudo tee /etc/apt/sources.list.d/kubernetes.list
#Packages
sudo apt update
sudo apt install -y git wget apt-transport-https ca-certificates curl software-properties-common nfs-common helm
#Docker
sudo apt install -y docker-ce
#Kubernetes
sudo apt install -y kubelet kubeadm kubectl kubernetes-cni
#Config
sudo sysctl net.bridge.bridge-nf-call-iptables=1
sudo swapoff -a
sudo rm -rf /var/lib/kubelet/*
sudo groupadd docker
sudo usermod -aG docker $USER
#Manual config
#remove line in /etc/fstab related to swap
#Commands
kubectl get nodes -o wide
kubectl cluster-info
curl -L https://github.com/jenkins-x/jx/releases/download/v1.3.212/jx-linux-amd64.tar.gz | tar xzv
sudo mv jx /usr/local/bin
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment