不支持的 Kubernetes 集群版本

以下版本的 GKE on AWS 不受支持。

Kubernetes 1.26

1.26.14-gke.1500

Kubernetes OSS 版本说明

  • 问题修复:修复了实例元数据服务 (IMDS) 模拟器有时无法绑定到节点上的 IP 地址的问题。IMDS 模拟器可让节点安全地访问 AWS EC2 实例元数据。

1.26.13-gke.400

Kubernetes OSS 版本说明

1.26.12-gke.100

Kubernetes OSS 版本说明

1.26.10-gke.600

Kubernetes OSS 版本说明

  • 功能:新增了对使用“G5”AWS EC2 实例创建节点池的支持。

  • 问题修复:将 Elastic File System (EFS) 的容器存储接口 (CSI) 驱动程序 aws-efs-csi-driver 升级到了 v1.3.8-gke.21 版。

  • 问题修复:增强了 Cloud Logging 从 Anthos Clusters on AWS 注入日志的功能:

    • 修复了时间戳解析问题。
    • 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 版本说明

  • 问题修复
    • 配置集群自动扩缩器以使用 --balance-like-node-groups 跨可用区域均衡节点数量。

1.26.4-gke.2200

Kubernetes OSS 版本说明 * 功能:Ubuntu 22.04 现在使用 linux-aws 5.19 内核。

  • 问题修复

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

    • 修复了影响负责监控网络连接的 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 22.04 移除了 timesyncd 包。Amazon Time Sync Service 现在使用 chrony
    • 如需了解详情,请参阅 Ubuntu 版本说明
  • 功能:将控制平面组件的指标发送到 Cloud Monitoring。这包括来自 kube-apiserver、etcd、kube-scheduler、kube-controller-manager 的 Prometheus 指标的子集。指标名称使用前缀 kubernetes.io/anthos/

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

  • 功能:添加了用于创建 AWS Spot 节点池的预览版功能。

  • 功能:使用基于 ARM (Graviton) 的实例类型创建节点池的功能现已正式发布。

  • 功能:现在支持 kubelet 节点安全关停。非系统 Pod 有 15 秒的时间进行终止,之后系统 Pod(具有 system-cluster-criticalsystem-node-critical 优先级类)有 15 秒的时间进行安全终止。

  • 功能:现在支持节点自动修复功能(预览版)。请与您的客户支持团队联系,以申请使用该预览版功能。

  • 功能:为动态创建的 EFS 接入点资源添加了标记。

  • 功能:集群现在有每个节点池特定的子网安全群组规则,而不是 VPC 级规则

    • 以前,控制平面允许 TCP/443 和 TCP/8123 端口(由节点池使用)上来自 VPC 的整个主要 IP 范围的入站流量。
    • 现在,控制平面将允许的入站流量缩小为端口 TCP/443 和 TCP/8123 上来自节点池子网的每个 IP 范围的入站流量;多个节点池可以共享一个子网。
    • 此更改支持在 VPC 的主要 IP 范围之外运行的节点池,并提高了控制平面的安全性。
    • 如果您依赖 VPC 级安全群组规则来允许来自集群外部的流量(例如,来自 kubectl 的堡垒主机),则在升级时,您应该创建一个安全群组,向其添加一个 VPC 级规则,并将安全群组关联到控制平面(通过 AwsCluster.controlPlane.securityGroupIds 字段)。
  • 问题修复:新创建的集群现在使用 etcd v3.4.21,以提高稳定性。现有的旧版集群已在使用 etcd v3.5.x,在集群升级期间不会降级到 v3.4.21;这些集群将使用 v3.5.6。

  • 安全修复:将 IMDS 模拟器响应的跃点限制设置为 1。这样可以保护模拟器与工作负载之间的 IMDS 数据通信安全。

Kubernetes 1.25

1.25.14-gke.700

Kubernetes OSS 版本说明

1.25.13-gke.200

Kubernetes OSS 版本说明

1.25.12-gke.500

Kubernetes OSS 版本说明。 * 功能:扩展了从节点池收集的指标列表,以包含 gke-metrics-agentcilium-agentcilium-operatorcorednsfluentbit-gkekubeletkonnectivity-agent

1.25.10-gke.1400

Kubernetes OSS 版本说明

1.25.10-gke.1200

Kubernetes OSS 版本说明

  • 问题修复
    • 配置集群自动扩缩器以使用 --balance-like-node-groups 跨可用区域均衡节点数量。
  • 安全修复程序
    • 将节点池指标代理和指标服务器迁移到经过身份验证的 kubelet 端口。

1.25.8-gke.500

Kubernetes OSS 版本说明

  • 问题修复

    • 修复了日志记录代理消耗的内存量越来越多的问题。
  • 安全修复程序

