创建和查看 Managed Service for Apache Kafka 集群
了解如何创建包含主题的 Managed Service for Apache Kafka 集群,以及如何查看集群的详细信息。您可以使用 Google Cloud 控制台或 Google Cloud CLI 完成本教程。
准备工作
控制台
-
登录您的 Google 账号。
如果您还没有 Google 账号,请注册新账号。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Managed Kafka API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Managed Kafka API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
gcloud
-
登录您的 Google 账号。
如果您还没有 Google 账号,请注册新账号。
-
安装 Google Cloud CLI。
-
如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。
-
如需初始化 gcloud CLI,请运行以下命令:
gcloud init -
选择或创建项目所需的角色
- 选择项目:选择项目不需要特定的 IAM 角色,您可以选择已获授角色的任何项目。
-
创建项目:如需创建项目,您需要拥有 Project Creator 角色 (
roles/resourcemanager.projectCreator),该角色包含resourcemanager.projects.create权限。了解如何授予角色。
-
创建 Google Cloud 项目:
gcloud projects create PROJECT_ID
将
PROJECT_ID替换为您要创建的 Google Cloud 项目的名称。 -
选择您创建的 Google Cloud 项目:
gcloud config set project PROJECT_ID
将
PROJECT_ID替换为您的 Google Cloud 项目名称。
-
如果您要使用现有项目来完成本指南,请验证您是否拥有完成本指南所需的权限。如果您创建了新项目,则您已拥有所需的权限。
启用 Managed Kafka API:
启用 API 所需的角色
如需启用 API,您需要拥有 Service Usage Admin IAM 角色 (
roles/serviceusage.serviceUsageAdmin),该角色包含serviceusage.services.enable权限。了解如何授予角色。gcloud services enable managedkafka.googleapis.com
-
安装 Google Cloud CLI。
-
如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。
-
如需初始化 gcloud CLI,请运行以下命令:
gcloud init -
选择或创建项目所需的角色
- 选择项目:选择项目不需要特定的 IAM 角色,您可以选择已获授角色的任何项目。
-
创建项目:如需创建项目,您需要拥有 Project Creator 角色 (
roles/resourcemanager.projectCreator),该角色包含resourcemanager.projects.create权限。了解如何授予角色。
-
创建 Google Cloud 项目:
gcloud projects create PROJECT_ID
将
PROJECT_ID替换为您要创建的 Google Cloud 项目的名称。 -
选择您创建的 Google Cloud 项目:
gcloud config set project PROJECT_ID
将
PROJECT_ID替换为您的 Google Cloud 项目名称。
-
如果您要使用现有项目来完成本指南,请验证您是否拥有完成本指南所需的权限。如果您创建了新项目,则您已拥有所需的权限。
启用 Managed Kafka API:
启用 API 所需的角色
如需启用 API,您需要拥有 Service Usage Admin IAM 角色 (
roles/serviceusage.serviceUsageAdmin),该角色包含serviceusage.services.enable权限。了解如何授予角色。gcloud services enable managedkafka.googleapis.com
所需的角色
如需获得创建集群所需的权限,请让您的管理员为您授予项目的以下 IAM 角色:
- Managed Kafka Cluster Editor (
roles/managedkafka.clusterEditor) - Managed Kafka Topic Editor (
roles/managedkafka.topicEditor) - Compute Network User (
roles/compute.networkUser)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
创建集群
控制台
- 前往 Managed Service for Apache Kafka > 集群页面。
- 点击 创建。
- 在集群名称字段中,输入集群的名称。
- 在区域列表中,为集群选择一个位置。
-
对于网络配置,请配置集群可访问的子网:
- 在项目部分,选择您的项目。
- 对于网络,选择 VPC 网络。
- 在子网字段中,选择相应子网。
- 点击完成。
- 点击创建。
点击创建后,集群状态为 Creating。当集群准备就绪时,状态为 Active。
gcloud
如需创建 Kafka 集群,请运行 managed-kafka clusters
create 命令。
gcloud managed-kafka clusters create KAFKA_CLUSTER \ --location=REGION \ --cpu=3 \ --memory=3GiB \ --subnets=projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME \ --async
替换以下内容:
KAFKA_CLUSTER:Kafka 集群的名称REGION:集群的位置PROJECT_ID:您的项目 IDSUBNET_NAME:您要在其中创建集群的子网,例如default
如需了解支持的位置,请参阅 Managed Service for Apache Kafka 位置。
该命令会异步运行,并返回一个操作 ID:
Check operation [projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID] for status.
如需跟踪创建操作的进度,请使用 gcloud managed-kafka
operations describe 命令:
gcloud managed-kafka operations describe OPERATION_ID \ --location=REGION
当集群准备就绪时,此命令的输出内容会包含 state:
ACTIVE 条目。如需了解详情,请参阅 监控集群创建操作。
完成这些步骤后,集群最长可能需要 30 分钟才能准备就绪。
(可选)在等待此操作完成期间,您可以查看后续步骤中列出的教程。这些示例展示了如何使用各种方法为集群生成消息。集群准备就绪后,您可以完成上述任一教程。
创建主题
当 Managed Service for Apache Kafka 集群准备就绪后,创建主题。
控制台
前往 Managed Service for Apache Kafka > 集群页面。
点击集群的名称。
在集群详细信息页面中,点击 创建主题。
在主题名称框中,输入主题的名称。
点击创建。
gcloud
如需创建 Kafka 主题,请运行 managed-kafka topics create 命令。
gcloud managed-kafka topics create KAFKA_TOPIC_NAME \
--cluster=KAFKA_CLUSTER \
--location=REGION \
--partitions=10 \
--replication-factor=3
替换以下内容:
KAFKA_TOPIC_NAME:要创建的 Kafka 主题的名称KAFKA_CLUSTER:Kafka 集群的名称REGION:您创建 Kafka 集群的区域
查看集群
集群准备就绪后,您可以查看有关该集群的信息,包括主题、消费者群组、网络和其他详细信息。
控制台
前往 Managed Service for Apache Kafka > 集群页面。
点击集群的名称。 集群详情页面会显示有关集群的信息。资源标签页会显示与集群关联的资源,包括主题。
如需查看某个主题的详细信息,请选择资源标签页,然后点击相应主题名称。主题详细信息页面会显示有关主题的信息,例如分区数和副本数。
如需返回集群详情页面,请点击 返回父页面。
gcloud
如需查看集群的相关信息,请运行
gcloud managed-kafka clusters describe命令。gcloud managed-kafka clusters describe KAFKA_CLUSTER \ --location=REGION替换以下内容:
KAFKA_CLUSTER:集群的名称REGION:您在其中创建集群的区域
此命令的输出是一系列集群属性,类似于以下内容:
bootstrapAddress: BOOTSTRAP_ADDRESS capacityConfig: memoryBytes: '3221225472' vcpuCount: '3' createTime: 'TIMESTAMP'如需获取集群中的主题列表,请运行
gcloud managed-kafka topics list命令。gcloud managed-kafka topics list KAFKA_CLUSTER \ --location=REGION \ --format="value(name)"输出内容包括您创建的主题,以及 Managed Service for Apache Kafka 为内部使用而创建的主题。
如需查看有关主题的信息,请运行
gcloud managed-kafka topics describe命令。gcloud managed-kafka topics describe TOPIC_NAME \ --cluster=KAFKA_CLUSTER \ --location=REGION将
TOPIC_NAME替换为主题名称。此命令的输出是一份主题属性列表,类似于以下内容:
name: projects/PROJECT_ID/locations//clusters/KAFKA_CLUSTER/topics/TOPIC_NAME partitionCount: 10 replicationFactor: 3
获取引导地址
Kafka 客户端使用集群的引导地址与集群建立连接。如需获取引导地址,请执行以下步骤:
控制台
前往 Managed Service for Apache Kafka > 集群页面。
点击集群的名称。
选择配置标签页。
引导网址列在引导网址下。点击 复制即可复制相应值。
gcloud
如需获取引导网址,请运行 managed-kafka clusters describe 命令。
gcloud managed-kafka clusters describe KAFKA_CLUSTER \
--location=REGION \
--format="value(bootstrapAddress)"
替换以下内容:
KAFKA_CLUSTER:集群的名称REGION:您在其中创建集群的区域
您现在可以向集群发送消息了。如需了解详情,请参阅本文档中的后续步骤。
清理
为避免因本页面中使用的资源导致您的 Google Cloud 账号产生费用,请删除包含这些资源的 Google Cloud 项目。
控制台
删除集群。
前往 Managed Service for Apache Kafka > 集群页面。
选择 Kafka 集群,然后点击删除。
gcloud
如需删除集群,请使用
gcloud managed-kafka clusters delete命令。gcloud managed-kafka clusters delete KAFKA_CLUSTER \ --location=REGION --async
后续步骤
使用 Kafka 命令行工具或创建客户端应用来为 Kafka 生成消息: