Google Distributed Cloud (GDC) 网闸隔离配置可让您在创建 Kubernetes 集群后,使用 GKE on GDC 管理这些集群。借助此服务,您可以通过以下工作流来适应不断变化的容器工作负载要求,并维护现有集群节点:
将共享集群关联到项目并从项目分离:创建集群后,将共享集群关联到多个项目并从多个项目分离,以更改共享集群的工作负载范围。
查看组织中的集群:列出组织中的集群,以便跟踪容器工作负载可用的资源。
列出 Kubernetes 版本:查看集群的 Kubernetes 版本,了解集群的功能是否与最新的 Kubernetes 版本相对应。
查看可更新的集群属性:查看可在
Cluster自定义资源定义中更改的属性。
本文档适用于平台管理员组中的 IT 管理员(负责管理托管在跨多个项目的集群中的容器工作负载),以及应用运维人员组中的开发者(负责在单个项目中创建应用工作负载)。如需了解详情,请参阅 GDC 气隙环境文档的受众群体。
准备工作
如需完成本文档中的任务,您必须拥有以下资源和角色:
如需查看和管理共享 Kubernetes 集群中的节点池,请让组织 IAM 管理员为您授予以下角色:
- User Cluster Admin (
user-cluster-admin) - 用户集群节点查看器 (
user-cluster-node-viewer)
这些角色未绑定到项目命名空间。
- User Cluster Admin (
如需查看和管理标准 Kubernetes 集群中的节点池,请让组织 IAM 管理员为您授予 Standard Cluster Admin (
standard-cluster-admin) 角色。此角色与您的项目命名空间绑定。如需针对 Kubernetes 集群运行命令,请确保您拥有以下资源:
找到 Kubernetes 集群名称,或向平台管理员群组的成员询问集群名称。
登录并生成 Kubernetes 集群的 kubeconfig 文件(如果您还没有)。
使用 Kubernetes 集群的 kubeconfig 路径替换这些说明中的
KUBERNETES_CLUSTER_KUBECONFIG。
在项目层次结构中移动集群
项目提供服务实例的逻辑分组。您可以从 GDC 项目层次结构中添加和移除共享 Kubernetes 集群,以便对服务进行适当的分组。您无法在项目层次结构中移动标准集群,因为它们仅限定于单个项目。
将项目附加到共享集群
从 GDC 控制台创建共享集群时,您必须先附加至少一个项目,然后才能成功向该集群部署容器工作负载。如果您必须向现有集群添加其他项目,请完成以下步骤:
- 在导航菜单中,依次选择 Kubernetes Engine > 集群。
- 点击集群列表中的集群,以打开集群详情页面。
- 选择附加项目。
- 从项目列表中选择要添加的可用项目。点击保存。
从共享集群分离项目
如需将项目从现有共享集群中分离,请完成以下步骤:
- 在导航菜单中,依次选择 Kubernetes Engine > 集群。
- 点击集群列表中的集群,以打开集群详情页面。
点击要从集群中分离的项目的 delete 分离。
查看组织中的所有集群
您可以查看组织中的所有可用 Kubernetes 集群,包括其状态、Kubernetes 版本和其他详细信息。
由于 Kubernetes 集群是可用区级资源,因此您只能按区域列出集群。
控制台
在导航菜单中,依次选择 Kubernetes Engine > 集群。
系统会显示组织中的所有可用共享集群及其状态和其他信息:

gdcloud
列出组织中可用区可用的共享集群:
gdcloud clusters list输出类似于以下内容:
CLUSTERREF.NAME READINESS.STATE TYPE CURRENTVERSION.USERCLUSTERVERSION CURRENTVERSION.SUPPORT.STATUS user-vm-1 Ready user 1.15.0-gdch.394225-1.28.15-gke.1200 In Support user-vm-2 Ready user 1.15.0-gdch.394225-1.29.12-gke.800 In Support
API
列出组织中相应可用区的可用 Kubernetes 集群:
kubectl get clusters.cluster.gdc.goog -n KUBERNETES_CLUSTER_NAMESPACE \ --kubeconfig MANAGEMENT_API_SERVER替换以下内容:
MANAGEMENT_API_SERVER:区域 API 服务器的 kubeconfig 路径。如果您尚未为目标地区中的 API 服务器生成 kubeconfig 文件,请参阅登录了解详情。KUBERNETES_CLUSTER_NAMESPACE:集群的命名空间。对于共享集群,请使用platform命名空间。对于标准集群,请使用集群的项目命名空间。
输出类似于以下内容:
NAME STATE K8S VERSION user-vm-1 Running 1.25.10-gke.2100 user-test Running 1.26.5-gke.2100
列出集群可用的 Kubernetes 版本
您可以列出 GDC 区域中的可用 Kubernetes 版本,以验证您可以在集群中访问的 Kubernetes 功能。
列出您所在可用区中的可用 Kubernetes 版本:
kubectl get userclustermetadata.upgrade.private.gdc.goog \ -o=custom-columns=K8S-VERSION:.spec.kubernetesVersion \ --kubeconfig MANAGEMENT_API_SERVER将
MANAGEMENT_API_SERVER替换为集群的区域 API 服务器的 kubeconfig 文件。输出类似于以下内容:
K8S-VERSION 1.25.10-gke.2100 1.26.5-gke.2100 1.27.4-gke.500
查看可更新的属性
对于每个 Kubernetes 集群,创建后都可以更改一组属性。您只能更改 Cluster 自定义资源的 spec 中的可变属性。在集群完成配置后,spec 中的并非所有属性都可更新。如需查看这些可更新的属性,请完成以下步骤:
控制台
在导航菜单中,依次选择 Kubernetes Engine > 集群。
在 Kubernetes 集群列表中,点击集群名称以查看其属性。
可修改的属性带有edit 修改图标。
kubectl
查看
Cluster规范的属性列表以及与每个属性对应的有效值:kubectl explain clusters.cluster.gdc.goog.spec \ --kubeconfig MANAGEMENT_API_SERVER将
MANAGEMENT_API_SERVER替换为区域 API 服务器的 kubeconfig 路径。如果您尚未为目标地区中的 API 服务器生成 kubeconfig 文件,请参阅登录了解详情。输出类似于以下内容:
KIND: Cluster VERSION: cluster.gdc.goog/v1 RESOURCE: spec <Object> DESCRIPTION: <empty> FIELDS: clusterNetwork <Object> The cluster network configuration. If unset, the default configurations with pod and service CIDR sizes are used. Optional. Mutable. initialVersion <Object> The GDC air-gapped version information of the user cluster during cluster creation. Optional. Default to use the latest applicable version. Immutable. loadBalancer <Object> The load balancer configuration. If unset, the default configuration with the ingress service IP address size is used. Optional. Mutable. nodePools <[]Object> The list of node pools for the cluster worker nodes. Optional. Mutable. releaseChannel <Object> The release channel a cluster is subscribed to. When a cluster is subscribed to a release channel, GDC maintains the cluster versions for users. Optional. Mutable.您可以使用 GDC 控制台或 kubectl CLI 更新这些设置。 例如,您可以调整节点池的大小。