Skip to content

Instantly share code, notes, and snippets.

@michaelknurr
Created January 29, 2018 11:45
Show Gist options
  • Save michaelknurr/db40908d41eb55376d57c157293c5939 to your computer and use it in GitHub Desktop.
Save michaelknurr/db40908d41eb55376d57c157293c5939 to your computer and use it in GitHub Desktop.
Kubernetes cluster setup
sudo su -
apt-get update
apt-get install -y docker.io
cat << EOF > /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
service docker restart
apt-get update && apt-get install -y apt-transport-https
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb http://apt.kubernetes.io/ kubernetes-xenial main
EOF
apt-get update
# kubernetes 1.8
# apt-get install -y "kubelet=1.8.*" "kubeadm=1.8.*" "kubectl=1.8.*" "kubernetes-cni=0.5.*"
# kubernetes 1.9
apt-get install -y kubelet kubeadm kubectl
sed -i "s/KUBELET_EXTRA_ARGS/KUBELET_EXTRA_ARGS --cgroup-driver=systemd/" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
systemctl daemon-reload
service kubelet restart
#################
# NUR AUF MASTER AUSFÜHREN
#################
kubeadm init --apiserver-advertise-address=$(ifconfig eth0 | sed -n '/inet addr/s/.*addr.\([^ ]*\) .*/\1/p')
export KUBECONFIG=/etc/kubernetes/admin.conf
export kubever=$(kubectl version | base64 | tr -d '\n')
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$kubever"
# OPTIONALLY enable the master to run pods
# kubectl taint nodes --all node-role.kubernetes.io/master-
###
# ENDE MASTER
###
###
# Auf Client ausführen
###
kubeadm join --token xxxxxx.xxxxxxxxxxxxxxxx ww.xxx.y.z:6443 --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
###
# ENDE CLIENT
###
########
# INFO
########
# uninstall kubernetes again
# apt remove -y kubelet kubeadm kubectl kubernetes-cni ebtables socat
# adjust node exporter permisisons
# sudo chmod -R go+rx /var/lib/docker /run/docker /var/lib/kubelet
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment