Azure Stack Hub 上的 AKS 引擎发行说明

适用于 AKS 引擎版本 v0.80.2。

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。 本文并不是为了记录 Azure 的 AKS 引擎的发布信息。

升级注意事项

  • 是否使用了正确的市场项(即 AKS 基础 Ubuntu 20.04 映像发行版或 AKS 基础 Windows Server)作为 AKS 引擎版本? 可以在下载新映像和 AKS 引擎部分找到这些版本。
  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组? 最初部署群集时,已在输出目录中生成此文件。 请参阅部署 Kubernetes 群集的“deploy”命令参数。
  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?
  • 如果要更新具有活动工作负载的正常群集,假如群集处于正常负载下,则可以在不影响它们的情况下应用升级。 但是,你应该有一个备份群集,以防需要将用户重定向到它。 强烈建议使用备份群集。
  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。
  • 请确保订阅有足够的配额来完成整个过程。 进程将在此过程中分配新的 VM。 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。
  • 未规划系统更新或计划的任务。
  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。

使用升级命令

必须按照升级 Azure Stack Hub 上的 Kubernetes 群集中所述使用 aks-engine upgrade 命令。

升级中断

有时,意外的因素会中断群集的升级。 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。 请检查中断的原因,解决问题,然后重新提交相同的 upgrade 命令以继续执行升级过程。 upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。 通常,中断会增加完成更新所需的时间,但不会影响它的完成。

估计的升级时间

群集中每个 VM 的估计升级时间为 12 到 15 分钟。 例如,升级包含 20 个节点的群集大约需要 5 小时。

AKS 引擎 0.70.0 及更高版本的使用说明

下载新映像和 AKS 引擎

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。

如 Azure Stack Hub 的 AKS 引擎文档中所述,部署 Kubernetes 群集需要:

  • aks-engine 二进制文件(必需)。
  • AKS 基础 Ubuntu 16.04-LTS 映像发行版(已弃用 - 不再使用,请在 API 模型中改用 20.04)。
  • AKS 基础 Ubuntu 18.04-LTS 映像发行版(已弃用 - 不再使用,请在 API 模型中改用 20.04)。
  • AKS 基础 Ubuntu 20.04-LTS 映像发行版(对于 Linux 代理是必需的)。
  • AKS 基础 Windows Server 映像(Windows 代理需要下列其中一个映像):
    • AKS 基础 Windows Server 映像容器。
    • AKS 基础 Windows Server 映像 Docker。

此更新提供了这些映像的新版本:

升级使用 Ubuntu 16.04 发行版创建的 Kubernetes 群集

从 AKS 引擎 v0.63.0 开始,Ubuntu 16.04 发行版不再是受支持的选项,因为该操作系统的生命周期已结束。 对于 AKS 引擎 v0.67.0 或更高版本,aks-engine upgrade 将使用 aks-ubuntu-18.04 自动覆盖不受支持的 aks-ubuntu-16.04 发行版值。 对于 AKS 引擎 v0.75.3 或更高版本,如果使用 Kubernetes v1.24 或更高版本,aks-engine-azurestack upgrade 将自动使用 aks-ubuntu-20.04 覆盖不受支持的 aks-ubuntu-16.04 发行版值。

升级使用 Ubuntu 18.04 发行版创建的 Kubernetes 群集

从 AKS 引擎 v0.75.3 开始,Ubuntu 18.04 发行版不再是受支持的选项,因为该操作系统的生命周期已结束。 对于 AKS 引擎 v0.75.3 或更高版本,aks-engine-azurestack upgrade 将使用 aks-ubuntu-20.04 自动覆盖不受支持的 aks-ubuntu-18.04 发行版值。

升级使用 docker 容器运行时创建的 Kubernetes 群集

在 Kubernetes v1.24 中,dockershim 组件已从 kubelet 中删除。 因此,docker 容器运行时不再是受支持的选项。 有关详细信息,请参阅 Kubernetes v1.24 发行说明。 对于 AKS 引擎 v0.75.3 或更高版本,aks-engine-azurestack 升级将使用 containerd 自动覆盖不受支持的 docker containerRuntime

对于 AKS 引擎版本 v0.75.3,在 Kubernetes v1.23 上包含 Windows 节点的群集可以将 Windows 基础映像与 Docker 运行时配合使用。 Kubernetes v1.24 上包含 Windows 节点的群集可以将 Windows 基础映像与 Containerd 运行时配合使用。

AKS 引擎和 Azure Stack 版本映射

