本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。

AKS 集群配置参考

基于角色的访问控制

在 Rancher UI 中配置 AKS 集群时,无法禁用基于角色的访问控制。如果在 AKS 中禁用了集群的基于角色的访问控制,则无法将该集群注册或导入到 Rancher。实际上,这意味着必须启用本地帐户才能注册 AKS 集群。

Rancher 可以以与其他集群相同的方式为 AKS 集群配置成员角色。有关更多信息,请参见 基于角色的访问控制。

云凭据

本节中的配置信息假设您已经为 Rancher 设置了服务主体。有关如何设置服务主体的逐步说明,请参见 本节

订阅 ID

要获取订阅 ID,请单击左侧导航栏中的 所有服务。然后单击 订阅。转到您想要与 Kubernetes 集群关联的订阅名称,并复制 订阅 ID

客户机 ID

要获取客户端 ID,请访问 Azure 门户,然后单击 Azure Active Directory,接着单击 应用注册,然后单击服务主体的名称。客户端 ID 在应用注册详细信息页面上列为 应用程序(客户端)ID

客户端密钥

创建后无法检索客户端密钥值,因此如果您还没有客户端密钥值,则需要创建一个新的客户端密钥。

要获取新的客户端密钥,请访问 Azure 门户,然后单击 Azure Active Directory,接着单击 应用注册,然后单击服务主体的名称。

然后单击 证书和密钥,再单击 新客户端密钥。单击*添加*。然后复制新客户端密钥的

环境

微软提供多个 以遵守地区法律,供您使用:

  • AzurePublicCloud

  • AzureGermanCloud

  • AzureChinaCloud

  • AzureUSGovernmentCloud

账户访问

在本节中,您需要选择现有的 Azure 云凭据或创建新的凭据。

有关配置 Azure 云凭据的帮助,请参见 本节

集群位置

配置集群和节点位置。有关 AKS 可用性区域的更多信息,请参见 AKS 文档。

高可用性位置包括多个可用性区域。

群集选项

Kubernetes 版本

可用的 Kubernetes 版本是从 Azure API 动态获取的。

集群资源组

资源组是一个容器,用于保存 Azure 解决方案的相关资源。资源组可以包含解决方案的所有资源,或者仅包含您希望作为一个组进行管理的资源。您可以根据对您组织最有意义的方式来决定如何将资源分配给资源组。通常,将共享相同生命周期的资源添加到同一资源组,以便您可以轻松地作为一个组进行部署、更新和删除。

使用现有资源组或输入资源组名称,将为您创建一个资源组。

使用包含现有 AKS 集群的资源组将创建一个新的资源组。Azure AKS 每个资源组仅允许一个 AKS 集群。

有关管理资源组的信息,请参见 Azure 文档。

Linux 管理用户名

用于创建与 Linux 节点的 SSH 连接的用户名。

AKS 节点的默认用户名是 azureuser

SSH 公共密钥

用于创建与 Linux 节点的 SSH 连接的密钥。

标签

如果您的组织使用标签作为跨多个 Azure 服务组织资源的一种方式,则集群标签可能会很有用。这些标签不适用于集群内的资源。

网络选项

负载均衡器 SKU

Azure 负载均衡器支持标准和基础 SKU(库存单位)。

有关标准和基础负载均衡器的比较,请参阅官方 Azure 文档。 微软建议使用标准负载均衡器。

如果您选择了一个或多个可用性区域,或者如果您有多个节点池,则需要使用标准负载均衡器。

网络策略

默认情况下,AKS 集群中的所有 Pod 可以无限制地发送和接收流量。为了提高安全性,您可以定义控制流量流动的规则。Kubernetes 中的网络策略功能允许您定义集群中 Pod 之间的入站和出站流量规则。

Azure 提供两种实现网络策略的方法。在创建 AKS 集群时,您可以选择网络策略选项。集群创建后,策略选项无法更改:

  • Azure 自己的实现,称为 Azure 网络策略。Azure 网络策略需要 Azure CNI。

  • Calico 网络策略,这是一个由 Tigera 创立的开源网络和网络安全解决方案。

您也可以选择不使用网络策略。

有关 Azure 和 Calico 网络策略及其功能之间差异的更多信息,请参阅 AKS 文档。

DNS 前缀

输入一个唯一的 DNS 前缀,用于您集群的 Kubernetes API 服务器 FQDN。

网络插件

有两个网络插件:kubenet 和 Azure CNI。

kubenet Kubernetes 插件是 AKS 集群创建的默认配置。使用 kubenet 时,集群中的每个节点都会获得一个可路由的 IP 地址。这些 Pod 使用 NAT 与 AKS 集群外部的其他资源进行通信。这种方法减少了您需要在网络空间中为 Pod 使用而保留的 IP 地址数量。

使用 Azure CNI(高级)网络插件,Pod 可以获得完整的虚拟网络连接,并可以通过其私有 IP 地址直接从连接的网络访问。此插件需要更多的 IP 地址空间。

有关 kubenet 和 Azure CNI 之间差异的更多信息,请参见 AKS 文档。

HTTP 应用程序路由

