Azure AKS 节点使用 Ubuntu2204 镜像无法加入集群问题分析

Azure AKS 节点使用 Ubuntu2204 镜像无法加入集群问题分析

AKS Azure Kubernetes Service AKS 项目地址: https://gitcode.com/gh_mirrors/ak/AKS

问题现象

在 Azure Kubernetes Service (AKS) 环境中,当用户尝试使用 Ubuntu2204 镜像系列的最新版本创建节点时,发现这些节点无法成功加入 Kubernetes 集群。该问题主要出现在 AKS 1.28.9 版本中。

问题根源

经过技术分析,确定问题出在节点初始化过程中执行的一个关键脚本 /opt/azure/containers/ensure_imds_restriction.sh。该脚本在运行时缺少必要的环境变量配置,导致执行失败。

具体表现为 kubelet 服务文件中缺少关键环境变量:

Environment="PRIMARY_NIC_IP=10.117.0.121"
Environment="ENABLE_IMDS_RESTRICTION="
Environment="INSERT_IMDS_RESTRICTION_RULE_TO_MANGLE_TABLE="

影响范围

该问题主要影响以下配置:

  • 使用 Ubuntu2204 镜像系列的最新版本(202409.13.0)
  • 通过 Node Auto Provisioning (如 Karpenter) 自动创建的节点
  • 主要报告出现在西欧区域

临时解决方案

作为临时解决方案,用户可以将节点镜像系列从 Ubuntu2204 切换为 AzureLinux,这可以绕过该问题。

根本解决方案

开发团队已经识别并修复了该问题。修复包含在以下更新中:

  • 对于基础镜像问题,修复已包含在 AgentBaker 项目的 PR 4944 中
  • 对于 Karpenter 用户,修复包含在 Azure Karpenter Provider 的 0.5.4 版本中

最佳实践建议

对于生产环境,建议:

  1. 定期检查节点镜像版本更新
  2. 在非生产环境先测试新镜像版本
  3. 考虑使用 AzureLinux 作为更稳定的替代方案
  4. 保持 Karpenter 等自动扩展工具更新到最新版本

该问题的修复已经发布,用户可以通过更新相关组件来解决问题。

AKS Azure Kubernetes Service AKS 项目地址: https://gitcode.com/gh_mirrors/ak/AKS

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尹梓朦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值