kubernetes install/configuration (ubuntu18)


  • common task for master/worker
sudo apt install docker.io
sudo systemctl enable docker

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"

sudo apt update
sudo apt-get install kubeadm

sudo vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf

adding --node-ip=XXXX 
====
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --node-ip=WWW.XXX.YYY.ZZZ"
====

sudo swapoff -a

  • only master node
IPADDR=$(ip a show eth1 | grep inet | grep -v inet6 | awk '{print $2}' | cut -f1 -d/)
HOSTNAME=$(hostname -s)
sudo kubeadm init --apiserver-advertise-address=$IPADDR --apiserver-cert-extra-sans=$IPADDR --node-name $HOSTNAME --pod-network-cidr=10.244.0.0/16

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

kubectl get nodes
  • only worker node
(on master)
kubeadm token create --print-join-command

(on worker)
sudo kubeadm join 172.16.33.100:6443 --token xq971v.l54h1ha31qii2s7h     --discovery-token-ca-cert-hash sha256:ef3dbf8ff3f0199b22265dca47d381852007b8e53ae4bd79c143628a5541f08e

-
https://qiita.com/ysaito8015@github/items/26a208f9c482b2d2d24a

ネットワーク設定を行った後にkubeadm resetコマンドを実行してクラスタを作り直す場合、以下のようにして作成された「flannel.1」や「cni0」という仮想ネットワークインターフェイスを先に削除しておく必要がある。

# ip link delete cni0
# ip link delete flannel.1

-- kubeadmで Pod-network-cidr を変更する
https://qiita.com/sugimount/items/7606bd84426f85adea01

-- KubernetesでCoreDNS立ち上がらない(flannel, cni)
https://qiita.com/Minatoo/items/c968e42f7c7d579bc473