如需删除单个主题,您可以使用 Google Cloud 控制台、Google Cloud CLI、 客户端库、Managed Kafka API 或开源 Apache Kafka API。
删除主题所需的角色和权限
如需获得删除主题所需的权限,请让您的管理员向您授予项目的 Managed Kafka Topic Editor(roles/managedkafka.topicEditor) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色包含 删除主题所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
您需要具备以下权限才能删除主题:
-
删除主题:
managedkafka.topics.delete
如需详细了解此角色,请参阅 Managed Service for Apache Kafka 预定义角色。
删除主题
删除主题是 不可逆 的操作,会导致该主题中存储的所有数据 永久丢失 。请确保您已进行适当的备份或已导出任何必要的数据,然后再继续操作。
在删除主题之前,请确保您已停止或重新配置订阅该主题的所有使用方,以使其从其他主题使用数据。
如需删除主题,请按照以下步骤操作:
控制台
在 Google Cloud 控制台中,前往 集群 页面。
在集群列表中,点击要删除的主题所属的集群。
集群详情 页面随即打开。在集群详情页面的资源 标签页中,系统会列出主题。
点击要删除的主题。
主题详情 页面随即打开。
点击删除 并确认操作。
gcloud
-
在 Google Cloud 控制台中,激活 Cloud Shell。
Cloud Shell 会话随即会在控制台的底部启动,并显示命令行提示符。 Google Cloud Cloud Shell 是一个已安装 Google Cloud CLI 且已为当前项目设置值的 Shell 环境 。该会话可能需要几秒钟来完成初始化。
运行
gcloud managed-kafka topics delete命令:gcloud managed-kafka topics delete TOPIC_ID \ --cluster=CLUSTER_ID \ --location=LOCATION_ID此命令会从指定的 Google Cloud Managed Service for Apache Kafka 集群中移除指定的主题。与该主题关联的所有数据都会被删除,并且生产者或使用者将无法再访问该主题。
替换以下内容:
- TOPIC_ID:要删除的主题的 ID。
- CLUSTER_ID:主题所在的集群的 ID。
- LOCATION_ID:集群的位置。
REST
在使用任何请求数据之前, 请先进行以下替换:
-
PROJECT_ID:您的 Google Cloud 项目 ID -
LOCATION:集群的位置 -
CLUSTER_ID:集群的 ID -
TOPIC_ID:主题的 ID
HTTP 方法和网址:
DELETE https://managedkafka.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/topics/TOPIC_ID
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{}
Go
在试用此示例之前,请按照 安装客户端库中的 Go 设置说明进行操作。如需了解详情, 请参阅 Managed Service for Apache Kafka Go API 参考文档。
如需向 Managed Service for Apache Kafka 进行身份验证,请设置应用默认凭据(ADC)。如需了解详情, 请参阅 为本地开发环境设置 ADC。
Java
在试用此示例之前,请按照 安装客户端库中的 Java 设置说明进行操作。如需了解详情, 请参阅 Managed Service for Apache Kafka Java API 参考文档。
如需向 Managed Service for Apache Kafka 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅 为本地开发环境设置 ADC。
Python
在试用此示例之前,请按照 安装客户端库中的 Python 设置说明进行操作。如需了解详情, 请参阅 Managed Service for Apache Kafka Python API 参考文档。
如需向 Managed Service for Apache Kafka 进行身份验证,请设置应用默认凭据。如需了解详情, 请参阅为本地开发环境设置 ADC。