支持的 Kubernetes 集群版本

每个 GKE on Azure 版本都附带 Kubernetes 版本说明。它们与发行版本说明 (release notes) 类似,但特定于 Kubernetes 版本,并且可能会提供更多技术细节。

GKE on Azure 支持以下 Kubernetes 版本:

Kubernetes 1.28

1.28.7-gke.1700

Kubernetes OSS 版本说明

1.28.5-gke.1200

Kubernetes OSS 版本说明

1.28.5-gke.100

Kubernetes OSS 版本说明

1.28.3-gke.700

Kubernetes OSS 版本说明

  • 重大变更:从 1.28 版开始,集群需要与 {GCP_LOCATION}-gkemulticloud.googleapis.com 的出站 HTTPS 连接。确保您的代理服务器和/或防火墙允许此流量。

  • 功能:无需为大多数功能明确添加 Google IAM 绑定。

    1. 创建集群时,不再需要为 gke-system/gke-telemetry-agent 添加任何绑定。
    2. 为 Google Managed Service for Prometheus 启用代管式数据收集时,不再需要为 gmp-system/collectorgmp-system/rule-evaluator 添加任何绑定。
  • 功能:Ubuntu 22.04 现在使用 linux-azure 6.2 内核版本。

  • bug 修复:现在,gke-azure-encryption-provider 控制平面 Pod 的监控指标会在 kube-system 命名空间中报告。之前,系统会错误地报告默认命名空间。

  • bug 修复:将集群升级到 1.28 版将清理可能在旧版本(最高版本 1.25)中创建但不再相关的过时资源。命名空间 gke-system 中的以下资源(如果存在)会被删除:

    • 守护进程集 fluentbit-gke-windowsgke-metrics-agent-windows
    • ConfigMap fluentbit-gke-windows-configgke-metrics-agent-windows-conf
  • bug 修复:增强了 Cloud Logging 从 Anthos 集群 on Azure 提取日志的功能:

    • 修复了时间戳解析中的问题。
    • anthos-metadata-agent 的错误日志分配了正确的严重级别。
  • 安全修复程序

Kubernetes 1.27

1.27.11-gke.1600

Kubernetes OSS 版本说明

1.27.10-gke.500

Kubernetes OSS 版本说明

1.27.9-gke.100

Kubernetes OSS 版本说明

1.27.7-gke.600

Kubernetes OSS 版本说明

  • bug 修复:增强了 Cloud Logging 从 Anthos 集群 on Azure 提取日志的功能:

    • 修复了时间戳解析中的问题。
    • anthos-metadata-agent 的错误日志分配了正确的严重级别。
  • 安全修复程序

1.27.6-gke.700

Kubernetes OSS 版本说明

1.27.5-gke.200

Kubernetes OSS 版本说明

1.27.4-gke.1600

Kubernetes OSS 版本说明

  • 弃用:停用了未经身份验证的 kubelet 只读端口 10255。节点池升级到 1.27 版后,在其上运行的工作负载将无法再连接到端口 10255。

  • 功能:将 Azuredisk CSI 驱动程序升级到 v1.28.1。

  • 功能:将 Azurefile CSI 驱动程序升级到了 v1.28.1。

  • 功能:将 snapshot-controllercsi-snapshot-validation-webhook 升级到了 v6.2.2。此新版本引入了对 API 的重要更改。 具体而言,VolumeSnapshotVolumeSnapshotContentsVolumeSnapshotClass v1beta1 API 不再可用。

  • 功能:在创建和更新 API 中添加了对新的 admin-groups 标志的支持。通过此标志,客户能够以集群管理员身份快速轻松地对列出的群组进行身份验证,无需手动创建和应用 RBAC 政策。

  • 功能:为 fluent-bit(日志处理器和转发器)、gke-metrics-agent(指标收集器)和 audit-proxy(审核日志代理)启用了 gzip 压缩。fluent-bit 会在将控制平面和工作负载的日志数据发送到 Cloud Logging 之前进行压缩,gke-metrics-agent 会先压缩来自控制平面和工作负载的指标数据,然后再将其发送到 Cloud Monitoring,而 audit-proxy 会在将审核日志数据发送到 Audit Logging 之前进行压缩。这样可以减少网络带宽和费用。

  • 功能:节点自动修复功能现已正式发布。

  • 功能:为从 Cloud Storage 下载的由 Google 管理的二进制工件添加文件完整性检查和指纹验证,从而提高了安全性。

  • 功能:添加了对在控制平面上对 etcdetcd-events 自动定期进行碎片整理的支持。此功能可减少不必要的磁盘存储空间,并有助于防止 etcd 和控制平面因磁盘存储问题而不可用。

  • 功能:更改了 Kubernetes 资源指标的指标名称,以使用指标前缀 kubernetes.io/anthos/ 而不是 kubernetes.io/。如需了解详情,请参阅指标参考文档。

  • 功能:将新集群上的默认 etcd 版本更改为 v3.4.21,以提高稳定性。升级到此版本的现有集群将使用 etcd v3.5.6。

  • 功能:通过为 kubelet 预留资源,改进了节点资源管理。虽然此功能通过确保系统和 Kubernetes 进程具有所需资源来防止内存不足 (OOM) 错误至关重要,但可能会导致工作负载中断。预留 kubelet 的资源可能会影响 Pod 的可用资源,从而可能影响较小的节点处理现有工作负载的容量。客户应验证较小的节点是否仍可通过激活此新功能来支持其工作负载。

    • 预留内存百分比如下:
    • 内存不足 1 GB 的机器为 255 MiB
    • 前 4 GB 内存的 25%
    • 接下来 4 GB 的 20%
    • 接下来 8 GB 的 10%
    • 接下来 112 GB 的 6%
    • 128 GB 以上任何内存的 2%
    • 预留的 CPU 百分比如下:
    • 第一个核心的 6%
    • 下一个核心的 1%
    • 接下来 2 个核心的 0.5%
    • 4 个以上任何核心数量的 0.25%
  • 安全修复程序

