Add k8s installation by vagrant + kubeadm
[openretriever.git] / src / vagrant / k8s_kubeadm / master_setup.sh
1 #!/usr/bin/env bash
2
3 set -e
4 HOME=`pwd`
5
6 cat << EOF | sudo tee /etc/hosts
7 127.0.0.1    localhost
8 192.168.1.10 master
9 192.168.1.21 worker1
10 192.168.1.22 worker2
11 192.168.1.23 worker3
12 EOF
13
14 curl -s http://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
15 cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
16 deb http://apt.kubernetes.io/ kubernetes-xenial main
17 EOF
18 sudo apt-get update
19 sudo apt-get install -y docker.io
20 sudo apt-get install -y kubelet kubeadm kubectl kubernetes-cni
21
22 sudo kubeadm init --apiserver-advertise-address 192.168.1.10  --service-cidr=192.168.1.0/24 --pod-network-cidr=10.244.0.0/16 --token 8c5adc.1cec8dbf339093f0
23 sudo cp /etc/kubernetes/admin.conf $HOME/
24 sudo chown $(id -u):$(id -g) $HOME/admin.conf
25 export KUBECONFIG=$HOME/admin.conf
26 echo "export KUBECONFIG=$HOME/admin.conf" >> $HOME/.bash_profile
27
28 kubectl apply -f http://git.io/weave-kube-1.6
29 #kubectl apply -f http://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
30 #kubectl apply -f http://docs.projectcalico.org/v2.1/getting-started/kubernetes/installation/hosted/kubeadm/1.6/calico.yaml