在 Azure Stack Hub 上设置 AKS 引擎的先决条件

可以在环境中的虚拟机(VM)或有权访问 Azure Stack Hub 资源管理器终结点的任何客户端计算机上安装 AKS 引擎。 在运行引擎之前,确保已具备以下条件:您的订阅下提供的 AKS Base Ubuntu 服务器和 Linux 自定义脚本扩展、已分配给贡献者角色的服务主体身份,以及用于 SSH 访问 Ubuntu 服务器的私钥/公钥对。 此外,如果使用 Azure Stack 开发工具包,则需要让计算机信任相应的证书。

如果满足先决条件,可以开始 定义群集

如果你是 Azure Stack Hub 的云运营者,并且想要提供 AKS 引擎,请按照将 AKS 引擎添加到 Azure Stack Hub 市场中的说明进行操作。

AKS 引擎的先决条件

若要使用 AKS 引擎,需要提供以下资源。 请记住,AKS 引擎是供 Azure Stack Hub 的租户使用的工具,用于将 Kubernetes 群集部署到他们的订阅中。 唯一可能需要 Azure Stack Hub 操作员参与的部分是下载 Marketplace 项目和创建服务主体标识。 可以在下表中找到详细信息。

您的云服务运营商需要准备好以下事项。

先决条件 DESCRIPTION 必选 说明书
Azure Stack Hub 1910 或更高版本 AKS 引擎需要 Azure Stack Hub 1910 或更高版本。 必选 如果不确定你的 Azure Stack Hub 版本,请联系云操作员。
Linux 自定义脚本扩展 Linux 自定义脚本扩展 2.0
产品/服务:适用于 Linux 的自定义脚本 2.0
版本:2.0.6(或最新版本)
发布者:Microsoft公司
必选 如果订阅中没有此项,请联系云服务商。
AKS 基础映像 AKS Ubuntu 基础映像和 Windows 映像
有关版本依赖项的详细信息,请参阅 将引擎与基础映像版本匹配
必选 如果订阅中没有此项,请联系云服务商。
如果你是 Azure Stack Hub 的云操作员,并且想要提供 AKS 引擎,请按照将 AKS 引擎添加到 Azure Stack Hub 市场的说明进行操作。
服务主体标识 (SPN) 需要通过 Azure 资源管理器部署或配置资源的应用程序必须以服务主体来表示。 必选 可能需要联系 Azure Stack Hub 云作员以获取 SPN 和当前机密。
如果使用Microsoft Entra 服务主体标识,则需要从 Kubernetes 群集中的 VM 访问 Internet,以便服务主体可以使用 Microsoft Entra ID 进行身份验证。 你还需要一个有效机密。 机密过期后,群集 将无法 正常运行。 如果环境没有 Internet 访问权限,Kubernetes 群集 将无法 正常运行。
有关说明,请参阅 使用应用标识访问资源
分配了 (SPN) 的参与者角色 若要允许应用程序使用其服务主体访问订阅中的资源,必须将该服务主体分配到特定资源的某个角色。 必选 有关说明,请参阅 “分配角色”

可以设置以下项。

先决条件 DESCRIPTION 必选 说明书
Azure Stack Hub 订阅 可以通过订阅访问 Azure Stack Hub 中的套餐。 这项优惠包括你可使用的服务。 必选 若要能够在 Azure Stack Hub 中部署任何租户工作负荷,首先需要获取 Azure Stack Hub 订阅
资源组 资源组是一个容器,用于保存 Azure 解决方案的相关资源。 如果未指定现有资源组,该工具将为你创建一个资源组。 可选 使用 Azure 门户管理 Azure 资源管理器资源组
私钥公钥对 若要使用从开发计算机到托管 Web 应用的 Azure Stack Hub 实例中的服务器 VM 的开放 SSH 连接,需要创建安全外壳(SSH)公钥和私钥对。 必选 有关生成密钥的说明,请参阅 SSH 密钥生成

注释

还可以使用 适用于 Azure Stack Hub 的 Azure CLIAzure Stack Hub PowerShell 来为 AKS 引擎创建先决条件。

将引擎与基础映像版本匹配

AKS 引擎将自定义 Ubuntu Server OS 部署到每个群集节点映像,即“AKS Ubuntu 基础映像和 Windows 映像发行版”。 任何 AKS 引擎版本都依赖于 Azure Stack Hub 操作员在您的 Azure Stack Hub 中提供的一个特定映像版本。 可以在 支持的 Kubernetes 版本中找到一个表,其中列出了 AKS 引擎版本和相应的受支持的 Kubernetes 版本。 例如,AKS 引擎版本 v0.55.0 取决于 AKS Base Ubuntu 和 Windows 映像发行版的版本 2020.08.24 。 要求 Azure Stack Hub 操作员将特定映像版本从 Azure 市场下载到 Azure Stack Hub 市场中。

如果映像在 Azure Stack Hub 市场中不提供,则会触发错误。 例如,如果当前使用的是 AKS 引擎版本 v0.55.0 和 AKS Base Ubuntu,并且 Windows 映像发行版版本 2020.08.24 不可用,则运行 AKS 引擎时,会看到以下错误:

The platform image 'microsoft-aks:aks:aks-ubuntu-1604-202003:2020.08.24' is not available. 
Verify that all fields in the storage profile are correct.

可以通过运行以下命令来检查 AKS 引擎的当前版本:

注释

对于 AKSe 0.75.3 及更高版本,用于检查当前版本的 AKS 引擎的命令是 aks-engine-azurestack version

$ aks-engine version
Version: v0.55.0
GitCommit: 44a35c00c
GitTreeState: clean

后续步骤