====== 14 Kubernetes Master冗長化 ====== ===== 1台目 ===== control-plane-endpointで、VIPを指定する kubeadm init --node-name master --pod-network-cidr=10.244.0.0/16 --control-plane-endpoint 172.16.0.12:6443 ==== Master Join token再作成 ==== kubeadm init phase upload-certs --upload-certs kubeadm token create --certificate-key ${KEY} --print-join-command ===== 2台目 ===== kubeadm join 172.16.0.12:6443 --token gbv10r.wu6j1bfftfoca8v7 --discovery-token-ca-cert-hash sha256:bd27526f072955b44cb7991404713f2a8f3f376208475c02d0d5ac073a010da0 --control-plane --certificate-key ae5bf7b2ac70eec5180135203fdf433b50a4cb4f9c1a5d8a03b5747c9568d008 ===== 3台目 ===== kubeadm join 172.16.0.12:6443 --token gbv10r.wu6j1bfftfoca8v7 --discovery-token-ca-cert-hash sha256:bd27526f072955b44cb7991404713f2a8f3f376208475c02d0d5ac073a010da0 --control-plane --certificate-key ae5bf7b2ac70eec5180135203fdf433b50a4cb4f9c1a5d8a03b5747c9568d008 ===== ERROR1 ===== Unable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes") ==== 対応 ==== 権限の問題のようで、下記で治った。 mv $HOME/.kube $HOME/.kube.bak mkdir $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config ===== ERROR2 ===== 下記のようなエラーでkubeleteが起動できてない # systemctl status kubelete Apr 19 22:58:16 g-master02 kubelet[20595]: E0419 22:58:16.331432 20595 kubelet.go:2422] "Error getting node" err="node \"g-master02\" not found" ==== 対応 ==== これはVIPへの通信ができない時にでるよう。 下記などでVIPを先に割振ってみる。 ip addr add [VIP] dev [ETHER] {{tag>Kubernetes}}