Azure Stack Hub 上的 AKS 引擎发行说明Release notes for the AKS engine on Azure Stack Hub

适用于 AKS 引擎的版本 v0.60.1。Applies to version v0.60.1 of the AKS engine.

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。This article describes the contents of the Azure Kubernetes Service (AKS) engine on Azure Stack Hub update. 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。The update includes improvements and fixes for the latest release of AKS engine targeted to the Azure Stack Hub platform. 请注意,本文并不是为了记录 Azure 的 AKS 引擎的发布信息。Notice that this isn't intended to document the release information for the AKS engine for Azure.

更新规划Update planning

AKS 引擎升级命令完全自动执行群集的升级过程,它负责处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。The AKS engine upgrade command fully automates the upgrade process of your cluster, it takes care of virtual machines (VMs), networking, storage, Kubernetes, and orchestration tasks. 应用该更新之前,请务必查看发行说明信息。Before applying the update, make sure to review the release note information.

升级注意事项Upgrade considerations

  • 你是否使用了正确的市场项(即 AKS 基础 Ubuntu 16.04-LTS、18.04 映像发行版或 AKS 基础 Windows Server)作为你的 AKS 引擎版本?Are you using the correct marketplace items, AKS Base Ubuntu 16.04-LTS or 18.04 Image Distro or AKS Base Windows Server for your version of the AKS engine? 可以在“下载新映像和 AKS 引擎”部分中找到这些版本。You can find the versions in the section "Download new images and AKS engine".
  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组?Are you using the correct cluster specification (apimodel.json) and resource group for the target cluster? 最初部署群集时,已在输出目录中生成此文件。When you originally deployed the cluster, this file was generated in your output directory. 请参阅部署 Kubernetes 群集的“deploy”命令参数。See the deploy command parameters Deploy a Kubernetes cluster.
  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?Are you using a reliable machine to run the AKS engine and from which you are performing upgrade operations?
  • 如果要更新具有活动工作负荷的正常运转中的群集,假如群集处于正常负载下,则你可以在不影响它们的情况下应用升级。If you are updating an operational cluster with active workloads, you can apply the upgrade without affecting them, assuming the cluster is under normal load. 但是,你应该有一个备份群集,以防需要将用户重定向到它。However, you should have a backup cluster in case there is a need to redirect users to it. 强烈建议使用备份群集。A backup cluster is highly recommended.
  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。If possible, run the command from a VM within the Azure Stack Hub environment to decrease the network hops and potential connectivity failures.
  • 请确保订阅有足够的配额来完成整个过程。Make sure that your subscription has enough quota for the entire process. 进程将在此过程中分配新的 VM。The process allocates new VMs during the process. 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。The resulting number of VMs would be the same as the original, but plan for a couple more VMs to be created during the process.
  • 未规划系统更新或计划的任务。No system updates or scheduled tasks are planned.
  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。Set up a staged upgrade on a cluster that's configured with the same values as the production cluster and test the upgrade there before doing so in your production cluster.

使用升级命令Use the upgrade command

你需要使用 AKS 引擎的“upgrade”命令,如升级 Azure Stack Hub 上的 Kubernetes 群集一文所述。You will be required to use the AKS engine upgrade command as described in the following article Upgrade a Kubernetes cluster on Azure Stack Hub.

升级中断Upgrade interruptions

有时,意外的因素会中断群集的升级。Sometimes unexpected factors interrupt the upgrade of the cluster. 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。An interruption can occur when the AKS engine reports an error or something happens to the AKS engine execution process. 请检查中断的原因,解决问题,然后再次提交相同的升级命令以继续执行升级过程。Examine the cause of the interruption, address it, and submit again the same upgrade command to continue the upgrade process. upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。The upgrade command is idempotent and should resume the upgrade of the cluster once resubmitted the command. 通常,中断会增加完成更新所需的时间,但不会影响它的完成。Normally, interruptions increase the time to complete the update, but should not affect the completion of it.

估计的升级时间Estimated upgrade time

群集中每个 VM 的估计时间为 12 到 15 分钟。The estimated time is between 12 to 15 minutes per VM in the cluster. 例如,一个 20 节点的群集可能需要大约五 (5) 小时才能完成升级。For example, a 20-node cluster may take approximately to five (5) hours to upgrade.

下载新映像和 AKS 引擎Download new image and AKS engine

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。Download the new versions of the AKS base Ubuntu Image and AKS engine.

