部署到 Anthos 用户集群

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

本文档介绍如何将应用部署到 Anthos 集群。支持 Anthos 目标支持部署到 AWS、Azure 和本地集群。

借助 Google Cloud Deploy,您可以将基于容器的工作负载部署到您可以使用 Connect 网关访问的任何 Anthos 用户集群。

准备工作

  • 拥有将要部署到的 Anthos 用户集群。

    此集群可以是您创建的 Anthos 用户集群,也可以注册现有 Kubernetes 集群。您为 Anthos 创建的集群会自动接收成员资格。对于注册到舰队的现有集群,您可以在注册时指定成员资格名称。您需要使用此成员资格名称作为目标配置。

    如果您使用的是 Google Cloud CLI 407.0.0 或更高版本,则需要在注册 Google Kubernetes Engine 集群时在 gcloud container fleet memberships register 命令中添加 --install-connect-agent 标志。默认情况下,不会再安装 Connect 代理。

  • 设置连接网关,将注册的集群连接到 Google Cloud。

    请务必使用将与 Google Cloud Deploy 执行服务帐号相同的服务帐号设置网关。否则,执行服务帐号将没有部署到 Anthos 集群所需的权限。

设置 Google Cloud Deploy 以部署到 Anthos

  1. 创建目标配置

    目标可以在交付流水线 YAML 中进行配置,也可以在单独的文件中配置。此外,您可以在同一文件中配置多个目标,但这些目标必须位于不同的 kind: Target 节中。

  2. 执行服务帐号授予所需的角色,以便它可以通过网关与已连接的集群进行交互。

    无论您使用的是默认的 Google Cloud Deploy 服务帐号还是自定义服务帐号,都需要授予此权限。

  3. 为 Anthos 集群依据的 Kubernetes 集群上的执行服务帐号设置 RBAC

  4. 可选:如果底层集群不是 GKE 集群,您可能需要配置 imagePullSecret,以允许您的集群从 Artifact Registry 中提取。

  5. 在目标定义中,创建一个指向 Anthos 集群的 anthosCluster 节:

    指定 Anthos 集群的语法如下:

    anthosCluster:
     membership: projects/[project_name]/locations/global/memberships/[membership_name]
    

    此 Anthos 资源标识符使用以下元素:

    • [project_name] 是运行此集群的 Google Cloud 项目的名称。

      您要部署到的集群(包括 Anthos 集群)无需与交付流水线位于同一项目中。

    • [membership_name] 是您在将集群注册到舰队时选择的名称。

    对于 location,所有 Anthos 集群成员资格均为 global,因此您无需更改此资源标识符中的 /locations/global/

以下是一个指向 Anthos 用户集群的目标配置示例:

      apiVersion: deploy.cloud.google.com/v1
      kind: Target
      metadata:
       name: qsdev
      description: development cluster
      anthosCluster:
       membership: projects/my-app/locations/global/memberships/my-app-dev-cluster

后续步骤