1.25.7-gke.1000

Kubernetes OSS 版本说明

  • 功能:为动态创建的 EFS 接入点资源添加了标记。

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

1.25.6-gke.1600

Kubernetes OSS 版本说明

1.25.5-gke.2000

Kubernetes OSS 版本说明。 * 功能:更新了 Anthos Identity Service,以更好地处理并发身份验证 webhook 请求。

  • 问题修复:修复了在集群创建/更新操作期间某些错误无法传播和报告的问题。
  • 问题修复:修复了 AWS EFS CSI 驱动程序的问题,即 AWS VPC 配置为使用自定义 DNS 服务器时,无法解析 EFS 主机名。
  • 问题修复:修复了由于无法模拟最终用户,通过 Anthos Service Mesh 信息中心进行的身份验证失败的问题。

  • 安全修复程序

1.25.5-gke.1500

Kubernetes OSS 版本说明

  • 已知问题:Google Cloud 控制台中的某些界面无法向集群授权,并可能会显示集群无法访问。解决方法是手动应用允许用户模拟的 RBAC。如需了解详情,请参阅问题排查

  • 安全修复程序

1.25.4-gke.1300

Kubernetes OSS 版本说明

  • 已知问题:Google Cloud 控制台中的某些界面无法向集群授权,并可能会显示集群无法访问。解决方法是手动应用允许用户模拟的 RBAC。如需了解详情,请参阅问题排查

  • 弃用:移除了已弃用的树内卷插件 flocker、quobyte 和 storageos

  • 功能:通过限制在集群的控制平面虚拟机上运行的静态 pod 以非根 Linux 用户身份运行,增强了安全性。

  • 功能:增加了对动态更新 AWS 节点池安全群组的支持。如需更新安全群组,您的 API 角色必须拥有以下权限:

    • ec2:ModifyInstanceAttribute
    • ec2:DescribeInstances
  • 功能:增加了对动态更新 AWS 节点池标记的支持。如需更新节点池标记,您的 API 角色必须拥有以下权限:

    • autoscaling:CreateOrUpdateTags
    • autoscaling:DeleteTags
    • ec2:CreateTags
    • ec2:DeleteTags
    • ec2:DescribeLaunchTemplates
  • 功能:EFS 动态预配功能现已正式发布,可在 1.25 版或更高版本的集群中使用。要使用此功能,您必须向控制平面角色添加以下权限:

    • ec2:DescribeAvailabilityZones
    • elasticfilesystem:DescribeAccessPoints
    • elasticfilesystem:DescribeFileSystems
    • elasticfilesystem:DescribeMountTargets
    • elasticfilesystem:CreateAccessPoint
    • elasticfilesystem:DeleteAccessPoint
  • 功能:使用 Google Managed Service for Prometheus 及代管式收集功能将工作负载指标上传到 Cloud Monarch 的功能现已正式发布。

  • 功能:增加了为 AWS 节点池的自动扩缩组启用和更新 CloudWatch 指标收集功能的支持。如需通过创建或更新 API 启用或更新指标收集功能,您必须向 API 角色添加以下权限:

    • autoscaling:EnableMetricsCollection
    • autoscaling:DisableMetricsCollection
  • 功能:Azure AD 正式版。此功能允许集群管理员基于 Azure AD 群组配置 RBAC 政策来在集群中进行授权。这支持检索属于超过 200 个群组的用户的群组信息,从而克服将 Azure AD 配置为身份提供方的常规 OIDC 的限制。

  • 功能:新增了令牌管理器 (gke-token-manager),可使用服务账号签名密钥为控制平面组件生成令牌。优点:

    1. 控制平面组件无需依赖 kube-apiserver 向 Google 服务验证身份。以前,控制平面组件使用 TokenRequest API,并依赖于健康状况良好的 kube-apiserver。现在,gke-token-manager 组件会直接使用服务账号签名密钥来创建令牌。
    2. 不再需要用于为控制平面组件生成令牌的 RBAC。
    3. 将日志记录和 kube-apiserver 分离。这样,在 kube-apiserver 启动之前便可注入日志记录。
    4. 提高控制平面的弹性。当 kube-apiserver 停止运行时,控制平面组件仍然可以获取令牌并继续正常运行。
  • 功能:(预览版功能)将各种指标从控制平面组件注入 Cloud Monitoring,包括 kube-apiserver、etcd、kube-scheduler 和 kube-controller-manager。

  • 功能:通过向 Google 群组授予必要的 RBAC 权限,群组中的用户可以使用 Connect Gateway 访问 AWS 集群。如需了解详情,请参阅使用 Google 群组设置 Connect Gateway

  • 问题修复:修复了可能导致在集群升级后不移除过时的 gke-connect-agent 版本的问题。

  • 安全修复程序

