準備3臺主節點:km1/km2/km3python
1.編輯kubeadm-config.yamlapi
apiVersion: kubeadm.k8s.io/v1beta1 kind: ClusterConfiguration networking: serviceSubnet: 10.244.0.0/16 podSubnet: 10.68.0.0/16 kubernetesVersion: v1.13.2 controlPlaneEndpoint: kube.cluster:6443 apiServer: certSANs: - kube.cluster --- apiVersion: kubeproxy.config.k8s.io/v1alpha1 kind: KubeProxyConfiguration ipvs: minSyncPeriod: 1s #rr-輪詢 wrr-加權輪詢 sh-地址哈希 scheduler: rr syncPeriod: 10s mode: ipvs
2. 編輯/etc/hostbash
10.10.0.21 kube.cluster km1 10.10.0.21 kube.cluster km2 10.10.0.21 kube.cluster km3
3. 初始化機器ssh
#初始化命令 kubeadm init --config /root/kubeadm-config-success.yaml #給kubectl工具受權 cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
####加入命令會在初始化後顯示
kubeadm join kube.cluster:6443 --token ovulns.p5k9x8tfpktkcbyy --discovery-token-ca-cert-hash \
sha256:4559cb9fe37f9ba2c8cc3ab1e633d7bb46815bcd14adfceaa020d47d9b4d13d6
4. 將km1生產的密匙上傳到km二、km3工具
##使用腳本傳鑰匙 #!/bin/bash i=$1 ssh $i "mkdir -p /etc/kubernetes/pki/etcd; mkdir -p ~/.kube/" scp /etc/kubernetes/pki/ca.crt $i:/etc/kubernetes/pki/ca.crt scp /etc/kubernetes/pki/ca.key $i:/etc/kubernetes/pki/ca.key scp /etc/kubernetes/pki/sa.key $i:/etc/kubernetes/pki/sa.key scp /etc/kubernetes/pki/sa.pub $i:/etc/kubernetes/pki/sa.pub scp /etc/kubernetes/pki/front-proxy-ca.crt $i:/etc/kubernetes/pki/front-proxy-ca.crt scp /etc/kubernetes/pki/front-proxy-ca.key $i:/etc/kubernetes/pki/front-proxy-ca.key scp /etc/kubernetes/pki/etcd/ca.crt $i:/etc/kubernetes/pki/etcd/ca.crt scp /etc/kubernetes/pki/etcd/ca.key $i:/etc/kubernetes/pki/etcd/ca.key scp /etc/kubernetes/admin.conf $i:/etc/kubernetes/admin.conf scp /etc/kubernetes/admin.conf $i:~/.kube/config
5. 將km2/km3加入到集羣中3d
kubeadm join kube.cluster:6443 --token ovulns.p5k9x8tfpktkcbyy --discovery-token-ca-cert-hash \sha256:4559cb9fe37f9ba2c8cc3ab1e633d7bb46815bcd14adfceaa020d47d9b4d13d6 \--experimental-control-plane #須要加入此參數