如“Azure Stack Hub 的 AKS 引擎”文档中所述,部署 Kubernetes 群集需要:As explained in the AKS engine for Azure Stack Hub documentation, deploying a Kubernetes cluster requires:

  • aks-engine 二进制文件(必需)The aks-engine binary (required)
  • AKS 基础 Ubuntu 16.04-LTS 映像发行版(必需)AKS Base Ubuntu 16.04-LTS Image Distro (required)
  • AKS 基础 Ubuntu 18.04-LTS 映像发行版(可选)AKS Base Ubuntu 18.04-LTS Image Distro (optional)
  • AKS 基础 Windows Server 映像发行版(可选)AKS Base Windows Server Image Distro (optional)

此更新提供了这些组件的新版本:New versions of these are available with this update:

AKS 引擎和 Azure Stack 版本映射AKS engine and Azure Stack version mapping

Azure Stack Hub 版本Azure Stack Hub version AKS 引擎版本AKS engine version
19101910 0.43.0、0.43.10.43.0, 0.43.1
20022002 0.48.0、0.51.00.48.0, 0.51.0
20052005 0.48.0、0.51.0、0.55.0、0.55.40.48.0, 0.51.0, 0.55.0, 0.55.4
20082008 0.55.4, 0.60.10.55.4, 0.60.1

AKS 引擎 v0.60.1 中的 Kubernetes 版本升级路径Kubernetes version upgrade path in AKS engine v0.60.1

可以在下表中找到 Azure Stack Hub 的当前版本和升级版本。You can find the current version and upgrade version in the following table for Azure Stack Hub. 不要遵循 aks-engine get-versions 命令,因为该命令还包括 Azure 中支持的版本。Don't follow the aks-engine get-versions command since the command one also includes the versions supported in Azure. 以下版本和升级表适用于 Azure Stack Hub 中的 AKS 引擎群集。The following version and upgrade table applies to the AKS engine cluster in Azure Stack Hub.

当前版本Current version 可用升级Upgrade available
1.15.121.15.12 1.16.14, 1.16.151.16.14, 1.16.15
1.16.141.16.14 1.16.15, 1.17.171.16.15, 1.17.17
1.17.111.17.11 1.17.17, 1.18.151.17.17, 1.18.15
1.17.171.17.17 1.18.151.18.15

在 API 模型 json 文件中,请在 orchestratorProfile 部分下指定发行版和版本值,例如,如果计划部署 Kubernetes 1.17.17,则必须设置以下两个值(请参阅示例 kubernetes-azurestack.json):In the API Model json file, please specify the release and version values under the orchestratorProfile section, for example, if you are planning to deploy Kubernetes 1.17.17, the following two values must be set, (see example kubernetes-azurestack.json):

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

AKS 引擎及相应的映像映射AKS engine and corresponding image mapping

AKS 引擎AKS engine AKS 基础映像AKS base image Kubernetes 版本Kubernetes versions API 模型示例API model samples
v0.43.1v0.43.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2019 年 10 月 (2019.10.24)AKS Base Ubuntu 16.04-LTS Image Distro, October 2019 (2019.10.24) 1.15.5、1.15.4、1.14.8、1.14.71.15.5, 1.15.4, 1.14.8, 1.14.7
v0.48.0v0.48.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 3 月 (2020.03.19)AKS Base Ubuntu 16.04-LTS Image Distro, March 2020 (2020.03.19) 1.15.10、1.14.71.15.10, 1.14.7
v0.51.0v0.51.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 5 月 (2020.05.13),AKS 基础 Windows 映像 (17763.1217.200513)AKS Base Ubuntu 16.04-LTS Image Distro, May 2020 (2020.05.13), AKS Base Windows Image (17763.1217.200513) 1.15.12、1.16.8、1.16.91.15.12, 1.16.8, 1.16.9 LinuxWindowsLinux, Windows
v0.55.0v0.55.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 8 月 (2020.08.24),AKS 基础 Windows 映像 (17763.1397.200820)AKS Base Ubuntu 16.04-LTS Image Distro, August 2020 (2020.08.24), AKS Base Windows Image (17763.1397.200820) 1.15.12、1.16.14、1.17.111.15.12, 1.16.14, 1.17.11 LinuxWindowsLinux, Windows
v0.55.4v0.55.4 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 9 月 (2020.09.14),AKS 基础 Windows 映像 (17763.1397.200820)AKS Base Ubuntu 16.04-LTS Image Distro, September 2020 (2020.09.14), AKS Base Windows Image (17763.1397.200820) 1.15.12、1.16.14、1.17.111.15.12, 1.16.14, 1.17.11 LinuxWindowsLinux, Windows
V0.60.1V0.60.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2021 年 1 月 (2021.01.28),AKS Base Ubuntu 16.04-LTS Image Distro, January 2021 (2021.01.28),
AKS 基础 Ubuntu 18.04-LTS 映像发行版 2021 年第 1 季度 (2021.01.28),AKS Base Ubuntu 18.04-LTS Image Distro, 2021 Q1 (2021.01.28),
AKS 基础 Windows 映像 (17763.1697.210129)AKS Base Windows Image (17763.1697.210129)
1.16.14, 1.16.15, 1.17.17, 1.18.151.16.14, 1.16.15, 1.17.17, 1.18.15 LinuxWindowsLinux, Windows