Kubernetes 1.24

1.24.14-gke.2700

Kubernetes OSS 版本说明

1.24.14-gke.1400

Kubernetes OSS 版本说明

  • 问题修复
    • 配置集群自动扩缩器以使用 --balance-like-node-groups 跨可用区域均衡节点数量。

1.24.13-gke.500

Kubernetes OSS 版本说明

  • 问题修复

    • 修复了日志记录代理消耗的内存量越来越多的问题。
  • 安全修复程序

1.24.11-gke.1000

Kubernetes OSS 版本说明

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

1.24.10-gke.1200

Kubernetes OSS 版本说明

  • 问题修复:修复了在某些类型的验证准入 webhook 已注册的情况下可能导致集群升级失败的问题。
  • 问题修复:修复了 Cilium 安全 ID 传播,以便在将请求转发到 NodePort 和 LoadBalancer 类型的 Service 时,在隧道标头中正确传递 ID。
  • 安全修复程序

1.24.9-gke.2000

Kubernetes OSS 版本说明

  • 功能:更新了 Anthos Identity Service,以更好地处理并发身份验证 webhook 请求。

  • 问题修复:修复了在集群创建/更新操作期间某些错误无法传播和报告的问题。

  • 安全修复程序

1.24.9-gke.1500

Kubernetes OSS 版本说明

1.24.8-gke.1300

Kubernetes OSS 版本说明

1.24.5-gke.200

Kubernetes OSS 版本说明

1.24.3-gke.2200

Kubernetes OSS 版本说明

  • 问题修复:修复了使用类型 LoadBalancer 和注解 service.beta.kubernetes.io/aws-load-balancer-type: nlb 创建 Kubernetes Service 资源仍然产生空目标群组的问题。请参阅 https://github.com/kubernetes/cloud-provider-aws/issues/301

1.24.3-gke.2100

Kubernetes OSS 版本说明

  • 功能:将 Kubernetes 资源指标上传到 Google Cloud Monitoring for Windows 节点池。
  • 功能:提供了 webhook 来轻松实现 IMDS 模拟器注入。
  • 功能:默认情况下,go1.18 不再接受使用 SHA-1 哈希算法签名的证书。默认情况下,使用这些不安全证书的准入/转换网络钩子或聚合服务器端点将在 1.24 版中失效。作为临时解决方法,我们在 Anthos on AWS 集群中设置了环境变量 GODEBUG=x509sha1=1,以使这些不安全的证书能够继续正常工作。但是,Go 团队预计会在即将发布的版本中移除对此解决方法的支持。在升级到即将发布的重大版本之前,客户应检查并确保没有任何使用此类不安全证书的准入/转换网络钩子或聚合服务器端点。
  • 功能:GKE on AWS 现在支持 EFS 动态预配功能(预览版),可在 1.24 版或更高版本的 Kubernetes 集群中使用。如要使用此功能,您必须向控制平面角色添加以下权限:ec2:DescribeAvailabilityZoneselasticfilesystem:DescribeAccessPointselasticfilesystem:DescribeFileSystemselasticfilesystem:DescribeMountTargetselasticfilesystem:CreateAccessPointelasticfilesystem:DeleteAccessPoint
  • 功能:改进了在集群和节点池创建期间进行的网络连接检查,以帮助进行问题排查。

  • 功能:支持更新 AWS 控制平面标记。如需更新标记,您需要将以下权限添加到 API 角色autoscaling:CreateOrUpdateTags autoscaling:DeleteTags ec2:CreateTags ec2:DescribeLaunchTemplates ec2:DescribeSecurityGroupRules ec2:DeleteTags elasticloadbalancing:AddTags elasticloadbalancing:RemoveTags

  • 功能:提供了使用 Google Managed Service for Prometheus 向 Cloud Monarch 上传工作负载指标这一功能,但目前属于非公开预览版功能并且仅限受邀用户使用。

  • 安全修复程序

Kubernetes 1.23

1.23.16-gke.2800

Kubernetes OSS 版本说明

1.23.16-gke.200

Kubernetes OSS 版本说明

  • 问题修复:修复了在集群创建/更新操作期间某些错误无法传播和报告的问题。
  • 问题修复:修复了 kubeapi 服务器无法访问 AIS 的 cpp-httplib 问题。

  • 安全修复程序

1.23.14-gke.1800

Kubernetes OSS 版本说明

1.23.14-gke.1100

Kubernetes OSS 版本说明

1.23.11-gke.300

Kubernetes OSS 版本说明

1.23.9-gke.2200

Kubernetes OSS 版本说明

  • 问题修复:修复了使用类型 LoadBalancer 和注解 service.beta.kubernetes.io/aws-load-balancer-type: nlb 创建 Kubernetes Service 资源仍然产生空目标群组的问题。请参阅 https://github.com/kubernetes/cloud-provider-aws/issues/301

