安裝stream組件
yum install -y nginx-mod-stream
添加如下配置信息到nginx.conf
stream {
server {
listen 8443;
proxy_pass kube_apiserver;
}
upstream kube_apiserver {
server xxx.xxx.xxx.1:6443 weight=50 max_fails=3 fail_timeout=5s;
server xxx.xxx.xxx.2:6443 weight=50 max_fails=3 fail_timeout=5s;
}
}
生成kubeadm-config.yaml文件
kubeadm config print init-defaults > kubeadm-config.yaml
修改advertiseAddress值為當(dāng)前msater宿主機ip
添加imageRepository溯祸,controlPlaneEndpoint埋市,kubernetesVersion
kind: ClusterConfiguration
imageRepository: registry.cn-hangzhou.aliyuncs.com/google_containers
controlPlaneEndpoint: "xxx.xxx.xxx.xxx:8443"
kubernetesVersion: v1.18.8
networking:
podSubnet: 10.244.0.0/16
復(fù)制如下文件到新增的master節(jié)點上
/etc/kubernetes/pki/ca.crt
/etc/kubernetes/pki/ca.key
/etc/kubernetes/pki/front-proxy-ca.crt
/etc/kubernetes/pki/front-proxy-ca.key
/etc/kubernetes/pki/sa.key
/etc/kubernetes/pki/sa.pub
/etc/kubernetes/pki/etcd/ca.crt
/etc/kubernetes/pki/etcd/ca.key
/etc/kubernetes/admin.conf
集群init
kubeadm init --config=kubeadm-config.yaml
獲取join node或master信息大诸,添加--control-plane表示加入master節(jié)點
kubeadm token create --print-join-command
kubeadm join xxx.xxx.xxx.1:8443 --token abcdef.0123456789abcdef --discovery-token-ca-cert-hash sha256:339919e578460d78985432351cac8c6d05400ff3ba530177b307d49f9783b48f --control-plane
卸載k8s相關(guān)組件
yum erase -y kubelet kubeadm kubectl kubernetes-cni