启用后,HTTP 应用程序路由附加产品使访问部署到 AKS 集群的应用程序变得更容易。它部署了两个组件:一个 Kubernetes Ingress 控制器 和一个 External-DNS 控制器。

有关更多信息,请参见 AKS 文档。

设置授权 IP 范围

您可以使用 授权 IP 地址范围。 来保护对 Kubernetes API 服务器的访问。

Kubernetes API 服务器公开 Kubernetes API。此组件为管理工具(如 kubectl)提供交互。AKS 提供单租户集群控制平面,配有专用的 API 服务器。默认情况下,API 服务器被分配一个公共 IP 地址,您应该使用基于 Kubernetes 或 Azure 的 RBAC 来控制对其的访问。

为了保护对本来可以公开访问的 AKS 控制平面和 API 服务器的访问,您可以启用并使用授权 IP 范围。这些授权 IP 范围仅允许定义的 IP 地址范围与 API 服务器进行通信。

然而,即使您使用授权的 IP 地址范围,您仍然应该使用 Kubernetes RBAC 或 Azure RBAC 来授权用户及其请求的操作。

容器监控

容器监控通过从控制器、节点和容器收集内存和处理器指标,为您提供性能可见性,这些指标可以通过 Metrics API 在 Kubernetes 中获取。容器日志也会被收集。启用监控后,指标和日志会通过 Linux 的 Log Analytics 代理的容器化版本自动为您收集。指标被写入指标存储,日志数据被写入与您的 Log Analytics 工作区相关联的日志存储。

Log Analytics 工作区资源组

包含 Log Analytics 工作区的 资源组。您必须创建至少一个工作区才能使用 Azure Monitor Logs。

Log Analytics 工作区名称

Azure Monitor Logs 收集的数据存储在一个或多个 Log Analytics 工作区。工作区定义了数据的地理位置、访问权限、以及配置设置,例如定价层和数据保留。

您必须创建至少一个工作区才能使用 Azure Monitor Logs。单个工作区可能足以满足您所有的监控数据,或者根据您的需求选择创建多个工作区。例如,您可能有一个工作区用于生产数据,另一个用于测试。

有关 Azure Monitor Logs 的更多信息,请参见 Azure 文档。

支持私有 Kubernetes 服务

通常,AKS 工作节点不会获得公共 IP,无论集群是否为私有。在私有集群中,控制平面没有公共端点。

Rancher 可以通过两种方式连接到私有 AKS 集群。

第一种方式是确保 Rancher 运行在与 AKS 节点相同的 NAT 上。

第二种方式是运行命令将集群注册到 Rancher。一旦集群被配置,您可以在任何可以连接到集群的 Kubernetes API 的地方运行显示的命令。当您启用私有 API 端点配置 AKS 集群时,此命令会在弹出窗口中显示。

请注意,当注册现有的 AKS 集群时,集群可能需要一些时间(可能是几个小时)才能出现在 Cluster To register 下拉列表中。此结果将基于区域。

有关连接到 AKS 私有集群的更多信息,请参见 AKS 文档。

节点池

模式

Azure 界面允许用户指定主节点池是否依赖于 system(通常用于控制平面)或 user(通常是 Rancher 所需的)。

对于主节点池,您可以指定模式、操作系统、数量和大小。

系统节点池始终需要运行节点,因此它们不能缩放到低于一个节点。至少需要一个系统节点池。

对于后续的节点池,Rancher UI 强制默认设置为用户。用户节点池允许您扩展到零个节点。用户节点池不运行 Kubernetes 控制平面的任何部分。

AKS 不会暴露运行 Kubernetes 控制平面组件的节点。

可用性区域

可用性区域是区域内独特的物理位置。每个区域由一个或多个数据中心组成,这些数据中心配备独立的电源、冷却和网络。

并非所有区域都支持可用性区域。有关支持可用性区域的 Azure 区域列表,请参见 Azure 文档。

虚拟机大小

为节点池中的每个虚拟机选择一个大小。有关每个虚拟机大小的详细信息,请参见 此页面。

操作系统磁盘类型

节点池中的节点可以具有托管磁盘或临时磁盘。

临时操作系统磁盘是在本地虚拟机存储上创建的,不会保存到远程 Azure 存储。临时操作系统磁盘适用于无状态工作负载,其中应用程序能够容忍单个虚拟机故障,但更受虚拟机部署时间或重新映像单个虚拟机实例的影响。使用临时操作系统磁盘,您可以获得更低的读/写延迟和更快的虚拟机重新映像。

Azure 托管磁盘是由 Azure 管理的块级存储卷,用于 Azure 虚拟机。托管磁盘设计为 99.999% 的可用性。托管磁盘通过为您提供数据的三个副本来实现这一点,从而确保高耐久性。

操作系统磁盘大小

每个节点的磁盘大小(以GB为单位)。

节点数量

节点池中的节点数量。最大节点数量可能受限于您的 Azure 订阅。

每个节点的最大Pod数量

每个节点的最大Pod数量默认为110,最大为250。

启用自动扩展

启用自动扩展时,您需要输入最小和最大节点数量。

启用自动扩展时,您无法手动扩展节点池。扩展由 AKS 自动扩展器控制。