新增功能What's new

如果有兴趣参与个人预览版,可以请求预览版访问权限If you are interested in participating in a private preview, you can request preview access.

新的功能包括:New features include:

  • Ubuntu 18.04 正式发布General Availability of Ubuntu 18.04
  • 证书轮换公共预览版 #4214Certificate Rotation Public Preview #4214
  • T4 Nvidia GPU 个人预览版 #4259T4 Nvidia GPU Private Preview #4259
  • Azure Active Directory 集成个人预览版Azure Active Directory integration private preview
  • 适用于 Azure Blob 个人预览版 #712 的 CSI 驱动程序CSI Driver for Azure Blobs Private Preview #712
  • CSI 驱动程序 Azure 磁盘公共预览版 #712CSI Driver Azure Disks Public Preview #712
  • CSI 驱动程序 NFS 磁盘公共预览版 #712CSI Driver NFS Public Preview #712
  • 支持 Kubernetes 1。Support for Kubernetes 1. 17.17 #4188 and 1.18.15 #418717.17 #4188 and 1.18.15 #4187

已知问题Known issues

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。Deploying multiple Kubernetes services in parallel inside a single cluster may lead to an error in the basic load balancer configuration. 我们建议一次部署一个服务。We recommend deploying one service at the time.
  • 因为 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库。Since the aks-engine tool is a share source code repository across Azure and Azure Stack Hub. 查看许多发行说明和拉取请求会使你相信该工具支持上面所列版本之外的其他版本的 Kubernetes 和 OS 平台,请忽略它们并使用上面的版本表作为此更新的官方指南。Examining the many release notes and Pull Requests will lead you to believe that the tool supports other versions of Kubernetes and OS platform beyond the listed above, ignore them and use the version table above as the official guide for this update.

备注

Windows 容器和 Azure CNI 支持在公共预览版中可用。Windows Container and Azure CNI support is available in public preview.

参考Reference

这是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集合:This is the complete set of release notes for Azure and Azure Stack Hub combined:

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。This article describes the contents of the Azure Kubernetes Service (AKS) engine on Azure Stack Hub update. 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。The update includes improvements and fixes for the latest release of AKS engine targeted to the Azure Stack Hub platform. 请注意,本文并不是为了记录 Azure 的 AKS 引擎的发布信息。Notice that this isn't intended to document the release information for the AKS engine for Azure.

更新规划Update planning

AKS 引擎升级命令完全自动执行群集的升级过程,它负责处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。The AKS engine upgrade command fully automates the upgrade process of your cluster, it takes care of virtual machines (VMs), networking, storage, Kubernetes, and orchestration tasks. 应用该更新之前,请务必查看发行说明信息。Before applying the update, make sure to review the release note information.

升级注意事项Upgrade considerations

  • 你是否使用了正确的市场项(即 AKS 基础 Ubuntu 16.04-LTS 映像发行版)作为你的 AKS 引擎版本?Are you using the correct marketplace item, AKS Base Ubuntu 16.04-LTS Image Distro for your version of the AKS engine? 可以在“下载新映像和 AKS 引擎”部分中找到版本。You can find the versions in the section "Download new image and AKS engine".

  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组?Are you using the correct cluster specification (apimodel.json) and resource group for the target cluster? 最初部署群集时,已在输出目录中生成此文件。When you originally deployed the cluster, this file was generated in your output directory. 请参阅部署 Kubernetes 群集中的 deploy 命令参数。See the deploy command parameters Deploy a Kubernetes cluster.

  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?Are you using a reliable machine to run the AKS engine and from which you are performing upgrade operations?

  • 如果要更新具有活动工作负荷的正常运转中的群集,假如群集处于正常负载下,则你可以在不影响它们的情况下应用升级。If you are updating an operational cluster with active workloads you can apply the upgrade without affecting them, assuming the cluster is under normal load. 但是,你应该有一个备份群集,以防需要将用户重定向到它。However, you should have a backup cluster in case there is a need to redirect users to it. 强烈建议使用备份群集。A backup cluster is highly recommended.

  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。If possible, run the command from a VM within the Azure Stack Hub environment to decrease the network hops and potential connectivity failures.

  • 请确保订阅有足够的配额来完成整个过程。Make sure that your subscription has enough quota for the entire process. 进程将在此过程中分配新的 VM。The process allocates new VMs during the process. 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。The resulting number of VMs would be the same as the original, but plan for a couple more VMs to be created during the process.

  • 未规划系统更新或计划的任务。No system updates or scheduled tasks are planned.

  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。Set up a staged upgrade on a cluster that's configured with the same values as the production cluster and test the upgrade there before doing so in your production cluster.

