本页面介绍如何监控专用集群,包括从 Artifact Registry 拉取映像。
查看集群的子网和次要地址范围
创建专用集群后,您可以查看您或 GKE 为集群预配的子网和次要地址范围。
控制台
转到 Google Cloud 控制台中的 VPC 网络页面。
点击子网的名称。例如
gke-private-cluster-0-subnet-163e3c97
。在 IP 地址范围下,您可以看到子网的主要地址范围。这是用于节点的范围。
在次要 IP 范围下,您可以看到 Pod 和 Service 的 IP 地址范围。
gcloud
列出所有子网
如需列出集群网络中的子网,请运行以下命令:
gcloud compute networks subnets list \
--network NETWORK_NAME
将 NETWORK_NAME
替换为专用集群的网络。如果您使用了自动创建的子网创建集群,请使用 default
。
在命令输出中,找到集群子网的名称。
查看集群的子网
获取自动创建的子网的相关信息:
gcloud compute networks subnets describe SUBNET_NAME
将 SUBNET_NAME
替换为子网的名称。
输出结果显示节点的主要地址范围(第一个 ipCidrRange
字段)以及 Pod 和 Service 的次要范围(在 secondaryIpRanges
下):
...
ipCidrRange: 10.0.0.0/22
kind: compute#subnetwork
name: gke-private-cluster-1-subnet-163e3c97
...
privateIpGoogleAccess: true
...
secondaryIpRanges:
- ipCidrRange: 10.40.0.0/14
rangeName: gke-private-cluster-1-pods-163e3c97
- ipCidrRange: 10.0.16.0/20
rangeName: gke-private-cluster-1-services-163e3c97
...
查看专用集群的端点
您可以使用 gcloud CLI 或 Google Cloud 控制台查看专用集群的端点。
控制台
转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。
在集群列表中,点击集群名称。
在集群基本信息下的详情标签页中,找到端点字段。
gcloud
运行以下命令:
gcloud container clusters describe CLUSTER_NAME
输出内容会显示专用和公共端点:
...
privateClusterConfig:
enablePrivateEndpoint: true
enablePrivateNodes: true
masterIpv4CidrBlock: 172.16.0.32/28
privateEndpoint: 172.16.0.34
publicEndpoint: 35.239.154.67
从映像注册表中拉取容器映像
在专用集群中,容器运行时可以从 Artifact Registry 中拉取容器映像,不能从互联网上的任何其他容器映像注册表中拉取映像。这是因为专用集群中的节点没有外部 IP 地址,因此默认情况下节点无法与 Google Cloud 网络外部的服务通信。
专用集群中的节点如果位于已启用专用 Google 访问通道的子网中,则可以与 Google Cloud 服务(例如 Artifact Registry)通信。
以下命令会创建一个 Deployment,以从 Artifact Registry 代码库中拉取示例映像:
kubectl run hello-deployment --image=us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0