阿里云ACK云下的机器再增加了内存之后,阿里云节点界面显示的还是之前的内存大小,这个要怎么更新?

阿里云ACK云下的机器再增加了内存之后,阿里云节点界面显示的还是之前的内存大小,这个要怎么更新?

展开
收起
三分钟热度的鱼 2024-04-03 22:46:19 53 发布于安徽 分享
分享
版权
举报
阿里云 AI 助理回答

在阿里云容器服务 Kubernetes 版(ACK)中,当您为节点增加内存后,如果节点界面显示的内存大小未更新,可能是由于以下原因导致的。以下是解决该问题的具体步骤和方法:


1. 确认节点实际内存是否已更新

在操作系统层面,首先需要确认节点的实际内存是否已经正确识别到新增的内存。可以通过以下命令检查节点的内存信息:

free -m

或者:

cat /proc/meminfo

如果操作系统未正确识别新增内存,请参考相关文档调整实例配置或重启节点以使内存变更生效。


2. 检查节点资源预留策略

根据知识库资料,ACK 节点的总内存预留量会根据节点支持的最大 Pod 数量和节点内存资源进行计算。如果节点内存资源发生变化,可能需要重新评估和调整资源预留策略。

  • 1.28及以上版本:节点总内存预留量计算公式为:

    节点总内存预留量 = min(11 x $max_num_pods + 255, 节点内存资源 x 25%)
    

    其中 $max_num_pods 是节点支持的最大 Pod 数量,节点内存资源 是系统实际可用的内存资源。

  • 1.20及以上至1.28以下版本:节点总内存预留量计算公式为:

    4 × 25% + (8-4) × 20% + (16-8) × 10% + (128-16) × 6% + (256-128) × 2%
    

如果节点内存资源发生变化,建议重新计算并验证预留策略是否符合预期。


3. 同步节点池数据

如果节点池中的节点信息未及时更新,可能会导致控制台显示的内存大小不准确。您可以尝试同步节点池的数据信息以刷新节点状态。

操作步骤如下: 1. 登录容器服务管理控制台。 2. 在左侧导航栏选择 集群列表。 3. 单击目标集群名称,然后在左侧导航栏选择 节点管理 > 节点池。 4. 在目标节点池右侧的 操作 列,单击 更多 > 同步节点池


4. 检查 metrics-server 组件

ACK 控制台通过 metrics-server 组件收集节点资源配额与用量信息。如果 metrics-server 组件未正确运行或存在兼容性问题,可能导致节点内存信息无法正常显示。

检查和修复步骤:

  1. 登录容器服务管理控制台。
  2. 在左侧导航栏选择 集群列表
  3. 单击目标集群名称,然后在左侧导航栏选择 应用 > Helm
  4. 检查是否已安装 ACK 提供的 metrics-server 组件。
    • 如果已安装第三方或开源的 metrics-server,请先删除现有组件。
    • 安装 ACK 提供的 metrics-server 组件,具体操作请参见 管理组件 文档。

5. 重启 kubelet 服务

在某些情况下,kubelet 服务可能未正确感知到节点内存的变化。您可以尝试重启 kubelet 服务以刷新节点资源信息。

执行以下命令重启 kubelet

systemctl restart kubelet

6. 验证节点内存更新

完成上述操作后,您可以通过以下方式验证节点内存是否已正确更新: 1. 在容器服务管理控制台的 节点 页面查看节点的内存信息。 2. 使用以下命令检查节点资源信息:

kubectl describe node <node-name>

查看输出中的 CapacityAllocatable 字段,确认内存大小是否已更新。


重要提醒

  • 确保业务低峰期操作:在执行节点重启或组件更新时,建议选择业务低峰期,避免对线上服务造成影响。
  • 灰度升级策略:如果涉及多个节点,建议采用灰度升级策略,逐步更新节点以降低风险。

通过以上步骤,您可以解决阿里云 ACK 节点界面显示内存未更新的问题。如果问题仍未解决,请联系阿里云技术支持团队获取进一步帮助。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答