Kubernetes 1.26

1.26.14-gke.1500

Kubernetes OSS 版本说明

1.26.13-gke.400

Kubernetes OSS 版本说明

1.26.12-gke.100

Kubernetes OSS 版本说明

1.26.10-gke.600

Kubernetes OSS 版本说明

  • bug 修复:增强了 Cloud Logging 从 Anthos 集群 on Azure 提取日志的功能:

    • 修复了时间戳解析中的问题。
    • anthos-metadata-agent 的错误日志分配了正确的严重级别。
  • 安全修复程序

1.26.9-gke.700

Kubernetes OSS 版本说明

1.26.8-gke.200

Kubernetes OSS 版本说明

1.26.7-gke.500

Kubernetes OSS 版本说明

1.26.5-gke.1400

Kubernetes OSS 版本说明

1.26.5-gke.1200

Kubernetes OSS 版本说明

1.26.4-gke.2200

Kubernetes OSS 版本说明

  • bug 修复

    • 修复了以下问题:Kubernetes 错误地将默认 StorageClass 应用于具有已弃用注解 volume.beta.kubernetes.io/storage-class 的 PersistentVolumeClaim。
    • 修复了日志记录代理消耗的内存量越来越多的问题。
  • 安全修复程序

    • 修复了 CVE-2023-1872
    • 修复了影响负责监控网络连接的 netfilter 连接跟踪 (conntrack) 的问题。此修复可确保将新连接正确插入 conntrack 表,并克服了因 Linux 内核版本 5.15 及更高版本所做的更改而导致的限制。

1.26.2-gke.1001

Kubernetes OSS 版本说明

  • 已知问题:Kubernetes 1.26.2 会将默认 StorageClass 错误地应用于具有已弃用注解 volume.beta.kubernetes.io/storage-class 的 PersistentVolumeClaim。
  • 功能:将操作系统映像更新为 Ubuntu 22.04。cgroupv2 现在用作默认的对照组配置。

    • Ubuntu 22.04 默认使用 cgroupv2。我们建议您检查是否有任何应用访问 cgroup 文件系统。如果有,则必须更新这些应用以使用 cgroupv2。下面列举了一些可能需要更新以确保与 cgroupv2 兼容的示例应用:
    • 依赖于 cgroup 文件系统的第三方监控和安全代理。
    • 如果将 cAdvisor 用作独立的 DaemonSet 来监控 Pod 和容器,则应将其更新到 v0.43.0 或更高版本。
    • 如果您使用 JDK,我们建议您使用 11.0.16 版及更高版本或 15 版及更高版本。这些版本完全支持 cgroupv2
    • 如果您使用 uber-go/automaxprocs 包,请确保使用 v1.5.1 或更高版本。
    • 如需了解详情,请参阅 Ubuntu 版本说明
  • 功能:将控制平面组件的指标发送到 Cloud Monitoring。这包括来自 kube-apiserver、etcd、kube-scheduler、kube-controller-manager 的 Prometheus 指标的子集。指标名称使用前缀 kubernetes.io/anthos/

  • 功能:支持将 Kubernetes 资源元数据发送到 Google Cloud Platform,从而改进界面和集群指标。为了正确提取元数据,客户需要启用 Config Monitoring for Ops API。您可以通过 Google Cloud 控制台启用此 API,也可以通过在 gcloud CLI 中手动启用 opsconfigmonitoring.googleapis.com API 来启用。此外,客户必须按照为 Cloud Logging/Monitoring 授权文档中所述的步骤添加必要的 IAM 绑定。如果适用,请将 opsconfigmonitoring.googleapis.com 添加到您的代理许可名单

  • 功能:启用了 kubelet 安全节点关闭功能。非系统 Pod 有 15 秒的时间来终止,之后系统 Pod(具有 system-cluster-criticalsystem-node-critical 优先级类)将有 15 秒的时间正常终止。

  • 功能:在预览模式下启用了节点自动修复功能。请与您的客户支持团队联系,以申请预览。

  • bug 修复:新创建的集群现在使用 etcd v3.4.21,以提高稳定性。现有的旧版集群已在使用 etcd v3.5.x,在集群升级期间不会降级到 v3.4.21;这些集群将使用 v3.5.6。

  • 安全修复程序

版本支持窗口

GKE on Azure 版本生命周期页面上列出了受支持的 Kubernetes 版本的发布日期和支持结束日期。