什么是 Azure Kubernetes 服务 (AKS)?

Azure Kubernetes 服务 (AKS) 是一项托管 Kubernetes 服务,可以用于部署和管理容器化应用程序。 只需很少的容器业务流程专业知识即可使用 AKS。 AKS 通过将大量管理工作量卸载到 Azure,来降低管理 Kubernetes 所产生的复杂性和操作开销。 AKS 是一个理想的平台,用于部署和管理需要高可用性、可伸缩性和可移植性的容器化应用程序,以及使用开源工具将应用程序部署到多个区域,并与现有 DevOps 工具集成。

本文面向正在寻找可缩放的自动化托管 Kubernetes 解决方案的平台管理员或开发人员。

AKS 概述

AKS 通过将大量管理工作量移动到 Azure,来降低管理 Kubernetes 所产生的复杂性和操作开销。 创建 AKS 群集时,Azure 会自动为你创建并配置控制平面,无需任何费用。 Azure 平台管理 AKS 控制平面,该平面负责部署以运行应用程序的 Kubernetes 对象和工作器节点。 Azure 负责运行状况监视和维护等关键操作,只需为运行应用程序的 AKS 节点付费。

AKS 概述图形

注意

AKS 是 CNCF 认证的,并且符合 SOC、ISO、PCI DSS 和 HIPAA 规范。 有关详细信息,请参阅 Azure 合规性概述

Azure 中的容器解决方案

Azure 提供了一系列容器解决方案,旨在满足各种工作负载、体系结构和业务需求。

容器解决方案 资源类型
Azure Kubernetes 服务 托管 Kubernetes
已启用 Azure Arc 的 Kubernetes 非托管 Kubernetes
Azure 容器实例 托管 Docker 容器实例
Azure Container Apps 托管 Kubernetes

有关比较各种解决方案的详细信息,请参阅以下资源:

何时使用 AKS

以下列表描述了 AKS 的一些常见用例,但绝非详尽列表:

  • 使用 AKS 的微服务:通过简化的水平缩放、自我修复、负载均衡和机密管理,简化基于微服务的应用程序的部署和管理。
  • 保护 AKS 的 DevOps:使用 Kubernetes 实现安全 DevOps,从而有效平衡速度和安全性。
  • 使用 ACI 从 AKS 突发:使用虚拟节点在 ACI 内部配置 pod,可在数秒内启动并扩展以满足需求。
  • 使用 AKS 进行机器学习模型训练:使用大型数据集以及熟悉的工具(例如 TensorFlow 和 Kubeflow)训练模型。
  • 使用 AKS 的数据流:引入和处理通过传感器收集的数百万个数据点的实时数据流,并执行快速分析和计算,以开发对复杂方案的见解。

AKS 的功能

下表列出了 AKS 的一些主要功能:

Feature 说明
标识和安全管理 •使用具有内置防护栏和 Internet 安全基准,强制执行使用 Azure Policy 进行法规合规性控制
• 与 Kubernetes RBAC 集成,以限制对群集资源的访问。
• 使用 Microsoft Entra ID 以根据现有标识和组成员身份设置 Kubernetes 访问。
日志记录和监视 • 与容器见解(Azure Monitor 中的一项功能)集成,以监视群集和容器化应用程序的运行状况和性能。
• 设置网络可观测性以从群集收集和可视化网络流量数据。
简化的部署 • 为 Kubernetes 使用带有智能默认值的预构建集群配置。
• 使用 Kubernetes 事件驱动自动缩放程序 (KEDA)自动缩放应用程序。
•使用 AKS 的草稿准备源代码,并为应用程序做好生产准备。
群集和节点 • 将存储连接到节点和 Pod、升级群集配置以及使用 GPU。
• 创建运行多个节点池的 Kubernetes 群集,以支持混合操作系统和 Windows Server 容器。
• 使用群集自动缩放程序水平 Pod 自动缩放程序配置自动缩放。
存储卷支持 • 为永久性数据装载静态或动态存储卷。
• 使用 Azure 磁盘进行单一 Pod 访问,使用 Azure 文件存储进行多个并发 Pod 访问。
联网 • 根据需要利用 Kubenet 网络
自带容器网络接口 (CNI) 以使用第三方 CNI 插件。
• 使用应用程序路由附加产品和 nginx轻松访问部署到群集的应用程序。
开发工具集成 • 使用 Helm 在 AKS 上进行开发。
• 安装适用于 Visual Studio Code 的 Kubernetes 扩展来管理工作负载。
• 利用基于 Istio 的服务网格附加产品,充分利用 Istio 的功能。

AKS 入门

使用以下资源开始使用 AKS: