使用 Google Cloud 控制台连接到您的集群

借助 Connect,您可以使用 Google Cloud 控制台来管理用户集群。您创建的每个用户集群都会自动运行 Connect 代理向 Connect 注册。如需了解详情,请参阅 Connect 概览

准备工作

在开始使用 GKE on AWS 之前,请确保您已执行以下任务:

使用 Connect 登录集群

您可以使用 Google Cloud Console 来查看、监控、调试和管理用户集群上的工作负载。

如需登录用户集群,请执行以下操作:

  1. anthos-aws 目录中,使用 anthos-gke 将上下文切换到用户集群。

    cd anthos-aws
    env HTTPS_PROXY=http://localhost:8118 \
      anthos-gke aws clusters get-credentials CLUSTER_NAME
    CLUSTER_NAME 替换为用户集群名称。

  2. 在命令行中,使用 kubectlkube-system 命名空间中设置 Kubernetes 服务账号和令牌。

    本主题假定服务账号的名称为 admin-user

    env HTTPS_PROXY=http://localhost:8118 \
      kubectl create serviceaccount -n kube-system admin-user
    
  3. 使用 kubectl 创建服务账号令牌 Secret。

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl apply -n kube-system -f - << EOF
    apiVersion: v1
    kind: Secret
    metadata:
      name: admin-user-token
      annotations:
        kubernetes.io/service-account.name: admin-user
    type: kubernetes.io/service-account-token
    EOF
    
  4. cluster-admin 角色和 Kubernetes 服务账号之间创建 ClusterRoleBinding。

    env HTTPS_PROXY=http://localhost:8118 \
      kubectl create clusterrolebinding admin-user-binding \
      --clusterrole cluster-admin --serviceaccount kube-system:admin-user
    
  5. 使用 kubectl 获取服务账号的 Secret。

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl get secret -n kube-system admin-user-token -o jsonpath='{$.data.token}' \
      | base64 -d | sed $'s/$/\\\n/g'
    
  6. 将 Secret 复制到剪贴板。

  7. 在 Google Cloud 控制台中,进入 Google Kubernetes Engine 集群概览页面。

    转到 GKE 集群

  8. 选择集群。系统会显示 Kubernetes 集群详情屏幕。

  9. 点击登录按钮。

  10. 选择令牌,然后粘贴您之前复制的 Kubernetes 令牌。点击“登录”。

注册集群

为防止多个集群以相同名称注册到 Connect,请通过 Google Cloud CLI 注册集群。注册集群时,您必须从集群所在的网络运行 Google Cloud CLI。如需注册集群,请运行以下命令:

 gcloud container fleet memberships register MEMBERSHIP_NAME \
   --context=KUBECONFIG_CONTEXT \
   --kubeconfig=KUBECONFIG_PATH \
   --service-account-key-file=SERVICE_ACCOUNT_KEY_PATH

替换以下内容:

  • MEMBERSHIP_NAME:您选择用来唯一表示要在舰队中注册的集群的成员资格名称。
  • SERVICE_ACCOUNT_KEY_PATH:作为“前提条件”的一部分予以下载的服务账号私钥 JSON 文件的本地文件路径。此服务账号密钥作为 Secret(名为 creds-gcp)存储在 gke-connect 命名空间中。
  • KUBECONFIG_CONTEXT:所注册集群的集群上下文,它显示在 kubeconfig 文件中。您可以通过运行 kubectl config current-context 从命令行获取此值。
  • KUBECONFIG_PATH:存储包含所注册集群的条目的 kubeconfig 的本地文件路径。如果设置了此环境变量,则默认为 $KUBECONFIG;否则默认为 $HOME/.kube/config

后续步骤

阅读关于使用 Connect 登录集群的完整文档。

了解如何使用 Connect 进行多集群管理。