Azure Stack Hub 上的 Azure Kubernetes 服务概述(面向用户)

重要

Azure Stack Hub 上的 Azure Kubernetes 服务(以前是预览版功能)已停用,不再受支持。 请参阅 Azure Stack Hub 上的 Kubernetes 解决方案的 AKS 引擎 文档。

使用 Azure Kubernetes 服务(AKS),可以轻松地在 Azure 和 Azure Stack Hub 中部署 Kubernetes 群集。 AKS 降低了管理 Kubernetes 群集的复杂性和操作开销。

作为托管 Kubernetes 服务,Azure Stack Hub 负责处理运行状况监视等关键任务,并便于维护。 Azure Stack Hub 团队管理用于运维群集的镜像。 群集管理员只需根据需要应用更新。 服务无需额外付费。 AKS 是免费的;只需付费即可在群集中使用 VM(主节点和代理节点)。 使用起来比 AKS 引擎 更简单,因为它删除了 AKS 引擎所需的一些手动任务。

Azure Stack Hub 上的 AKS

你可以使用相同的 Azure CLI、Azure Stack Hub 用户门户、Azure 资源管理器模板和 REST API,以在 Azure 云上的相同方式管理 Azure Stack Hub 上的 AKS 群集。 当你部署 AKS 群集时,系统会为你部署和配置 Kubernetes 主节点和所有节点。

有关 Kubernetes 概念的详细信息,请查看 Kubernetes 文档。 有关全局 Azure 上 AKS 服务的完整文档,请参阅 Azure Kubernetes 服务中的文档。

用户角色和职责

Azure Stack Hub 是一个本地系统,客户可以在数据中心内使用它来运行其云原生工作负载。 这些系统支持两种用户类型:云操作员用户

下列任务属于 Azure Stack Hub 操作员:

  1. 确保 Azure Stack Hub 实例中提供了 Azure Kubernetes 服务基础映像。 如有必要,请从 Azure 下载它们。
  2. 确保为客户计划和用户订阅提供 Azure Kubernetes 服务,就像提供 Azure Stack Hub 中的任何其他服务一样。
  3. 监视 Azure Kubernetes 服务并就任何警报和相关补救措施采取行动。
  4. 有关操作员任务的详细信息,请参阅在 Azure Stack Hub 上安装和提供 Azure Kubernetes 服务

以下任务对应于用户;即租户 AKS 群集管理员:

  1. 监视 Kubernetes 群集代理的运行状况并就任何事件和相关补救措施采取行动。 即使代理是在租户订阅中创建的,服务也会监视其状态,并根据需要执行修正步骤。 但是,在某些情况下,可能需要租户群集管理员将群集恢复到正常状态。
  2. 使用 Azure Kubernetes 服务设施管理群集的生命周期,以便创建、升级和缩放作。
  3. 维护操作:部署应用程序、备份和还原、故障排除、收集日志和监视应用。
  4. 有关租户任务的详细信息,请参阅通过 CLI 使用 Azure Stack Hub 上的 Azure Kubernetes 服务

功能对比

下表提供了全球 Azure 中的 AKS 功能与 Azure Stack Hub 中的功能的比较概述。

面积 功能 / 特点 Azure AKS Azure Stack Hub AKS
访问安全性
Kubernetes RBAC 是的 是的
安全中心集成 是的 是的
Microsoft Entra 身份验证/RBAC 是的
Calico 网络策略 是的
监视和日志记录
集成的 Azure 监视(见解、日志、指标、警报) 是的
监控和修复主节点 是的 是的
群集指标 是的 是的
顾问建议 是的
诊断设置 是的 是的
Kubernetes 控制平面日志 是的 是的
工作簿 是的
群集和节点
自动节点缩放(自动缩放程序) 是的
定向节点缩放 是的 是的
自动 Pod 缩放 是的 是的
GPU 启用 Pod 是的
存储卷支持 是的 是的
多个节点池的管理 是的
Azure 容器实例集成和虚拟节点 是的
运行时间 SLA 是的
隐藏的主节点 是的
虚拟网络和入口
默认 VNET 是的 是的
自定义 VNET 是的 是的
HTTP 入口 是的
开发工具
Helm 是的 是的
Dev Studio 是的
DevOps Starter 是的
Docker 映像支持和专用容器注册表 是的 是的
认证
CNCF 认证 是的 是的
群集生命周期管理
AKS Ux 是的 是的
AKS CLI(Windows 和 Linux) 是的 是的
AKS API 是的 是的
AKS 模板 是的 是的
AKS PowerShell 是的

Azure 与 Azure Stack Hub 之间的差异

