Anthos Service Mesh 1.6

设置 GKE on Google Cloud 集群

本页面介绍了如何使用 Anthos Service Mesh 所需的选项设置现有的 GKE on Google Cloud 集群上设置现有 GKE。如果要将不同 Cloud 项目中的集群添加到 Anthos Service Mesh,这些集群必须位于共享虚拟私有云 (VPC)。如需了解详情,请参阅通过共享 VPC 设置集群

准备工作

在开始设置集群之前,请确保您已经:

设置现有集群

  1. 创建以下环境变量:

    • 设置集群名称:

      export CLUSTER_NAME=YOUR_CLUSTER_NAME

    • CLUSTER_LOCATION 设置为您的集群区域或集群地区:

      export CLUSTER_LOCATION=YOUR_ZONE_OR_REGION

    • 设置工作负载池:

      export WORKLOAD_POOL=${PROJECT_ID}.svc.id.goog

    • 设置网格 ID:

      export MESH_ID="proj-${ENVIRON_PROJECT_NUMBER}"

  2. gcloud 命令行工具设置默认区域或地区。如果您未在此处设置默认值,请务必在本页面的 gcloud container clusters 命令中指定 --zone--region 选项。

    • 如果您有一个单区域集群,请设置默认区域:

      gcloud config set compute/zone ${CLUSTER_LOCATION}
    • 如果您有一个地区级集群,请设置默认地区:

      gcloud config set compute/region ${CLUSTER_LOCATION}

    提示:为了让您以后更轻松地设置 shell 环境,您可以将每个环境变量的 export 语句复制并粘贴到启动新 shell 时将对其执行 source 的简单 shell 脚本。您还可以添加 gcloud 命令,以将默认值设置为脚本。或者,您可以使用 gcloud init 创建并激活命名的 gcloud 配置。

  3. 在集群上设置 mesh_id 标签,该标签对于在 Cloud Console 中的 Anthos Service Mesh 信息中心显示指标必不可少。如果您的集群已有要保留的标签,则在添加 mesh_id 标签时必须将这些标签包含在内。

    1. 如需查看您的集群是否已有标签,请执行以下操作:

      gcloud container clusters describe ${CLUSTER_NAME} \
        --project ${PROJECT_ID}

      在输出中查找 resourceLabels 字段。每个标签都存储在 resourceLabels 字段下的单独的一行中,例如:

      resourceLabels:
        csm: ''
        env: dev
        release: stable

      如果 csm 标签位于输出中,则无需保留该标签。mesh_id 标签将替换 csm 标签。

      为方便起见,您可以向环境变量添加标签。在以下命令中,请将 YOUR_EXISTING_LABELS 替换为集群上以英文逗号分隔的现有标签列表,格式为 KEY=VALUE,例如:env=dev,release=stable

      export EXISTING_LABELS="YOUR_EXISTING_LABELS"
    2. 设置 mesh_id 标签:

      • 如果您的集群已有要保留的标签,请使用 mesh_id 和现有标签更新集群:

        gcloud container clusters update ${CLUSTER_NAME} \
          --project ${PROJECT_ID} \
          --update-labels=mesh_id=${MESH_ID},${EXISTING_LABELS}
      • 如果您的集群没有任何现有标签,请仅使用 mesh_id 标签更新集群:

        gcloud container clusters update ${CLUSTER_NAME} \
          --project=${PROJECT_ID} \
          --update-labels=mesh_id=${MESH_ID}
  4. 启用 Workload Identity

    gcloud container clusters update ${CLUSTER_NAME} \
       --project=${PROJECT_ID} \
       --workload-pool=${WORKLOAD_POOL}
  5. 启用 GKE 上的 Cloud Monitoring 和 Cloud Logging

    gcloud container clusters update ${CLUSTER_NAME} \
       --project=${PROJECT_ID} \
       --enable-stackdriver-kubernetes

您下一步想要做什么?