Azure Stack Hub 版本 AKS 引擎版本
1910 0.43.0、0.43.1
2002 0.48.0、0.51.0
2005 0.48.0、0.51.0、0.55.0、0.55.4
2008 0.55.4, 0.60.1
2102 0.60.1、0.63.0、0.67.0、0.67.3
2108 0.63.0、0.67.0、0.67.3、0.70.0、0.71.0、0.73.0、0.75.3、0.76.0
2206 0.70.0, 0.71.0, 0.73.0, 0.75.3, 0.76.0, 0.77.0
2301 0.75.3, 0.76.0, 0.77.0, 0.78.0, 0.79.0
2306 0.78.0、0.79.0*、0.80.2*
2311 0.80.2*
2406 0.80.2*

注意

*支持。 有关详细信息,请参阅 AKS 引擎版本支持策略

AKS 引擎及相应的映像映射

可以在下表中找到 Azure Stack Hub 上的 AKS 引擎支持的 Kubernetes 版本。 不要使用 aks-engine get-versions 命令,它会返回 Azure 以及 Azure Stack Hub 中支持的版本。

AKS 引擎 AKS 基础映像 Kubernetes 版本 API 模型示例
v0.43.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2019 年 10 月 (2019.10.24) 1.15.5、1.15.4、1.14.8、1.14.7
v0.48.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 3 月 (2020.03.19) 1.15.10、1.14.7
v0.51.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 5 月 (2020.05.13),AKS 基础 Windows 映像 (17763.1217.200513) 1.15.12、1.16.8、1.16.9 LinuxWindows
v0.55.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 8 月 (2020.08.24),AKS 基础 Windows 映像 (17763.1397.200820) 1.15.12、1.16.14、1.17.11 LinuxWindows
v0.55.4 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 9 月 (2020.09.14),AKS 基础 Windows 映像 (17763.1397.200820) 1.15.12、1.16.14、1.17.11 LinuxWindows
V0.60.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2021 年 1 月 (2021.01.28),
AKS 基础 Ubuntu 18.04-LTS 映像发行版 2021 年第 1 季度 (2021.01.28),
AKS 基础 Windows 映像 (17763.1697.210129)
1.16.14, 1.16.15, 1.17.17, 1.18.15 LinuxWindows
v0.63.0 AKS 基础 Ubuntu 18.04-LTS 映像发行版 2021 Q2 (2021.05.24)AKS 基础 Windows 映像 (17763.1935.210520) 1.18.18、1.19.10、1.20.6 API 模型示例(LinuxWindows
v0.67.0 AKS 基础 Ubuntu 18.04-LTS image 发行版,2021 Q3 (2021.09.27)AKS 基础 Windows 映像 (17763.2213.210927) 1.19.15、1.20.11 API 模型示例(LinuxWindows
v0.67.3 AKS 基础 Ubuntu 18.04-LTS image 发行版,2021 Q3 (2021.09.27)AKS 基础 Windows 映像 (17763.2213.210927) 1.19.15、1.20.11 API 模型示例(LinuxWindows
v0.70.0 AKS 基础 Ubuntu 18.04-LTS 映像发行版 2022 Q2 (2022.04.07)AKS 基础 Windows 映像 (17763.2565.220408) 1.21.10*、1.22.7* API 模型示例(LinuxWindows
v0.71.0 AKS 基础 Ubuntu 18.04-LTS 映像发行版 2022 Q3 (2022.08.12)AKS 基础 Windows 映像 (17763.3232.220805) 1.22.7*、1.23.6* API 模型示例(LinuxWindows
v0.73.0 AKS 基础 Ubuntu 18.04-LTS 映像发行版 2022 Q4 (2022.11.02)AKS 基础 Windows 映像 (17763.3532.221102) 1.22.15*、1.23.13* API 模型示例(LinuxWindows
v0.75.3 AKS 基础 Ubuntu 20.04-LTS 映像发行版 (2023.032.2)AKS 基础 Windows Server 2019 映像 Docker (17763.3887.20230332)AKS 基础 Windows Server 2019 映像 Containerd (17763.3887.20230332) 1.23.15*、1.24.9** API 模型示例(LinuxWindows
v0.76.0 AKS 基础 Ubuntu 20.04-LTS 映像发行版 (2023.116.3)AKS 基础 Windows Server 2019 映像 Containerd (17763.4252.20231163) 1.24.11**、1.25.7** API 模型示例(LinuxWindows
v0.77.0 AKS 基础 Ubuntu 20.04-LTS 映像发行版 (2023.206.1)AKS 基础 Windows Server 2019 映像 Containerd (17763.4645.20232061) 1.25.7**、1.26.6** API 模型示例(LinuxWindows
v0.78.0 AKS 基础 Ubuntu 20.04-LTS 映像发行版 (2023.242.3)AKS 基础 Windows Server 2019 映像 Containerd (17763.4737.20232423) 1.25.13**、1.26.8** API 模型示例(LinuxWindows
v0.79.0 AKS 基础 Ubuntu 20.04-LTS 映像发行版 (2023.296.1)AKS 基础 Windows Server 2019 映像 Containerd (17763.4974.20232961) 1.26.9**、1.27.6** API 模型示例(LinuxWindows
v0.80.2 AKS 基础 Ubuntu 20.04-LTS 映像发行版 (2024.032.1)AKS 基础 Windows Server 2019 映像 Containerd (17763.5329.20240321) 1.27.10**、1.28.6** API 模型示例(LinuxWindows

注意

*从 Kubernetes v1.21 开始,Azure Stack Hub 仅支持 Azure 云提供程序

注意

**从 Kubernetes v1.24 开始,仅支持 containerd 容器运行时。 有关详细信息,请参阅升级使用 docker 容器运行时创建的 Kubernetes 群集部分。

更新规划

AKS 引擎 upgrade 命令完全自动执行群集的升级过程,并处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。 应用该更新之前,请务必查看发行说明信息。

AKSe 0.76.0 的新增功能

  • 添加了对 Kubernetes v1.24.11 和 v1.25.7 的支持。
  • 可以在 v0.76.0 GitHub 页中找到其他功能。

AKSe 0.75.3 及更高版本的新增功能

AKS 引擎版本 v0.75.3 以及 Azure Stack Hub 上所有将来的 AKS 引擎版本都将在新的 aks-engine-azurestack 存储库中提供。 因此,应将所有 aks-engine 命令替换为 aks-engine-azurestack。 用于在 Azure Stack Hub 上获取最新 AKS 引擎版本的命令也发生了变化。 可以在创建 Linux 客户端创建 Windows 客户端中查看新命令。 如果发现任何问题,请在新存储库中创建问题

Azure Stack Hub 上的 AKS 引擎版本 v0.75.3 提供 Ubuntu 20.04 LTS 作为其 Linux 基础映像。 从此版本开始,将不再支持 Ubuntu 18.04。 有关详细信息,请参阅升级使用 Ubuntu 18.04 发行版创建的 Kubernetes 群集

从 Kubernetes v1.24 开始,仅支持 containerd 运行时。 有关详细信息,请参阅升级使用 docker 运行时创建的 Kubernetes 群集。 对于 AKS 引擎版本 v0.75.3,在 Kubernetes v1.23 上包含 Windows 节点的群集可以将 Windows 基础映像与 Docker 运行时配合使用。 Kubernetes v1.24 上包含 Windows 节点的群集可以将 Windows 基础映像与 Containerd 运行时配合使用

可以在 v0.75.3 GitHub 页中找到更多功能。

AKS 引擎 0.70.0 及更高版本的使用说明

Microsoft 在版本 0.70.0 中升级了 Azure 云提供程序。 Azure 云提供程序是 Azure Stack Hub 上的 AKS Azure 和 AKS 引擎之间共享的核心组件。

若要使用 AKS 引擎 0.70.0 及更高版本:

  • 如果首次尝试创建新的 Kubernetes 群集:使用 AKS 引擎及相应映像映射表中针对相应版本提供的示例 API 模型。

  • 如果要创建新群集,但想要使用现有 API 模型:按照 Azure 云提供程序说明修改 API 模型。 不包含新设置将导致部署错误。

  • 如果使用存储卷:确保使用的是 AzureDiskCSI 驱动程序。 0.70.0 及更高版本仅支持 CSI 驱动程序,而不支持旧的树内存储提供程序。 若要升级,请按照在使用存储卷时进行升级的说明操作。

已知问题

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。 我们建议一次部署一个服务。
  • 由于 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库,查看许多发行说明和拉取请求可能会使你相信该工具支持上面所列版本之外的其他 Kubernetes 和 OS 平台版本。 你可以忽略该工具列出的版本,并使用上面的版本表作为此更新的官方指南。
  • 部署 Windows 群集时,AKS 引擎 v0.67.0 使用错误的 Windows 映像。 使用 v0.70.0 来解决此问题。

参考

以下列表是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集:

适用于 AKS 引擎版本 v0.67.0。

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。 本文并不是为了记录 Azure 的 AKS 引擎的发布信息。

更新规划

AKS 引擎 upgrade 命令完全自动执行群集的升级过程。 它将处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。 应用该更新之前,请务必查看发行说明信息。

升级注意事项

  • 你是否使用了正确的市场项(即 AKS 基础 Ubuntu 16.04-LTS、18.04 映像发行版或 AKS 基础 Windows Server)作为你的 AKS 引擎版本? 可以在“下载新映像和 AKS 引擎”部分中找到这些版本。
  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组? 最初部署群集时,已在输出目录中生成此文件。 请参阅部署 Kubernetes 群集的“deploy”命令参数。
  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?
  • 如果要更新具有活动工作负载的正常群集,假如群集处于正常负载下,则可以在不影响它们的情况下应用升级。 但是,你应该有一个备份群集,以防需要将用户重定向到它。 强烈建议使用备份群集。
  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。
  • 请确保订阅有足够的配额来完成整个过程。 进程将在此过程中分配新的 VM。 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。
  • 未规划系统更新或计划的任务。
  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。

使用升级命令

必须按照升级 Azure Stack Hub 上的 Kubernetes 群集中所述使用 aks-engine upgrade 命令。

升级中断

有时,意外的因素会中断群集的升级。 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。 请检查中断的原因,解决问题,然后重新提交相同的 upgrade 命令以继续执行升级过程。 upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。 通常,中断会增加完成更新所需的时间,但不会影响它的完成。

估计的升级时间

群集中每个 VM 的估计升级时间为 12 到 15 分钟。 例如,升级包含 20 个节点的群集大约需要 5 小时。

下载新映像和 AKS 引擎

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。

如 Azure Stack Hub 的 AKS 引擎文档中所述,部署 Kubernetes 群集需要:

  • aks-engine 二进制文件(必需)。
  • AKS 基础 Ubuntu 16.04-LTS 映像发行版(已弃用 - 不再使用,请在 API 模型中改用 18.04)。
  • AKS 基础 Ubuntu 18.04-LTS 映像发行版(对于 Linux 代理是必需的)。
  • AKS 基础 Windows Server 映像发行版(对于 Windows 代理是必需的)。

此更新提供了这些映像的新版本:

升级使用 Ubuntu 16.04 发行版创建的 Kubernetes 群集

从 AKS 引擎 v0.67.0 开始,Ubuntu 16.04 发行版不再是受支持的选项,因为该操作系统的生命周期已结束。 若要升级群集,请确保在输入 API 模型(由 aks-engine deploy 生成,并作为输入传递给 aks-engine upgrade)中将 OS 发行版设置为 aks-ubuntu-18.04

"masterProfile": {
    "distro": "aks-ubuntu-18.04"
},

"agentPoolProfiles": [{
    "distro": "aks-ubuntu-18.04"
}]

AKS 引擎和 Azure Stack 版本映射

Azure Stack Hub 版本 AKS 引擎版本
1910 0.43.0、0.43.1
2002 0.48.0、0.51.0
2005 0.48.0、0.51.0、0.55.0、0.55.4
2008 0.55.4, 0.60.1
2102 0.60.1、0.63.0、0.67.0
2108 0.63.0、0.67.0

AKS 引擎 v0.67.0 中的 Kubernetes 版本升级路径

可以在下表中找到 Azure Stack Hub 的当前版本和升级版本。 此表适用于 Azure Stack Hub 中的 AKS 引擎群集。 不要使用 aks-engine get-versions 命令,它会返回全球 Azure 以及 Azure Stack Hub 中支持的版本。

当前版本 提供的升级版本
1.15.12 1.16.14, 1.16.15
1.16.14 1.16.15, 1.17.17
1.17.11、1.17.17 1.18.18
1.18.15、1.18.18 1.19.10
1.19.10 1.19.15、1.20.11
1.20.6 1.20.11

在 API 模型 JSON 文件中,在 orchestratorProfile 节下指定发行版和版本值。 例如,如果你打算部署 Kubernetes 1.17.17,则必须设置以下两个值(请参阅示例 kubernetes-azurestack.json):

- "orchestratorRelease": "1.17",
- "orchestratorVersion": "1.17.17"

AKS 引擎及相应的映像映射

AKS 引擎 AKS 基础映像 Kubernetes 版本 API 模型示例
v0.43.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2019 年 10 月 (2019.10.24) 1.15.5、1.15.4、1.14.8、1.14.7
v0.48.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 3 月 (2020.03.19) 1.15.10、1.14.7
v0.51.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 5 月 (2020.05.13),AKS 基础 Windows 映像 (17763.1217.200513) 1.15.12、1.16.8、1.16.9 LinuxWindows
v0.55.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 8 月 (2020.08.24),AKS 基础 Windows 映像 (17763.1397.200820) 1.15.12、1.16.14、1.17.11 LinuxWindows
v0.55.4 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 9 月 (2020.09.14),AKS 基础 Windows 映像 (17763.1397.200820) 1.15.12、1.16.14、1.17.11 LinuxWindows
V0.60.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2021 年 1 月 (2021.01.28),
AKS 基础 Ubuntu 18.04-LTS 映像发行版 2021 年第 1 季度 (2021.01.28),
AKS 基础 Windows 映像 (17763.1697.210129)
1.16.14, 1.16.15, 1.17.17, 1.18.15 LinuxWindows
v0.63.0 AKS 基础 Ubuntu 18.04-LTS 映像发行版 2021 Q2 (2021.05.24)AKS 基础 Windows 映像 (17763.1935.210520) 1.18.18、1.19.10、1.20.6 API 模型示例(LinuxWindows
v0.67.0 AKS 基础 Ubuntu 18.04-LTS image 发行版,2021 Q3 (2021.09.27)AKS 基础 Windows 映像 (17763.2213.210927) 1.19.15、1.20.11 API 模型示例(LinuxWindows

新增功能

如果有兴趣参与个人预览版,可以请求预览版访问权限

新的功能包括:

  • 支持 Kubernetes 1.19.15 和 1.20.11

已知问题

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。 我们建议一次部署一个服务。
  • 由于 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库,查看许多发行说明和拉取请求可能会使你相信该工具支持上面所列版本之外的其他 Kubernetes 和 OS 平台版本。 你可以忽略该工具列出的版本,并使用上面的版本表作为此更新的官方指南。

参考

以下列表是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集:

适用于 AKS 引擎版本 v0.60.1。

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。 本文并不是为了记录 Azure 的 AKS 引擎的发布信息。

更新规划

AKS 引擎 upgrade 命令完全自动执行群集的升级过程,并处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。 应用该更新之前,请务必查看发行说明信息。

升级注意事项

  • 你是否使用了正确的市场项(即 AKS 基础 Ubuntu 16.04-LTS、18.04 映像发行版或 AKS 基础 Windows Server)作为你的 AKS 引擎版本? 可以在“下载新映像和 AKS 引擎”部分中找到这些版本。
  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组? 最初部署群集时,已在输出目录中生成此文件。 请参阅部署 Kubernetes 群集的“deploy”命令参数。
  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?
  • 如果要更新具有活动工作负载的正常群集,假如群集处于正常负载下,则可以在不影响它们的情况下应用升级。 但是,你应该有一个备份群集,以防需要将用户重定向到它。 强烈建议使用备份群集。
  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。
  • 请确保订阅有足够的配额来完成整个过程。 进程将在此过程中分配新的 VM。 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。
  • 未规划系统更新或计划的任务。
  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。

使用升级命令

必须按照升级 Azure Stack Hub 上的 Kubernetes 群集中所述使用 aks-engine upgrade 命令。

升级中断

有时,意外的因素会中断群集的升级。 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。 请检查中断的原因,解决问题,然后重新提交相同的 upgrade 命令以继续执行升级过程。 upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。 通常,中断会增加完成更新所需的时间,但不会影响它的完成。

估计的升级时间

群集中每个 VM 的估计升级时间为 12 到 15 分钟。 例如,升级包含 20 个节点的群集大约需要 5 小时。

下载新映像和 AKS 引擎

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。

如 Azure Stack Hub 上的 AKS 引擎文档中所述,部署 Kubernetes 群集需要:

  • aks-engine 二进制文件(必需)。
  • AKS 基础 Ubuntu 16.04-LTS 映像发行版(已弃用 - 不再使用,请在 API 模型中改用 18.04)。
  • AKS 基础 Ubuntu 18.04-LTS 映像发行版(对于 Linux 代理是必需的)。
  • AKS 基础 Windows Server 映像发行版(对于 Windows 代理是必需的)。

此更新提供了这些组件的新版本:

AKS 引擎和 Azure Stack 版本映射

Azure Stack Hub 版本 AKS 引擎版本
1910 0.43.0、0.43.1
2002 0.48.0、0.51.0
2005 0.48.0、0.51.0、0.55.0、0.55.4
2008 0.55.4, 0.60.1

AKS 引擎 v0.60.1 中的 Kubernetes 版本升级路径

可以在下表中找到 Azure Stack Hub 的当前版本和升级版本。 此表适用于 Azure Stack Hub 中的 AKS 引擎群集。 不要使用 aks-engine get-versions 命令,它会返回全球 Azure 以及 Azure Stack Hub 中支持的版本。

当前版本 提供的升级版本
1.15.12 1.16.14, 1.16.15
1.16.14 1.16.15, 1.17.17
1.17.11 1.17.17, 1.18.15
1.17.17 1.18.15

在 API 模型 JSON 文件中,在 orchestratorProfile 节下指定发行版和版本值。 例如,如果你打算部署 Kubernetes 1.17.17,则必须设置以下两个值(请参阅示例 kubernetes-azurestack.json):

- "orchestratorRelease": "1.17",
- "orchestratorVersion": "1.17.17"

AKS 引擎及相应的映像映射

AKS 引擎 AKS 基础映像 Kubernetes 版本 API 模型示例
v0.43.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2019 年 10 月 (2019.10.24) 1.15.5、1.15.4、1.14.8、1.14.7
v0.48.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 3 月 (2020.03.19) 1.15.10、1.14.7
v0.51.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 5 月 (2020.05.13),AKS 基础 Windows 映像 (17763.1217.200513) 1.15.12、1.16.8、1.16.9 LinuxWindows
v0.55.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 8 月 (2020.08.24),AKS 基础 Windows 映像 (17763.1397.200820) 1.15.12、1.16.14、1.17.11 LinuxWindows
v0.55.4 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 9 月 (2020.09.14),AKS 基础 Windows 映像 (17763.1397.200820) 1.15.12、1.16.14、1.17.11 LinuxWindows
V0.60.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2021 年 1 月 (2021.01.28),
AKS 基础 Ubuntu 18.04-LTS 映像发行版 2021 年第 1 季度 (2021.01.28),
AKS 基础 Windows 映像 (17763.1697.210129)
1.16.14, 1.16.15, 1.17.17, 1.18.15 LinuxWindows

新增功能

如果有兴趣参与个人预览版,可以请求预览版访问权限

新的功能包括:

  • Ubuntu 18.04 已正式发布。
  • 证书轮换公共预览版 #4214
  • T4 Nvidia GPU 个人预览版 #4259
  • Azure Active Directory 集成个人预览版。
  • 适用于 Azure Blob 个人预览版 #712 的 CSI 驱动程序。
  • CSI 驱动程序 Azure 磁盘公共预览版 #712
  • CSI 驱动程序 NFS 公共预览版 #712
  • 支持 Kubernetes 1。 17.17 #4188 和 1.18.15 #4187

已知问题

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。 我们建议一次部署一个服务。
  • 由于 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库,查看许多发行说明和拉取请求可能会使你相信该工具支持上面所列版本之外的其他 Kubernetes 和 OS 平台版本。 你可以忽略该工具列出的版本,并使用上面的版本表作为此更新的官方指南。

参考

以下列表是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集:

适用于 AKS 引擎版本 v0.55.4。

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。 本文并不是为了记录 Azure 的 AKS 引擎的发布信息。

更新规划

AKS 引擎 upgrade 命令完全自动执行群集的升级过程,并处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。 应用该更新之前,请务必查看发行说明信息。

升级注意事项

  • 你是否使用了正确的市场项(即 AKS 基础 Ubuntu 16.04-LTS 映像发行版)作为你的 AKS 引擎版本? 可以在“下载新映像和 AKS 引擎”部分中找到版本。
  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组? 最初部署群集时,已在输出目录中生成此文件。 请参阅部署 Kubernetes 群集的“deploy”命令参数。
  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?
  • 如果要更新具有活动工作负载的正常群集,假如群集处于正常负载下,则可以在不影响它们的情况下应用升级。 但是,你应该有一个备份群集,以防需要将用户重定向到它。 强烈建议使用备份群集。
  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。
  • 请确保订阅有足够的配额来完成整个过程。 进程将在此过程中分配新的 VM。 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。
  • 未规划系统更新或计划的任务。
  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。

使用升级命令

必须按照升级 Azure Stack Hub 上的 Kubernetes 群集中所述使用 aks-engine upgrade 命令。

升级中断

有时,意外的因素会中断群集的升级。 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。 请检查中断的原因,解决问题,然后重新提交相同的 upgrade 命令以继续执行升级过程。 upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。 通常,中断会增加完成更新所需的时间,但不会影响它的完成。

估计的升级时间

群集中每个 VM 的估计升级时间为 12 到 15 分钟。 例如,升级包含 20 个节点的群集大约需要 5 小时。

下载新映像和 AKS 引擎

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。

如 Azure Stack Hub 上的 AKS 引擎文档中所述,部署 Kubernetes 群集需要两个主要组件:

  • aks-engine 二进制文件(必需)。
  • AKS 基础 Ubuntu 16.04-LTS 映像发行版

此更新提供了这些映像的新版本:

AKS 引擎和 Azure Stack 版本映射

Azure Stack Hub 版本 AKS 引擎版本
1910 0.43.0、0.43.1
2002 0.48.0、0.51.0
2005 0.48.0、0.51.0、0.55.0、0.55.4

AKS 引擎 v0.55.4 中的 Kubernetes 版本升级路径

可以在下表中找到 Azure Stack Hub 的当前版本和升级版本。 此表适用于 Azure Stack Hub 中的 AKS 引擎群集。 不要使用 aks-engine get-versions 命令,它会返回 Azure 以及 Azure Stack Hub 中支持的版本。

当前版本 可用升级
1.15.10 1.15.12
1.15.12、1.16.8、1.16.9 1.16.14
1.16.8、1.16.9、1.16.14 1.17.11

在 API 模型 JSON 文件中,在 orchestratorProfile 节下指定发行版和版本值。 例如,如果你打算部署 Kubernetes 1.17.17,则必须设置以下两个值(请参阅示例 kubernetes-azurestack.json):

    -   "orchestratorRelease": "1.16",
    -   "orchestratorVersion": "1.16.14"

AKS 引擎及相应的映像映射

Kubernetes 版本 说明
1.15.5、1.15.4、1.14.8、1.14.7
1.15.10、1.14.7
1.15.12、1.16.8、1.16.9 API 模型示例(LinuxWindows
1.15.12、1.16.14、1.17.11 API 模型示例(LinuxWindows
1.15.12、1.16.14、1.17.11 API 模型示例(LinuxWindows

新增功能

  • 将 Azure Stack 的 Linux VHD 更新为 2020.09.14 #3828
  • 添加了对 Azure Stack 上 K8s v1.17.11 的支持 #3702
  • 添加了对 Azure Stack 上 K8s v1.16.14 的支持 #3704
  • Linux VHD 更新至 2020.09.14 #3750
  • Windows VHD 更新至 8 月 #3730
  • 将 Kubernetes metrics-server 升级至 v0.3.7 #3669
  • 升级了 Docker 版本以修复日志轮换问题 #3693
  • 将 CoreDNS 升级至 v1.7.0 #3608
  • 使用 moby 19.03.x 包 #3549
  • azure-cni 更新策略的修补程序 #3571

已知问题

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。 我们建议一次部署一个服务。
  • 运行 aks-engine get-versions 时,输出将生成适用于 Azure 和 Azure Stack Hub 的信息,但是,没有明确的方法来识别与 Azure Stack Hub 对应的内容。 请不要使用此命令来确定哪些版本可供升级。 请使用上一部分所述的升级参考表。
  • 由于 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库,查看许多发行说明和拉取请求可能会使你相信该工具支持上面所列版本之外的其他 Kubernetes 和 OS 平台版本。 你可以忽略该工具列出的版本,并使用上面的版本表作为此更新的官方指南。

参考

这是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集合:

适用于 AKS 引擎的 0.48.0 版或更低版本。

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。 本文并不是为了记录 Azure 的 AKS 引擎的发布信息。

更新规划

AKS 引擎 upgrade 命令完全自动执行群集的升级过程,并处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。 应用该更新之前,请务必查看发行说明信息。

升级注意事项

  • 你是否使用了正确的市场项(即 AKS 基础 Ubuntu 16.04-LTS 映像发行版)作为你的 AKS 引擎版本? 可以在下载新的 AKS 基础 Ubuntu 映像和 AKS 引擎版本部分中找到版本。
  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组? 最初部署群集时,已在输出目录中生成此文件。 请参阅部署 Kubernetes 群集的“deploy”命令参数。
  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?
  • 如果要更新具有活动工作负载的正常群集,假如群集处于正常负载下,则可以在不影响它们的情况下应用升级。 但是,你应该有一个备份群集,以防需要将用户重定向到它。 强烈建议使用备份群集。
  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。
  • 请确保订阅有足够的配额来完成整个过程。 进程将在此过程中分配新的 VM。 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。
  • 未规划系统更新或计划的任务。
  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。

使用升级命令

必须按照升级 Azure Stack Hub 上的 Kubernetes 群集中所述使用 aks-engine upgrade 命令。

升级中断

有时,意外的因素会中断群集的升级。 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。 请检查中断的原因,解决问题,然后重新提交相同的 upgrade 命令以继续执行升级过程。 upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。 通常,中断会增加完成更新所需的时间,但不会影响它的完成。

估计的升级时间

群集中每个 VM 的估计升级时间为 12 到 15 分钟。 例如,升级包含 20 个节点的群集大约需要 5 小时。

下载新映像和 AKS 引擎

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。

如 Azure Stack Hub 上的 AKS 引擎文档中所述,部署 Kubernetes 群集需要两个主要组件:

  • aks-engine 二进制文件(必需)。
  • AKS 基础 Ubuntu 16.04-LTS 映像发行版。

此更新提供了这些组件的新版本:

Kubernetes 版本升级路径

可以在下表中找到 Azure Stack Hub 的当前版本和升级版本。 此表适用于 Azure Stack Hub 中的 AKS 引擎群集。 不要使用 aks-engine get-versions 命令,它会返回 Azure 以及 Azure Stack Hub 中支持的版本。

当前版本 提供的升级版本
1.14.7 1.15.10
1.14.8 1.15.10
1.15.4 1.15.10
1.15.5 1.15.10

新增功能

  • 支持 Kubernetes 版本 1.15.10 (#2834)。 部署新群集时,请在 API 模型 .json 文件(也称为群集定义文件)中,按以下格式指定发行版本号和次要版本号。 有关群集定义文件示例,请参阅 kubernetes-azurestack.json

    • "orchestratorRelease": "1.15

    • "orchestratorVersion": "1.15.10"

    注意

    如果在 API 模型 .json 文件中没有显式地提供 Kubernetes 版本,则将使用版本 1.15 (#2932),而 orchestratorVersion 将默认为 1.15.11,这将导致在部署群集时出错。

  • 对于 aks-engine v0.43.1,云提供商执行其控制循环和其他任务的默认频率设置不能很好地与 Azure Stack Hub 资源管理器对传入请求的阈值限制配合使用。 此更新将更改 Azure Stack Hub 的默认设置,以减少到 Azure Stack Hub 资源管理器的重试负载 (#2861)。

  • 如果 API 模型 .json 文件包含 Azure Stack Hub 不支持的属性,则 aks-engine 中的新验证步骤会导致执行停止或显示警告 (#2717)。

  • 使用新的验证签入,aks-engine 将验证所执行的 aks-engine 版本所需的 AKS 基础映像版本的可用性 (#2342)。 这将发生在分析 API 模型 .json 文件之后和调用 Azure Stack Hub 资源管理器之前。

  • upgrade 命令中新的 aks-engine 选项“--control-plane-only”允许用户将操作升级为仅针对主虚拟机 (#2635)。

  • 对于 Ubuntu 16.04-LTS,已更新到 Linux 内核版本 4.15.0-1071-azure。 有关详细信息,请参阅 Package: linux-image-4.15.0-1071-azure (4.15.0-1071.76) [安全性]

  • 新的 hyperkube 更新支持 Kubernetes 版本 1.14.8 和 1.15.10。

  • 更新了 kubectl,使之与群集的 Kubernetes 版本匹配。 此组件在 Kubernetes 群集控制平面节点中提供,通过 SSH 连接到主节点即可运行它。

  • 通过最新的 2020 年 2 月版本更新了 Azure 容器监视器加载项 (#2850)。

  • coredns 升级到版本 v1.6.6 (#2555)。

  • etcd 升级到了版本 3.3.18 (#2462)。

  • moby 升级到了版本 3.0.11 (#2887)。

  • 使用此版本时,AKS 引擎不再依赖于 k8s.gcr.io,现在在构建其映像时将使用官方的 Kubernetes MCR registry @ mcr.microsoft.com (#2722)。

已知问题

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。 我们建议一次部署一个服务。
  • 运行 aks-engine get-versions 将生成适用于 Azure 和 Azure Stack Hub 的信息,但是,没有明确的方法来识别与 Azure Stack Hub 对应的内容。 请不要使用此命令来确定哪些版本可供升级。 请使用上一部分所述的升级参考表。
  • 由于 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库,查看许多发行说明和拉取请求可能会使你相信该工具支持上面所列版本之外的其他 Kubernetes 和 OS 平台版本。 你可以忽略该工具列出的版本,并使用上面的版本表作为此更新的官方指南。

参考

下面列出了一些已修复的 bug,以及从版本 0.44.0 到 0.48.0 的完整发行说明。 发行说明包括 Azure 和 Azure Stack Hub。

Bug 修复

  • Windows azure.json 中的 userAssignedIdentityId 缺少引号 (#2327)

  • 加载项 update config 仅限升级 (#2282)

  • 更改了在 Windows 节点上获取管理 IP 的超时 (#2284)

  • 在 Windows VHD 中添加了 1.0.28 Azure CNI .zip 文件 (#2268)

  • 更正了 IPAddressCount 的默认设置顺序 (#2358)

  • 更新为对所有 K8s 版本使用单个 omsagent yaml 以避免任何人为错误并轻松进行维护 (#2692)

发行说明

这是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集合:

后续步骤