Azure 与 Azure Stack Hub 上的 AKS 共用同一个源存储库。 两者在概念上没有区别。 但是,在不同环境中操作会带来差异,使用 Azure Stack Hub 上的 AKS 时要注意。 大多数差异都与驻留在客户的数据中心内的系统相关,以及与 Azure Stack Hub 中尚不可用的功能相关。

客户数据中心已连接或已断开连接的 Azure Stack Hub

在这两种情况下,Azure Stack Hub 都由客户控制。 此外,客户可以在完全断开连接的气隙环境中部署 Azure Stack Hub。 可能需要考虑以下因素:

  • 运营商:
    • 确保 AKS 服务和相应的映像可供租户使用。
    • 解决支持事件时与租户和 Azure 支持部门积极合作(例如收集相关日志)。 有关更多详细信息,请参阅运营商文章。
  • 租户:
    • 与标记操作员协作,以请求标记中不可用的 AKS 基础映像或 AKS 服务。
    • 还可以在支持案例期间同时与操作员和 Azure 支持部门协作。 一个任务是使用 此处提供的信息收集 AKS 群集相关日志。

使用 CLI 或 PowerShell 连接到 Azure Stack Hub

使用 Azure CLI 连接到 Azure 时,CLI 默认情况下使用 Microsoft Entra ID 进行身份验证,并通过全局 Azure 资源管理器接口进行 API 调用。 还可以将 Azure CLI 与 Azure Stack Hub 配合使用。 但是,必须显式连接到 Azure Stack Hub Azure 资源管理器终结点,并使用 Microsoft Entra ID 或 Active Directory 联合服务(AD FS)进行身份验证。 其原因在于,Azure Stack Hub 设计为面向企业,而企业可能会在断开连接的情况下选择 AD FS。

  1. 有关如何使用 PowerShell Microsoft Entra ID 或 AD FS 标识连接到 Azure Stack Hub 的信息,请参阅以 用户身份使用 PowerShell 连接到 Azure Stack Hub
  2. 请参阅本文,了解如何 将 Azure CLI 与 Microsoft Entra ID 或 AD FS 标识配合使用。

支持的平台功能

Azure Stack Hub 支持公共 Azure 中提供的一部分功能。 请注意以下差异:

  • 没有标准负载均衡器。 Azure Stack Hub 仅支持基本负载均衡器。 此支持意味着 Azure Stack Hub 上的 AKS 尚不提供以下功能,具体取决于标准负载均衡器:
  • 无 Azure 区域或可用性区域。
  • 没有可用性组,只有虚拟机规模组。
  • 查看支持和不支持的命令的命令列表。

支持的服务

缺少某些 Azure 服务会限制 Azure Stack Hub 上的 AKS 中的某些功能选项:

  • 无文件服务。 在 Azure Stack Hub 上的 Kubernetes 中,不支持基于文件服务的卷。
  • 没有 Azure Log Analytics 和 Azure 容器监视器。 只要连接到 Internet,任何 Kubernetes 群集都可以连接到 Azure 容器监视器。 如果断开连接,Azure Stack Hub 内部本地没有等效的服务。 因此,Azure Stack Hub 上的 AKS 中没有对 Azure 容器监视器的集成支持。
  • 没有 Azure DevOps。 由于此服务不适用于断开连接的 Azure Stack Hub,因此没有集成的支持。

支持的 AKS API 和 Kubernetes 版本

通常,Azure Stack Hub 上的 AKS 在 Kubernetes 和 AKS API 支持的版本中落后于 Azure。 这种缺乏支持是由于客户难以将代码交付并在自己的数据中心运行。

在 Azure Stack Hub 上使用 AKS CLI 时要更改的默认 Azure AKS CLI 参数值

鉴于这两个平台之间的差异,命令和 API 中可用于 Azure AKS 的参数的一些默认值不适用于 Azure Stack Hub AKS。 例如:

通用参数 注释
--service-principal --client-secret Azure Stack Hub 尚不支持托管标识;始终需要服务主体凭据。
--location 位置值特定于客户选择的位置。

服务主体可由 Microsoft Entra ID 或 AD FS 提供

创建和管理 AKS 群集时需要提供服务主体 (SPN)。 由于 Azure Stack Hub 可在与 Internet 断开连接的模式下部署,因此必须有一个替代 Microsoft Entra ID 的标识管理器可用。 因此,使用 Active Directory 联合服务(AD FS)。 下面介绍了 Azure Stack Hub 租户如何创建 SPN:

后续步骤

了解如何使用 Azure Stack Hub 上的 AKS