使用升级命令Use the upgrade command

你需要使用 AKS 引擎的 upgrade 命令,如下面的文章升级 Azure Stack Hub 上的 Kubernetes 群集所述。You will be required to use the AKS engine upgrade command as described in the following article Upgrade a Kubernetes cluster on Azure Stack Hub.

升级中断Upgrade interruptions

有时,意外的因素会中断群集的升级。Sometimes unexpected factors interrupt the upgrade of the cluster. 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。An interruption can occur when the AKS engine reports an error or something happens to the AKS engine execution process. 请检查中断的原因,解决问题,然后再次提交相同的升级命令以继续执行升级过程。Examine the cause of the interruption, address it, and submit again the same upgrade command to continue the upgrade process. upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。The upgrade command is idempotent and should resume the upgrade of the cluster once resubmitted the command. 通常,中断会增加完成更新所需的时间,但不会影响它的完成。Normally, interruptions increase the time to complete the update, but should not affect the completion of it.

估计的升级时间Estimated upgrade time

群集中每个 VM 的估计时间为 12 到 15 分钟。The estimated time is between 12 to 15 minutes per VM in the cluster. 例如,一个 20 节点的群集可能需要大约五 (5) 小时才能完成升级。For example, a 20-node cluster may take approximately to five (5) hours to upgrade.

下载新映像和 AKS 引擎Download new image and AKS engine

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。Download the new versions of the AKS base Ubuntu Image and AKS engine.

如 Azure Stack Hub 的 AKS 引擎文档中所述,部署 Kubernetes 群集需要两个主要组件:As explained in the AKS engine for Azure Stack Hub documentation, deploying a Kubernetes cluster requires two main components:

  • aks-engine 二进制文件The aks-engine binary

  • AKS 基础 Ubuntu 16.04-LTS 映像发行版AKS Base Ubuntu 16.04-LTS Image Distro

此更新提供了这些组件的新版本:New versions of these are available with this update:

AKS 引擎和 Azure Stack 版本映射AKS engine and Azure Stack version mapping

Azure Stack Hub 版本Azure Stack Hub version AKS 引擎版本AKS engine version
19101910 0.43.0、0.43.10.43.0, 0.43.1
20022002 0.48.0、0.51.00.48.0, 0.51.0
20052005 0.48.0、0.51.0、0.55.0、0.55.40.48.0, 0.51.0, 0.55.0, 0.55.4

AKS 引擎 v0.55.4 中的 Kubernetes 版本升级路径Kubernetes version upgrade path in AKS engine v0.55.4

可以在下表中找到 Azure Stack Hub 的当前版本和升级版本。You can find the current version and upgrade version in the following table for Azure Stack Hub. 不要遵循 aks-engine get-versions 命令,因为该命令还包括全球 Azure 中支持的版本。Don't follow the aks-engine get-versions command since the command one also includes the versions supported in global Azure. 以下版本和升级表适用于 Azure Stack Hub 中的 AKS 引擎群集。The following version and upgrade table applies to the AKS engine cluster in Azure Stack Hub.

当前版本Current version 可用升级Upgrade available
1.15.101.15.10 1.15.121.15.12
1.15.12、1.16.8、1.16.91.15.12, 1.16.8, 1.16.9 1.16.141.16.14
1.16.8、1.16.9、1.16.141.16.8, 1.16.9, 1.16.14 1.17.111.17.11

在 API 模型 json 文件中,请在 orchestratorProfile 部分下指定发行版和版本值,例如,如果计划部署 Kubernetes 1.16.14,则必须设置以下两个值(请参阅示例 kubernetes-azurestack.json):In the API Model json file, please specify the release and version values under the orchestratorProfile section, for example, if you are planning to deploy Kubernetes 1.16.14, the following two values must be set, (see example kubernetes-azurestack.json):

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

AKS 引擎及相应的映像映射AKS engine and corresponding image mapping

