部署到 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 输出菜单获取环境控制台地址、初始用户名、密码以及 AutoMQ 所需的服务账户。该服务账户将用于步骤 2 中创建 GKE 节点池。
步骤 2: 创建 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 标签页中,绑定安装 BYOC 环境时 Output 返回的 Service Account。如果使用 Marketplace 安装环境,则可以从解决方案部署的 Output 信息中找到服务账号。

节点安全配置设置如下:

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

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

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

步骤 3: 进入环境控制台,配置 Kubernetes 集群信息
首次进入 AutoMQ BYOC 控制台,需要配置 Kubernetes 集群信息后才可正常使用。按照控制台指引页面填写步骤 2 创建的 GKE 集群 Name ,完成环境初始化。
注意:
如果 AutoMQ 环境控制台(Kafka 客户端应用)和 GKE 集群 部署在不同的 VPC 子网 ,则需要用户前往 VPC 防火墙页面添加通行规则。否则因网络不通,会影响实例的创建和使用。
添加的防火墙策略,建议将环境控制台所在的子网 IP 来源全部放行。端口列表为:9090,9092-9093,9102-9103,22。
