部署到 Google Cloud GKE
参考 概述▸,AutoMQ 支持部署到 Kubernetes 上。本文介绍 AutoMQ 集群部署到 Google Cloud GKE 平台的安装过程。
本文中提及 AutoMQ 产品服务方、AutoMQ 服务方、AutoMQ,均特指 AutoMQ HK Limited及其附属公司。
操作流程
步骤 1: 安装环境控制台
参考概述▸,AutoMQ 支持部署到 GKE 集群。在 GKE 部署模式下,首先仍然需要安装 AutoMQ 控制台,再通过控制台界面操作 GKE,将集群部署到 GKE。
在 Google Cloud 上,同时支持基于 Marketplace 和 Terraform 安装环境控制台。
通过 Marketplace 安装控制台(推荐) ,参考从 GCP Marketplace 安装环境▸。
通过 Terraform 安装控制台,参考使用 Terraform Module 安装环境▸。
AutoMQ 控制台安装完成后,需要从控制台界面或者 Terraform output 输出菜单获取环境控制台地址、初始用户名、密码。
步骤 2:创建 IAM 服务账号
AutoMQ 数据面集群使用专用节点池部署,因此需要为 AutoMQ 节点池绑定专用的 IAM 服务账号以便访问 GCP 云服务。创建 IAM 服务账号参考如下步骤:
- 前往 IAM 控制台,点击 Service Accounts ,创建 Service Accounts 。填写自定义服务账号名称。

授予服务账号必要的系统角色,系统角色列表如下:
roles/resourcemanager.tagUser
roles/artifactregistry.reader
roles/autoscaling.metricsWriter
roles/monitoring.metricWriter
roles/stackdriver.resourceMetadata.writer
roles/monitoring.viewer
roles/logging.logWriter

- 完成服务账号创建,记录服务账号的名称和 ID,后续创建节点池需要填写。
步骤 3: 创建 GKE 集群
参考概述▸,用户需要提前创建独立的 GKE 集群分配给 AutoMQ 使用。用户可访问Google Cloud GKE 产品控制台按下方步骤操作。
设置 GKE 集群类型和地域
- 登录 Google Cloud GKE 控制台。点击创建集群 。

- 选择集群类型为 Standard: You manage your cluster。

填写集群名称、地域信息:
Location Type: 选择 Regional ,这样后续可以创建三可用区的 AutoMQ 实例。
Target Release Channel: 建议选择稳定版本。

设置 GKE 集群网络
- 切换至 Networking 配置 ,选择目标 VPC 和子网 。
注意:
Google Cloud 中多个子网之间默认的 Fire Wall 策略是默认无法互通。因此建议将 GKE 和 AutoMQ 环境控制台安装在相同的子网内。
如果 GKE 和 AutoMQ 环境控制台以及 Kafka 客户端应用不在相同的子网,则需要前往 VPC 设置防火墙策略。
如需手工添加防火墙策略,建议对 AutoMQ 环境控制台所在的子网 IP 范围全部放行。端口列表为:9090,9092-9093,9102-9103,22。

修改网络配置。需要确保设置如下选项:
开启 VPC-native traffic routing 。
开启 Dataplane V2 。

设置 GKE 集群公共节点池
切换到 NODE POOLS 配置项, 配置默认节点池,用于部署GKE 系统组件。调整节点数量每个可用区 1 个节点,保证总节点数大于等于 3 即可。作为 GKE 系统组件部署的节点池除了图上展示的配置需要调整以外,其他选项可以采用默认配置。

添加 AutoMQ 专用节点池
参考概述▸,用户需要创建 AutoMQ 独享的节点池,以便后续部署实例申请机器。因此,在创建 GKE 集群时,需要创建 2 个节点池,一个是公共节点池用于部署 GKE 系统组件;一个是 AutoMQ 专用节点池,用于部署 AutoMQ 集群。
- 点击上方添加节点池 按钮,配置 AutoMQ 专用节点池。

- 开启 Cluster AutoScaler。 并配置为 Balanced 类型均衡, 大小限制设置为 Total limits ,设置合适的上限(建议上限设置 50-100)。

- 在 Nodes 标签页中,参考概述▸配置符合 AutoMQ 要求的机型列表。

- 在 Security 标签页中,绑定步骤 2 创建的 AutoMQ 节点池专用的服务账号 。

节点安全配置设置如下:

- 在元数据标签页中,设置 AutoMQ 独占使用的污点。污点的键是dedicated,值是 automq,效果是 NO_SCHEDULE。

点击创建 GKE 集群
检查所有配置无误后,点击下方 Create,创建 GKE 集群 。
GKE 集群创建完成后,复制集群 Name 。用于步骤 3 配置使用。

- 查看 GKE 集群列表找到集群,对该集群添加 Tag,用于约定后续 AutoMQ 控制台的管理权限。
AutoMQ 控制台仅支持管理包含 automqAssigned: automq 的 GKE 集群。因此,需要对 GKE 集群添加上述标签。

步骤 4:进入环境控制台,创建部署配置
首次进入 AutoMQ BYOC 控制台,需要创建部署配置,用于设置 Kubernetes 集群信息、GCS Bucket 等信息,之后才可创建实例。
注意:
如果 AutoMQ 环境控制台(Kafka 客户端应用)和 GKE 集群 部署在不同的 VPC 子网 ,则需要用户前往 VPC 防火墙页面添加通行规则。否则因网络不通,会影响实例的创建和使用。
添加的防火墙策略,建议将环境控制台所在的子网 IP 来源全部放行。端口列表为:9090,9092-9093,9102-9103,22。
复制步骤3 创建的 GKE 集群的集群名称 。
登录控制台,录入集群名称等配置,点击下一步。
部署类型:选择 Kubernetes。
Kubernetes 集群:填写 GKE 集群的集群名称。
DNS ZoneId:填写用于部署 AutoMQ 的 Private DNS 的 ZoneId。
Bucket 名称:填写用于部署 AutoMQ 存储消息的数据 Bucket,支持添加多个 GCS Bucket。

- 填写云资源信息后,生成数据面 GKE 节点池需要授权的权限。参考控制台指引,创建自定义授权策略 。然后将授权策略绑定到步骤 2 创建的 AutoMQ IAM 委托,并录入该节点池委托名称 ,点击下一步预览 。

- 预览部署配置信息,完成创建 。即可前往实例管理页面创建实例。