首页 > 解决方案 > 如何让 kubectl 识别新扩展的 az aks nodepool 节点?

问题描述

我从 Azure 门户中更新了我的 Azure AKS 节点池大小,从 2 个节点变为 4 个节点。当我运行时az aks nodepool show ...,我看到计数已正确更新。但是,当我运行时kubectl get nodes,我仍然只能看到以前存在的两个节点。

根据关于节点管理的 Kubernetes 文档

将节点添加到 API 服务器有两种主要方法:

  1. 节点上的 kubelet 自注册到控制平面
  2. 您或其他人类用户手动添加 Node 对象

(强调我的)

因此,我的期望是,在扩大了我的节点池之后,这些新节点应该会自动注册,并且kubectl get nodes应该只是拾取它们,但情况似乎并非如此。

现在我的节点池有更多节点,如何让我的 AKS 群集识别和利用它们?一旦kubectl get nodes显示它们,我需要做的就是应用更新的清单(具有更多副本)来使用额外的硬件吗?

标签: kubernetesazure-aks

解决方案


如果没有访问您的设置,很难看到。但是你可以看到:

  • 检查控制平面在注册到集群时没有自动升级到与节点池中的 kubelet 版本不兼容的新版本。(最好版本匹配)
  • 连接到未注册的节点 (ssh) 并检查日志以了解kubelet未启动的原因。即systectl status kubelet
  • 检查您是否可以从这些未注册的节点连接到您的kube-apiserver8443正在侦听的端口(即)和 IP 地址。IEcurl <ip-address>:8443

可能的解决方案:

  • 升级节点池的 VM 映像以使用与控制平面兼容的映像。
  • 删除阻止您的节点访问 kube-apiserver 的防火墙规则

我需要做的就是应用更新的清单(具有更多副本)来使用额外的硬件吗?

应该管用。

✌️


推荐阅读