现有的k8s节点已经承担不起现有的业务量了,要对k8s集群进行扩容,添加节点,多个集群,如何确定节点可以加到合适的K8s集群里面呢
扩容
在节点上把必要的基础组件安装好
节点上安装 kubeadm
、kubelet
kubectl
,containerd或者docker容器运行时
每个集群的唯一标识:kubeadm
的 cluster-name
或 kubeconfig
-
Kubernetes 的集群通过唯一的
Cluster
配置来区分,这个配置存储在kubeconfig
文件中,包含 API Server 的地址和认证信息。 -
在
kubeadm
初始化一个集群时,会生成一个bootstrap token
,这个 token 和 API Server 的地址一起用来引导新节点加入到对应的集群。方法一
在控制节点上执行 kubeadm token create --print-join-command 新节点运行 kubeadm join <API_SERVER>:<PORT> --token <TOKEN> \ --discovery-token-ca-cert-hash sha256:<HASH>
方法二
如何查看集群信息: kubectl config view
可以通过
clusters
部分,查看每个集群对应的 API Server 地址。
如何查看token值
[root@master1 ~]#kubeadm token list
如何查看CA证书的hash值
CA证书默认位置 /etc/kubernetes/pki/ca.crt
openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | sha256sum | awk '{print $1}'
配合token和hash加入集群
kubeadm join <API_SERVER>:6443 --token <TOKEN> \ --discovery-token-ca-cert-hash sha256:<HASH>