你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
什么是 Azure Kubernetes 服务?
Azure Kubernetes 服务 (AKS) 通过将操作开销卸载到 Azure,简化了在 Azure 中部署托管 Kubernetes 群集的过程。 作为一个托管的 Kubernetes 服务,Azure 可以自动处理运行状况监视和维护等关键任务。 创建 AKS 群集时,系统会自动创建和配置控制平面。 此控制平面作为提取自用户的 Azure 托管资源免费提供。 你只为附加到 AKS 群集的节点付费并对其进行管理。
可使用以下方式创建 AKS 群集:
- Azure CLI
- Azure PowerShell
- Azure 门户
- 模板驱动型部署选项,例如 Azure 资源管理器模板、Bicep 和 Terraform。
部署 AKS 群集时,你需要指定节点的数量和大小,而 AKS 则部署并配置 Kubernetes 控制平面和节点。 在部署过程中,可以配置高级网络、Azure Active Directory (Azure AD) 集成、监视和其他功能。
有关 Kubernetes 基础知识的详细信息,请参阅 AKS 的 Kubernetes 核心概念。
注意
此服务支持 Azure Lighthouse;通过它,服务提供商可登录自己的租户来管理客户委托的订阅和资源组。
AKS 还支持 Windows Server 容器。
访问权限、安全性和监视
要改善安全性和管理,可以集成 Azure AD 来实现以下目的:
- 使用 Kubernetes 基于角色的访问控制 (Kubernetes RBAC)。
- 监视群集和资源的运行状况。
标识和安全管理
Kubernetes RBAC
为了限制对群集资源的访问,AKS 支持 Kubernetes RBAC。 Kubernetes RBAC 控制对 Kubernetes 资源与命名空间的访问和权限。
Azure AD
可将 AKS 群集配置为与 Azure AD 集成。 使用 Azure AD 集成可以基于现有的标识和组成员身份设置 Kubernetes 访问权限。 可以为现有的 Azure AD 用户和组提供集成式登录体验,以及对 AKS 资源的访问权限。
有关标识的详细信息,请参阅 AKS 的访问权限和标识选项。
若要确保 AKS 群集的安全性,请参阅将 Azure AD 与 AKS 集成。
集成式日志记录和监视
负责监视容器运行状况的 Azure Monitor 会从 AKS 群集和部署的应用程序中的容器、节点和控制器收集内存和处理器性能指标。 可以查看容器日志和 Kubernetes 日志,这些日志:
- 存储在 Azure Log Analytics 工作区中。
- 可通过 Azure 门户、Azure CLI 或 REST 终结点获取。
有关详细信息,请参阅监视 AKS 容器运行状况。
群集和节点
AKS 节点在 Azure 虚拟机 (VM) 上运行。 通过 AKS 节点,可以将存储连接到节点和 Pod、升级群集组件以及使用 GPU。 AKS 支持运行多个节点池的 Kubernetes 群集,以支持混合操作系统和 Windows Server 容器。
有关 Kubernetes 群集、节点和节点池功能的详细信息,请参阅 AKS 的 Kubernetes 核心概念。
群集节点和 Pod 缩放
如果对资源的需求发生变化,用于运行服务的群集节点或 Pod 的数目会自动增多或减少。 可以调整横向 Pod 自动缩放程序或群集自动缩放程序以根据需求做出调整,并只运行必要的资源。
有关详细信息,请参阅缩放 AKS 群集。
群集节点升级
AKS 提供多个 Kubernetes 版本。 有新的版本可在 AKS 中使用后,可以使用 Azure 门户、Azure CLI 或 Azure PowerShell 升级群集。 在升级过程中,节点会被仔细封锁和排除以尽量减少对正在运行的应用程序造成中断。
若要详细了解生命周期版本,请参阅 AKS 中支持的 Kubernetes 版本。 有关升级步骤,请参阅升级 AKS 群集。
启用了 GPU 的节点
AKS 支持创建启用了 GPU 的节点池。 Azure 目前提供单个或多个启用了 GPU 的 VM。 启用了 GPU 的 VM 是针对计算密集型、图形密集型和可视化工作负荷设计的。
有关详细信息,请参阅使用 AKS 上的 GPU。
机密计算节点(公共预览版)
AKS 支持创建基于 Intel SGX 的机密计算节点池 (DCSv2 VM)。 机密计算节点允许容器在基于硬件的受信任执行环境 (enclave) 中运行。 通过证明合并代码完整性的容器之间的隔离可提供深层防御容器安全策略方面的帮助。 机密计算节点支持机密容器(现有 docker 应用)和 enclave 感知容器。
有关详细信息,请参阅 AKS 上的机密计算节点。
Mariner 节点
Mariner 是由 Microsoft 创建的开源 Linux 分发版,目前在 Azure Kubernetes 服务 (AKS) 上作为容器主机提供预览版。 在不同的 AKS、AKS-HCI 和 Arc 产品中,Mariner 容器主机提供从云到边缘的可靠性和一致性。 可以在新群集中部署 Mariner 节点池,将 Mariner 节点池添加到现有 Ubuntu 群集,或将 Ubuntu 节点迁移到 Mariner 节点。
有关详细信息,请参阅使用 AKS 上的 Mariner 容器主机
存储卷支持
若要支持应用程序工作负载,可以装载静态或动态存储卷来保存持久性数据。 根据预期要共享存储卷的已连接 Pod 数目,可以:
- 使用 Azure 磁盘支持的存储访问单个 Pod
- 使用 Azure 文件存储支持的存储并发访问多个 Pod。
有关详细信息,请参阅 AKS 中应用程序的存储选项。
虚拟网络和入口
AKS 群集可以部署到现有的虚拟网络中。 在此配置中,群集中的每个 pod 在虚拟网络中分配有一个 IP 地址,可以直接与群集中的其他 pod 以及虚拟网络中的其他节点通信。
Pod 还可以通过 ExpressRoute 或站点到站点 (S2S) VPN 连接来连接到对等互连虚拟网络和本地网络中的其他服务。
有关详细信息,请参阅 AKS 中应用程序的网络概念。
使用 HTTP 应用程序路由的入口
HTTP 应用程序路由加载项可帮助你轻松访问部署到 AKS 群集的应用程序。 启用后,HTTP 应用程序路由解决方案可以在 AKS 群集中配置入口控制器。
部署应用程序后,会自动配置可以公开访问的 DNS 名称。 HTTP 应用程序路由会设置一个 DNS 区域并将其与 AKS 群集集成。 然后,你可以照常部署 Kubernetes 入口资源。
有关入口流量的入门,请参阅 HTTP 应用程序路由。
开发工具集成
Kubernetes 提供丰富的开发和管理工具生态系统,可与 AKS 无缝配合使用。 这些工具包括 Helm 和用于 Visual Studio Code 的 Kubernetes 扩展。
Azure 提供多种工具来帮助简化 Kubernetes。
Docker 映像支持和专用容器注册表
AKS 支持 Docker 映像格式。 若要对 Docker 映像进行专用存储,可以将 AKS 与 Azure 容器注册表 (ACR) 集成。
要创建专用映像存储,请参阅 Azure 容器注册表。
Kubernetes 认证
AKS 已被 CNCF 认证为符合 Kubernetes 规范。
法规符合性
AKS 符合 SOC、ISO、PCI DSS 和 HIPAA 规范。 有关详细信息,请参阅 Microsoft Azure 合规性概述。
后续步骤
详细了解如何部署和管理 AKS。