AKS 引擎AKS Engine AKS 基础映像AKS Base Image Kubernetes 版本Kubernetes versions 说明Notes
v0.43.1v0.43.1 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2019 年 10 月 (2019.10.24)AKS Base Ubuntu 16.04-LTS Image Distro, October 2019 (2019.10.24) 1.15.5、1.15.4、1.14.8、1.14.71.15.5, 1.15.4, 1.14.8, 1.14.7
v0.48.0v0.48.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 3 月 (2020.03.19)AKS Base Ubuntu 16.04-LTS Image Distro, March 2020 (2020.03.19) 1.15.10、1.14.71.15.10, 1.14.7
v0.51.0v0.51.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 5 月 (2020.05.13),AKS 基础 Windows 映像 (17763.1217.200513)AKS Base Ubuntu 16.04-LTS Image Distro, May 2020 (2020.05.13), AKS Base Windows Image (17763.1217.200513) 1.15.12、1.16.8、1.16.91.15.12, 1.16.8, 1.16.9 API 模型示例(LinuxWindowsAPI Model Samples (Linux, Windows)
v0.55.0v0.55.0 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 8 月 (2020.08.24),AKS 基础 Windows 映像 (17763.1397.200820)AKS Base Ubuntu 16.04-LTS Image Distro, August 2020 (2020.08.24), AKS Base Windows Image (17763.1397.200820) 1.15.12、1.16.14、1.17.111.15.12, 1.16.14, 1.17.11 API 模型示例(LinuxWindowsAPI Model Samples (Linux, Windows)
v0.55.4v0.55.4 AKS 基础 Ubuntu 16.04-LTS 映像发行版,2020 年 9 月 (2020.09.14),AKS 基础 Windows 映像 (17763.1397.200820)AKS Base Ubuntu 16.04-LTS Image Distro, September 2020 (2020.09.14), AKS Base Windows Image (17763.1397.200820) 1.15.12、1.16.14、1.17.111.15.12, 1.16.14, 1.17.11 API 模型示例(LinuxWindowsAPI Model Samples (Linux, Windows

新增功能What's new

  • 将 Azure Stack 的 Linux VHD 更新为 2020.09.14 #3828Update Azure Stack's Linux VHD to 2020.09.14 #3828
  • 添加了对 Azure Stack 上 K8s v1.17.11 的支持 #3702Adds support for K8s v1.17.11 on Azure Stack #3702
  • 添加了对 Azure Stack 上 K8s v1.16.14 的支持 #3704Adds support for K8s v1.16.14 on Azure Stack #3704
  • Linux VHD 更新至 2020.09.14 #3750Linux VHD update to 2020.09.14 #3750
  • Windows VHD 更新至 8 月 #3730Windows VHD update to August #3730
  • 将 Kubernetes metrics-server 升级至 v0.3.7 #3669Upgrades Kubernetes metrics-server to v0.3.7 #3669
  • 升级了 Docker 版本以修复日志轮换问题 #3693Upgrades docker version to fix log rotation issue #3693
  • 将 CoreDNS 升级至 v1.7.0 #3608Upgrades CoreDNS to v1.7.0 #3608
  • 使用 moby 19.03.x 包 #3549Use moby 19.03.x packages #3549
  • azure-cni 更新策略的修补程序 #3571Fixes to azure-cni update strategy #3571

已知问题Known issues

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。Deploying multiple Kubernetes services in parallel inside a single cluster may lead to an error in the basic load balancer configuration. 如果可能,请一次部署一个服务。Deploying one service at the time if possible.
  • 运行 aks-engine get-versions 将生成适用于 Azure 和 Azure Stack Hub 的信息,但是,没有明确的方法来识别与 Azure Stack Hub 对应的内容。Running aks-engine get-versions will produce information applicable to Azure and Azure Stack Hub, however, there is not explicit way to discern what corresponds to Azure Stack Hub. 请不要使用此命令来确定哪些版本可供升级。Do not use this command to figure out what versions are available to upgrade. 请使用上述升级参考表。Use the upgrade reference table described above.
  • 因为 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库,Since aks-engine tool is a share source code repository across Azure and Azure Stack Hub. 查看许多发行说明和拉取请求会使你相信该工具支持上面所列版本之外的其他版本的 Kubernetes 和 OS 平台,请忽略它们并使用上面的版本表作为此更新的官方指南。Examining the many release notes and Pull Requests will lead you to believe that the tool supports other versions of Kubernetes and OS platform beyond the listed above, ignore them and use the version table above as the official guide for this update.

备注

Windows 容器和 Azure CNI 支持在公共预览版中可用。Windows Container and Azure CNI support is available in the public preview. 若要加入预览版,可以请求访问:https://aka.ms/ash-k8s-win-azurecniIf you would like to join the preview, you can request access: https://aka.ms/ash-k8s-win-azurecni

参考Reference

这是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集合:This is the complete set of release notes for Azure and Azure Stack Hub combined:

适用于 AKS 引擎的 0.48.0 版或更低版本。Applies to version 0.48.0 or earlier of the AKS engine.

本文介绍了 Azure Stack Hub 上的 Azure Kubernetes 服务 (AKS) 引擎更新的内容。This article describes the contents of the Azure Kubernetes Service (AKS) engine on Azure Stack Hub update. 此更新包括对面向 Azure Stack Hub 平台的最新版 AKS 引擎的改进和修复。The update includes improvements and fixes for the latest release of AKS engine targeted to the Azure Stack Hub platform. 请注意,本文的用途并非记录适用于全球 Azure 的 AKS 引擎的发布信息。Notice that this isn't intended to document the release information for the AKS engine for global Azure.

更新规划Update planning

AKS 引擎升级命令完全自动执行群集的升级过程,它负责处理虚拟机 (VM)、网络、存储、Kubernetes 和业务流程任务。The AKS engine upgrade command fully automates the upgrade process of your cluster, it takes care of virtual machines (VMs), networking, storage, Kubernetes, and orchestration tasks. 应用更新之前,请务必查看本文中的信息。Before applying the update, make sure to review the information in this article.

升级注意事项Upgrade considerations

  • 你是否使用了正确的市场项(即 AKS 基础 Ubuntu 16.04-LTS 映像发行版)作为你的 AKS 引擎版本?Are you using the correct marketplace item, AKS Base Ubuntu 16.04-LTS Image Distro for your version of the AKS engine? 可以在下载新的 AKS 基础 Ubuntu 映像和 AKS 引擎版本部分中找到版本。You can find the versions in the section Download the new AKS base Ubuntu Image and AKS engine versions.

  • 是否为目标群集使用了正确的群集规范 (apimodel.json) 和资源组?Are you using the correct cluster specification (apimodel.json) and resource group for the target cluster? 最初部署群集时,已在输出目录中生成此文件。When you originally deployed the cluster, this file was generated in your output directory. 请参阅部署 Kubernetes 群集中的“deploy”命令参数。See the "deploy" command parameters Deploy a Kubernetes cluster.

  • 是否使用了可靠的计算机来运行 AKS 引擎并从中执行升级操作?Are you using a reliable machine to run the AKS engine and from which you are performing upgrade operations?

  • 如果要更新具有活动工作负荷的正常运转中的群集,假如群集处于正常负载下,则你可以在不影响它们的情况下应用升级。If you are updating an operational cluster with active workloads you can apply the upgrade without affecting them, assuming the cluster is under normal load. 但是,你应该有一个备份群集,以防需要将用户重定向到它。However, you should have a backup cluster in case there is a need to redirect users to it.

  • 如果可能,请从 Azure Stack Hub 环境中的 VM 运行命令,以减少网络跃点和潜在的连接故障。If possible, run the command from a VM within the Azure Stack Hub environment to decrease the network hops and potential connectivity failures.

  • 请确保订阅有足够的配额来完成整个过程。Make sure that your subscription has enough quota for the entire process. 进程将在此过程中分配新的 VM。The process allocates new VMs during the process. 生成的 VM 的数量将与原始数量相同,但要对在该过程中创建更多的 VM 做好计划。The resulting number of VMs would be the same as the original, but plan for a couple more VMs to be created during the process.

  • 未规划系统更新或计划的任务。No system updates or scheduled tasks are planned.

  • 在已使用与生产群集相同的值配置的群集上设置分阶段升级,并在其上测试升级,然后再在生产群集中执行此操作。Set up a staged upgrade on a cluster that's configured with the same values as the production cluster and test the upgrade there before doing so in your production cluster.

使用升级命令Use the upgrade command

你需要使用 AKS 引擎的“upgrade”命令,如升级 Azure Stack Hub 上的 Kubernetes 群集一文所述。You will be required to use the AKS engine "upgrade" command as described in the following article Upgrade a Kubernetes cluster on Azure Stack Hub.

升级中断Upgrade interruptions

有时,意外的因素会中断群集的升级。Sometimes unexpected factors interrupt the upgrade of the cluster. 当 AKS 引擎报告了某个错误或在 AKS 引擎执行过程中发生某些事情时,可能会发生中断。An interruption can occur when the AKS engine reports an error or something happens to the AKS engine execution process. 请检查中断的原因,解决问题,然后再次提交相同的升级命令以继续执行升级过程。Examine the cause of the interruption, address it, and submit again the same upgrade command to continue the upgrade process. upgrade 命令是幂等的,在重新提交命令后应该会恢复群集的升级。The upgrade command is idempotent and should resume the upgrade of the cluster once resubmitted the command. 通常,中断会增加完成更新所需的时间,但不会影响它的完成。Normally, interruptions increase the time to complete the update, but should not affect the completion of it.

估计的升级时间Estimated upgrade time

群集中每个 VM 的估计时间为 12 到 15 分钟。The estimated time is between 12 to 15 minutes per VM in the cluster. 例如,一个 20 节点的群集可能需要大约五 (5) 小时才能完成升级。For example, a 20-node cluster may take approximately to five (5) hours to upgrade.

下载新映像和 AKS 引擎Download new image and AKS engine

下载 AKS 基础 Ubuntu 映像和 AKS 引擎的新版本。Download the new versions of the AKS base Ubuntu Image and AKS engine.

如 Azure Stack Hub 的 AKS 引擎文档中所述,部署 Kubernetes 群集需要两个主要组件:As explained in the AKS engine for Azure Stack Hub documentation, deploying a Kubernetes cluster requires two main components:

  • aks-engine 二进制文件The aks-engine binary
  • AKS 基础 Ubuntu 16.04-LTS 映像发行版AKS Base Ubuntu 16.04-LTS Image Distro

此更新提供了这些组件的新版本:New versions of these are available with this update:

Kubernetes 版本升级路径Kubernetes version upgrade path

可以在下表中找到 Azure Stack Hub 的当前版本和升级版本。You can find the current version and upgrade version in the following table for Azure Stack Hub. 不要遵循 aks-engine get-versions 命令,因为该命令还包括全局 Azure 中支持的版本。Don't follow the aks-engine get-versions command since the command one also includes the versions supported in global Azure. 以下版本和升级表适用于 Azure Stack Hub 中的 AKS 引擎群集。The following version and upgrade table applies to the AKS engine cluster in Azure Stack Hub.

当前版本Current version 提供的升级版本Upgrade available
1.14.71.14.7 1.15.101.15.10
1.14.81.14.8 1.15.101.15.10
1.15.41.15.4 1.15.101.15.10
1.15.51.15.5 1.15.101.15.10

新增功能What's new

  • 支持 Kubernetes 版本 1.15.10 (#2834)。Support for Kubernetes version 1.15.10 (#2834). 部署新群集时,请确保在你的 API 模型 json 文件(即When deploying a new cluster make sure to specify in your api model json file (a.k.s. 群集定义文件)中指定发行版本号和次版本号。cluster definition file) the release version number as well as the minor version number. 你可以找到示例:kubernetes-azurestack.jsonYou can find an example: kubernetes-azurestack.json:

    • "orchestratorRelease": "1.15,"orchestratorRelease": "1.15,

    • "orchestratorVersion": "1.15.10"

    备注

    如果在 API 模型 json 文件中没有显式地提供 Kubernetes 版本,则将使用版本 1.15 (#2932),而 orchestratorVersion 将默认为 1.15.11,这将导致在部署群集时出错。If the Kubernetes version is not explicitly provided in the API model json file, version 1.15 will be used (#2932) and the orchestratorVersion will default to 1.15.11, which will result in an error during deployment of the cluster.

  • 对于 aks-engine v0.43.1,云提供程序执行其控制循环和其他任务的默认频率设置不能很好地与 Azure Stack Hub 资源管理器对传入请求的阈值限制配合使用。With aks-engine v0.43.1, the default frequency settings for the cloud provider to perform its control loop and other tasks do not work well with Azure Stack Hub Resource Manager threshold limits for incoming requests. 此更新将更改 Azure Stack Hub 的默认设置,以减少到 Azure Stack Hub 资源管理器的重试加载 (#2861)。This update changes defaults for Azure Stack Hub to reduce the retry load to Azure Stack Hub Resource Manager (#2861).

  • 如果 API 模型 json 文件包含 Azure Stack Hub 不支持的属性,则 aks-engine 中的新验证步骤会导致执行停止或显示警告 (#2717)。New verification step in aks-engine will result in either execution stopping or displaying warnings if api model json file contains properties not supported by Azure Stack Hub (#2717).

  • 使用新的验证签入,aks-engine 将验证所执行的 aks-engine 版本所需的 AKS 基础映像版本的可用性 (#2342)。With a new verification check-in, the aks-engine will validate availability of the version of the AKS base image needed for the version of aks-engine executing (#2342). 这将发生在分析 API 模型文件之后和调用 Azure Stack Hub 资源管理器之前。This will occur after parsing the api model file and before calling the Azure Stack Hub Resource Manager.

  • “upgrade”命令中新的 aks-engine 选项“--control-plane-only”允许用户将操作升级为仅针对主虚拟机 (#2635)。New aks-engine option "--control-plane-only" in the "upgrade" command allows the user to upgrade operations to target only the master Virtual Machines (#2635).

  • 对于 Ubuntu 16.04-LTS,已更新到 Linux 内核版本 4.15.0-1071-azure。Updates to Linux Kernel version 4.15.0-1071-azure for Ubuntu 16.04-LTS. 有关详细信息,请参阅“Package: linux-image-4.15.0-1071-azure (4.15.0-1071.76) [安全性]”。See "Package: linux-image-4.15.0-1071-azure (4.15.0-1071.76) [security]" for details.

  • 新的 hyperkube 更新支持 Kubernetes 版本 1.14.8 和 1.15.10。New hyperkube updates to support Kubernetes versions 1.14.8 and 1.15.10.

  • 更新了 kubectl,使之与群集的 Kubernetes 版本匹配。Update kubectl to match the version of Kubernetes for the cluster.. 此组件在 Kubernetes 群集主节点中提供,通过 SSH 连接到主节点即可运行它。This component is available in the Kubernetes cluster master nodes, you can run it by SSH into a master.

  • 通过最新的 2020 年 2 月版本更新了 Azure 容器监视器附加产品 (#2850)。Updates for the Azure Container Monitor add-on with latest February 2020 release (#2850).

  • coredns 升级到了版本 v1.6.6 (#2555)。Upgrade of coredns to version v1.6.6 (#2555).

  • etcd 升级到了版本 3.3.18 (#2462)。Upgrade etcd to version 3.3.18 (#2462).

  • moby 升级到了版本 3.0.11 (#2887)。Upgrade moby to version 3.0.11 (#2887).

  • 使用此版本时,AKS 引擎不再依赖于 k8s.gcr.io,现在在构建其映像时将使用官方的 Kubernetes MCR registry @ mcr.microsoft.com (#2722)。With this release AKS Engine cuts dependency from k8s.gcr.io to now use the official Kubernetes MCR registry @ mcr.microsoft.com when building its images (#2722).

已知问题Known issues

  • 在单个群集内并行部署多个 Kubernetes 服务可能会导致基本负载均衡器配置错误。Deploying multiple Kubernetes services in parallel inside a single cluster may lead to an error in the basic load balancer configuration. 如果可能,请一次部署一个服务。Deploying one service at the time if possible.

  • 运行 aks-engine get-versions 将生成适用于 Azure 和 Azure Stack Hub 的信息,但是,没有明确的方法来识别与 Azure Stack Hub 对应的内容。Running aks-engine get-versions will produce information applicable to Azure and Azure Stack Hub, however, there is not explicit way to discern what corresponds to Azure Stack Hub. 不要使用此命令来确定可升级的版本区域。Do not use this command to figure out what versions area available to upgrade. 请使用上述升级参考表。Use the upgrade reference table described above.

  • 因为 aks-engine 工具是一个跨 Azure 和 Azure Stack Hub 的共享源代码存储库,Since aks-engine tool is a share source code repository across Azure and Azure Stack Hub. 查看许多发行说明和拉取请求会使你相信该工具支持上面所列版本之外的其他版本的 Kubernetes 和 OS 平台。请忽略它们并使用上面的版本表作为此更新的官方指南。Examining the many release notes and Pull Requests will lead you to believe that the tool supports other versions of Kubernetes and OS platform beyond the listed above, please ignore them and use the version table above as the official guide for this update.

参考Reference

下面是一些已修复的 bug 的列表,以及从 0.44.0 到 0.48.0 的一整套发行说明。请注意,后一个列表将包括 Azure 和 Azure Stack Hub 项Following is a list of some of the bugs fixed as well as the complete set of release notes from 0.44.0 to 0.48.0, notice that the latter list will include Azure and Azure Stack Hub items

Bug 修复Bug fixes

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

  • 加载项 update config 仅限升级 (#2282)Addons update config is upgrade-only (#2282)

  • 升级了在 Windows 节点上获取管理 IP 的超时 (#2284)Bumping timeout for getting management IP on windows nodes (#2284)

  • 在 Windows VHD 中添加了 1.0.28 Azure CNI zip 文件 (#2268)Add 1.0.28 Azure CNI zip file into windows VHD (#2268)

  • 更正了设置 IPAddressCount 的默认顺序 (#2358)Correct defaults order for setting IPAddressCount (#2358)

  • 更新为对所有 k8s 版本使用单个 omsagent yaml 以避免任何人为错误并轻松进行维护 (#2692)Update to use single omsagent yaml for all k8s versions to avoid any manual errors and easy maintainability (#2692)

发行说明Release notes

这是组合了 Azure 和 Azure Stack Hub 的发行说明的完整集合This is the complete set of release notes for Azure and Azure Stack Hub combined

后续步骤Next steps