你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure Kubernetes 服务的 Windows 容器注意事项

在 Azure Kubernetes 服务 (AKS) 上创建使用 Windows Server 容器的部署时,应记住与 Linux 部署相关的一些差异。 有关上游 Kubernetes 中 Windows 与 Linux 之间的差异的详细比较,请参阅Kubernetes 中的 Windows 容器

它们的主要区别包括:

  • 标识:Windows Server 使用更大的二进制安全标识符 (SID),该标识符存储在 Windows Security Access Manager (SAM) 数据库中。 此数据库不在主机与容器之间或容器之间共享。
  • 文件权限:Windows Server 使用基于 SID 的访问控制列表,而不是权限和 UID + GID 的位掩码。
  • 文件路径:Windows Server 上的约定是使用 \,而不是 /。 在装载卷的 Pod 规范中,为 Windows Server 容器正确指定路径。 例如,不要在 Linux 容器中指定装入点 /mnt/volume,而是将要装载的驱动器号和位置(例如 /K/Volume)指定为 K: 驱动器。

注意

对于 Kubernetes 版本 1.25 及更高版本,Windows Server 2022 是默认 OS。 在 Kubernetes 版本 1.32 达到生命周期 (EOL) 后,Windows Server 2019 即将停用,并且在未来版本中将不再受支持。 有关详细信息,请参阅AKS 发行说明

本文介绍了在 Kubernetes 中使用 Windows 容器(而不是 Linux 容器)时要记住的重要注意事项。 有关 Windows 和 Linux 容器的深入比较,请参阅与 Linux 的比较

注意事项

功能 Windows 注意事项
群集创建 • 第一个系统节点池必须是 Linux。
• 每个群集的最大节点数为 5000。
• Windows Server 节点池名称具有 6 个字符的限制。
特权容器 不支持。 等效项是HostProcess 容器 (HPC) 容器
HPC 容器 • HostProcess 容器是 Linux 特权容器的 Windows 替代项。 有关详细信息,请参阅创建 Windows HostProcess Pod
Azure 网络策略管理器 (Azure) Azure 网络策略管理器不支持:
• 命名端口
• SCTP 协议
• 否定匹配标签或命名空间选择器(除“debug=true”之外的所有标签)
• “except”CIDR 块(具有异常的 CIDR)
• Windows Server 2019
节点升级 AKS 上的 Windows Server 节点不会自动应用 Windows 更新。 相反,你需执行节点池升级或节点映像升级。 这些升级使用最新的 Window Server 2019 和 Windows Server 2022 基本节点映像和安全修补程序部署新节点。
AKS 映像清理器 不支持。
BYOCNI 不支持。
Open Service Mesh 不支持。
GPU 预览版中受支持。
多实例 GPU 不支持。
第 2 代 VM(预览版)
自定义节点配置 • 自定义节点配置有两种配置:
kubelet:受支持。
• OS 配置:不受支持。

后续步骤

有关 Windows 容器的详细信息,请参阅Windows Server 容器常见问题解答