1.23.9-gke.2100

Kubernetes OSS 版本说明

1.23.9-gke.800

Kubernetes OSS 版本说明

1.23.8-gke.1700

Kubernetes OSS 版本说明

1.23.7-gke.1300

Kubernetes OSS 版本说明

  • 功能:默认情况下,在 kube-scheduler 和 kube-controller-manager 中停用性能剖析端点 (/debug/pprof)。
  • 功能:将 kube-apiserver 和 kubelet 更新为仅使用“强加密”加密方式。Kubelet 支持的加密方式:

    TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305、TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384、TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305、TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384、TLS_RSA_WITH_AES_256_GCM_SHA384、TLS_RSA_WITH_AES_128_GCM_SHA256

    kube api-server 使用的受支持的加密方式:

    TLS_AES_128_GCM_SHA256、TLS_AES_256_GCM_SHA384、TLS_CHACHA20_POLY1305_SHA256、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384、TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305、TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256、TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384、TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305、TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256、TLS_RSA_WITH_3DES_EDE_CBC_SHA、TLS_RSA_WITH_AES_128_CBC_SHA、TLS_RSA_WITH_AES_128_GCM_SHA256、TLS_RSA_WITH_AES_256_CBC_SHA、TLS_RSA_WITH_AES_256_GCM_SHA384

  • 功能:添加了实例元数据服务器 (IMDS) 模拟器。

  • 安全修复程序

Kubernetes 1.22

1.22.15-gke.100

Kubernetes OSS 版本说明

1.22.12-gke.2300

Kubernetes OSS 版本说明

1.22.12-gke.1100

Kubernetes OSS 版本说明

1.22.12-gke.200

Kubernetes OSS 版本说明

1.22.10-gke.1500

Kubernetes OSS 版本说明

1.22.8-gke.2100

Kubernetes OSS 版本说明

  • 功能:Windows 节点现在使用 pigz 来提高映像层提取性能。

1.22.8-gke.1300

  • 问题修复
    • 修复了在启用 Windows 节点池时无法应用插件的问题。
    • 修复了日志记录代理可能会填满挂接磁盘空间的问题。
  • 安全修复程序
    • 修复了 CVE-2022-1055
    • 修复了 CVE-2022-0886
    • 修复了 CVE-2022-0492
    • 修复了 CVE-2022-24769
    • 此版本包括以下基于角色的访问控制 (RBAC) 更改:
    • 降低了租期更新的 anet-operator 权限。
    • 降低了节点和 pod 的 anetd Daemonset 权限。
    • 降低了服务账号令牌的 fluentbit-gke 权限。
    • 降低了服务账号令牌的 gke-metrics-agent 权限。
    • 降低了节点、ConfigMap 和 Deployment 的 coredns-autoscaler 权限。

1.22.8-gke.200

Kubernetes OSS 版本说明

  • 功能:在 Kubernetes v1.22 下创建的集群和节点池的默认实例类型现在是 m5.large,而不是 t3.medium。
  • 功能:使用 Kubernetes 1.22 版创建新集群时,您现在可以配置自定义日志记录参数。
  • 功能:作为预览版功能,您现在可以在使用 Kubernetes 1.22 版创建节点池时选择 Windows 作为节点池映像类型。
  • 功能:作为预览版功能,您现在可以将宿主机配置为专用主机
  • 功能:现在,您可以在长时间运行的操作错误字段中查看最常见的异步集群和节点池启动错误。如需了解详情,请参阅 gcloud container aws operations list 参考文档。
  • 安全修复程序

Kubernetes 1.21

1.21.14-gke.2900

Kubernetes OSS 版本说明

1.21.14-gke.2100

Kubernetes OSS 版本说明

1.21.11-gke.1900

Kubernetes OSS 版本说明

1.21.11-gke.1800

Kubernetes OSS 版本说明

1.21.11-gke.1100

  • 安全修复程序
    • 修复了 CVE-2022-1055
    • 修复了 CVE-2022-0886
    • 修复了 CVE-2022-0492
    • 修复了 CVE-2022-24769
    • RBAC 修复:
    • 降低了租期更新的 anet-operator 权限。
    • 降低了节点和 pod 的 anetd Daemonset 权限。
    • 降低了服务账号令牌的 fluentbit-gke 权限。
    • 降低了服务账号令牌的 gke-metrics-agent 权限。
    • 降低了节点、ConfigMap 和 Deployment 的 coredns-autoscaler 权限。

1.21.11-gke.100

Kubernetes OSS 版本说明

1.21.6-gke.1500

Kubernetes OSS 版本说明

1.21.5-gke.2800

Kubernetes OSS 版本说明