作者信息:https://home.cnblogs.com/u/huangjiabobk

在K8S中,worke节点如何加入K8S高可用集群?

在Kubernetes(K8S)中,将一个Worker节点加入到高可用集群的过程与加入单Master集群大体相似,但需要注意的是,高可用集群中的Master通常是通过负载均衡器暴露服务端点的,这样无论哪个Master节点宕机,Worker节点都可以连接到活跃的Master节点。以下是加入高可用Kubernetes集群的具体步骤:

1.准备工作(与加入非HA集群相同):
  1. 系统准备

    • 确保Worker节点操作系统、内核版本以及Docker(或者其他兼容的容器运行时)与集群内的其他节点保持一致。
    • 安装kubelet、kube-proxy及相关CNI插件。
  2. 配置Yum仓库或APT源

    • 添加Kubernetes官方或其他可靠来源的软件源至系统包管理器。
  3. 获取Master节点信息

    • 获取集群控制平面(Control Plane)的访问端点(endpoint)。这通常是负载均衡器的DNS名称或IP地址,其背后指向所有可用的Master节点。
2.加入高可用集群:
  1. 获取认证信息
  • 从集群Master节点获取或生成一个有效的Bootstrap Token,以及相关的CA证书指纹或证书密钥(如果是安全的方式加入集群)。
  1. 执行加入命令

    • 使用kubeadm join命令,指明高可用Master的负载均衡器地址和相关认证信息:

      kubeadm join <load-balancer-endpoint>:<port> --token <token-value> --discovery-token-ca-cert-hash sha256:<hash-value>
      

      或在较新版本的kubeadm中可能使用的命令包括控制平面选项:

      kubeadm join <load-balancer-endpoint> --token=<token> --discovery-token-ca-cert-hash=<hash> --control-plane --certificate-key=<key>
      
  2. 监控节点状态

    • 执行加入命令后,kubelet会在Worker节点上自动配置和启动必要的服务。
    • 在Master节点上使用kubectl get nodes命令检查新Worker节点是否成功加入集群,并确认其状态变为Ready

综上所述,在实际操作中,特别是在生产环境中,加入节点之前还需确保网络、防火墙规则以及任何安全策略允许Worker节点与Master节点之间正确通信。此外,若集群启用了特定的网络策略或存储插件,则还需要相应地在Worker节点上配置这些组件。

posted @ 2024-02-26 09:16  黄嘉波  阅读(38)  评论(0编辑  收藏  举报
版权声明:原创作品,谢绝转载!否则将追究法律责任。--作者 黄嘉波