你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure Kubernetes 服务的 Azure Linux 容器主机(AKS) dnf-automatic 默认已启用系统服务,该服务每天运行,并自动安装任何最近发布的更新包。 启用此服务可确保在发布修补程序时,Azure Linux 容器主机中的包应自动更新。 请注意,对于 节点 OS 升级通道的某些设置, dnf-automatic 默认处于禁用状态。
重要
从 2025 年 11 月 30 日开始,AKS 将不再支持或提供 Azure Linux 2.0 安全更新。 从 2026 年 3 月 31 日起,将删除节点映像,并且无法缩放节点池。 通过将 节点池 升级到受支持的 Kubernetes 版本或迁移到 osSku AzureLinux3,以迁移到受支持的 Azure Linux 版本。 有关更多信息,请参阅[停用] AKS 上的 Azure Linux 2.0 节点池。
症状
但是,有时 Azure Linux 容器主机中的包无法接收自动升级,这可能会导致以下问题:
- 引用或使用更新的包时出现错误消息。
- 包未按预期运行。
- 检查 Azure Linux 容器主机包列表时显示包的过时版本。 可以通过访问 packages.microsoft.com 上的存储库,或检查 Azure Linux GitHub 存储库中的发行说明,验证映像上的包是否与最近发布的包同步。
原因
某些包(如 Linux 内核)需要重新启动才能使更新生效。 为了方便自动重启,Azure Linux 虚拟机(VM)运行检查重启服务,该服务会在包更新需要重新启动时创建 /var/run/reboot-required 文件。
解决方案
为了确保 Kubernetes 能够执行重新启动请求,建议设置 Kured DaemonSet。
Kured 会监视节点是否存在 /var/run/reboot-required 文件,如果发现该文件,就会从节点中清空工作并重新启动该节点。
后续步骤
如果上述步骤无法解决问题,请开具 支持票证。