监控专用集群


本页面介绍如何监控专用集群,包括从 Artifact Registry 拉取映像。

查看集群的子网和次要地址范围

创建专用集群后,您可以查看您或 GKE 为集群预配的子网和次要地址范围。

控制台

  1. 转到 Google Cloud 控制台中的 VPC 网络页面。

    进入“VPC 网络”

  2. 点击子网的名称。例如 gke-private-cluster-0-subnet-163e3c97

  3. IP 地址范围下,您可以看到子网的主要地址范围。这是用于节点的范围。

  4. 次要 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 控制台查看专用集群的端点。

控制台

  1. 转到 Google Cloud 控制台中的 Google Kubernetes Engine 页面。

    转到 Google Kubernetes Engine

  2. 在集群列表中,点击集群名称。

  3. 集群基本信息下的详情标签页中,找到端点字段。

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