创建 Google Cloud Managed Service for Apache Kafka 集群

Managed Service for Apache Kafka 集群提供了一个环境,用于存储和处理组织成主题的消息流。

如需创建集群,您可以使用 Google Cloud 控制台、Google Cloud CLI、客户端库或 Managed Kafka API。您无法使用开源 Apache Kafka API 创建集群。

准备工作

验证您是否熟悉以下内容:

创建集群所需的角色和权限

如需获得创建集群所需的权限,请让您的管理员为您授予项目的 Managed Kafka Cluster Editor (roles/managedkafka.clusterEditor) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

此预定义角色可提供创建集群所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

您需要具备以下权限才能创建集群:

  • 创建集群: managedkafka.clusters.create

您也可以使用自定义角色或其他预定义角色来获取这些权限。

Managed Service for Apache Kafka 集群的属性

创建或更新 Managed Service for Apache Kafka 集群时,您必须指定以下属性。

集群名称

您正在创建的 Managed Service for Apache Kafka 集群的名称或 ID。有关如何命名集群的指南,请参阅 Managed Service for Apache Kafka 资源命名指南。 集群的名称不可变。

位置

您要创建集群的位置。该位置必须是受支持的 Google Cloud 区域之一。集群的位置以后无法更改。如需获取可用位置列表,请参阅 Managed Service for Apache Kafka 位置

容量配置

容量配置要求您为 Kafka 设置配置 vCPU 数量和内存量。如需详细了解如何配置集群容量,请参阅规划 Kafka 集群规模

以下是容量配置的属性:

  • vCPUs:集群中的 vCPU 数量。每个集群至少需要 3 个 vCPU。

  • 内存:分配给集群的内存量。 您必须为每个 vCPU 预配 1 GiB 到 8 GiB 之间的内存。

    例如,如果您创建了一个具有 6 个 vCPU 的集群,则可以为该集群分配的最小内存为 6 GiB(每个 vCPU 1 GiB),最大内存为 48 GiB(每个 vCPU 8 GiB)。

如需详细了解如何在创建集群后更改内存和 vCPU 数量,请参阅更新集群规模

网络配置

网络配置是集群可访问的 VPC 子网的列表。如需生成或使用消息,客户端必须能够访问这些子网之一。

以下是一些网络配置指南:

  • 一个集群至少需要一个子网。最多 10 个。

  • 对于任何给定的集群,每个网络只允许有一个子网。

  • 每个子网都必须与集群位于同一区域。项目和网络可以不同。

  • 代理和引导服务器的 IP 地址在每个子网中自动分配。此外,系统会在相应的 VPC 网络中创建这些 IP 地址的 DNS 条目。

  • 如果您添加了来自其他项目的子网,则必须向与集群关联的 Google 代管式服务账号授予权限。如需了解详情,请参阅跨项目连接集群

创建集群后,您可以更新子网列表。如需详细了解网络,请参阅为 Managed Service for Apache Kafka 配置网络

标签

标签是有助于您进行组织和标识的键值对。标签可用于根据环境对资源进行分类。例如 "env:production""owner:data-engineering"

您可以根据资源的标签过滤和搜索资源。例如,假设您有多个适用于不同部门的 Managed Service for Apache Kafka 集群。您可以配置并搜索带有 "department:marketing" 标签的集群,以便快速找到相关集群。

重新平衡配置

此设置用于确定服务是否会自动在各个代理之间重新平衡分区副本。

可用的模式包括:

  • 在扩容时自动重新平衡:启用此选项后,当您扩容集群时,服务会自动触发副本重新平衡。此模式有助于保持均匀的负载分布,但在重新平衡操作期间可能会暂时影响性能。

  • 不重新平衡:启用此选项后,服务不会自动重新平衡副本。

加密

Managed Service for Apache Kafka 可以使用Google-owned and Google-managed encryption keys (默认)或客户管理的加密密钥 (CMEK) 对消息进行加密。每条消息在静态存储时和传输过程中都会加密。集群的加密类型不可变。

默认情况下使用 Google-owned and Google-managed encryption keys。这些密钥完全由 Google Cloud 在其基础架构内创建、管理和存储。

CMEK 是指您使用 Cloud Key Management Service 管理的加密密钥。借助此功能,您可以更好地控制用于在受支持的 Google Cloud 服务中加密静态数据的密钥。使用 CMEK 会产生与 Cloud Key Management Service 相关的额外费用。对于 CMEK 用途,您的密钥环必须与您使用它的资源位于同一位置。如需了解详情,请参阅配置消息加密

mTLS 配置

您可以选择配置 mTLS 作为使用客户端证书的替代身份验证方法。配置包括以下内容:

  • CA 池:集群信任的用于客户端身份验证的 Certificate Authority Service (CAS) 池的列表,其中包含 1 到 10 个 CAS 池。

  • SSL 正文映射规则:一种可选但建议使用的 ssl.principal.mapping.rules 代理属性,用于简化 Kafka ACL 中使用的长证书正文名称。

如需详细了解 mTLS,请参阅配置 mTLS 身份验证

创建集群

在创建集群之前,请查看集群属性的相关文档。

创建集群通常需要 20-30 分钟。

如需创建集群,请按照以下步骤操作:

控制台

  1. 在 Google Cloud 控制台中,前往集群页面。

    转到“集群”

  2. 选择创建

    系统会打开创建 Kafka 集群页面。

  3. 对于集群名称,输入一个字符串。

    如需详细了解如何命名集群,请参阅 Managed Service for Apache Kafka 资源命名指南