调用 CreateTopic 接口创建 Kafka Topic。
此接口用于在指定实例下创建一个 Kafka 的 Topic,用户可使用该 Topic 发布和订阅消息。
说明
实例更配过程中,禁止通过任何方式创建 Topic。创建 Topic 之前,请确认实例状态为运行中(Running)。
下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数。
参数 | 类型 | 是否必填 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateTopic | 要执行的操作,取值:CreateTopic。 |
Version | String | 是 | 2022-05-01 | API的版本,取值:2022-05-01。 |
InstanceId | String | 是 | kafka-cnngbnnts1**** | 实例 ID。 |
TopicName | String | 是 | my_topic | 待创建的 Topic 名称。
|
PartitionNumber | Integer | 是 | 12 | Topic 分区数。取值范围为 1~300,如果实例中已创建了其他 Topic,则所有 Topic 的分区数之和不超过该实例的分区数上限。 |
AllAuthority | Boolean | 否 | true | 待创建的Topic默认是否对所有用户都开启读写权限。
|
ReplicaNumber | Integer | 否 | 3 | Topic 副本个数。可设置为为 2 或 3,默认值为 3。 |
Description | String | 否 | 描述信息 | Topic 的描述信息。长度不超过 128 个字符。 |
Parameters | String | 否 | {"MessageMaxByte":"11"} | Topic 级别的参数配置。 Parameters 参数说明
|
AccessPolicies | Array of Object | 否 | -- | 自定义权限配置,即为某些用户设置对于此 Topic 的自定义权限。仅在 AllAuthority 为 False 时需要设置。 |
Tags | Array of Object | 否 | -- | 云资源标签。可以将 Topic 通过标签进行归类,便于 Topic 的识别和管理。 |
CleanupPolicy | Array of String | 否 | ["delete"] | Topic 的消息清理策略,支持以下三种取值方式:
说明 Kafka 实例默认的磁盘清理水位为 90%,具体以实际为准,详情请参见设置磁盘清理水位。
说明 如果消息没有 Key,不支持启用 COMPACT 消息清理策略。 |
本接口无特有的返回参数。更多信息请见返回结构。
POST /?Action=CreateTopic&Version=2022-05-01 HTTP/1.1 Content-Type: application/json Host: kafka.volcengineapi.com X-Date: 20210328T100802Z Authorization: HMAC-SHA256 Credential=AK********/20210328/cn-beijing/Kafka/request, SignedHeaders=x-date, Signature=******** { "InstanceId": "kafka-cnngbnntswg1****", "TopicName": "my_topic3", "PartitionNumber": 12, "AllAuthority": false, "AccessPolicies":[{"UserName":"user123","AccessPolicy":"PubSub"}], "Description":"123", "ReplicaNumber":3, "Parameters":"{\"LogRetentionHours\":\"72\",\"MessageMaxByte\":\"10\",\"MinInsyncReplicaNumber\":\"2\"}" }
{ "ResponseMetadata": { "RequestId": "2023022719194098F0DF73611FD95FA1A2", "Action": "CreateTopic", "Version": "2022-05-01", "Service": "Kafka", "Region": "cn-beijing" }, "Result": null }
下表为您列举了该接口与业务逻辑相关的错误码。公共错误码请参见公共错误码文档。
状态码 | 错误码 | 说明 |
---|---|---|
400 | OperationDenied.InvalidRequest | 请求异常,请检查后重试。 |
400 | InvalidTopicName.AlreadyExists | Topic名称已存在。 |
400 | QuotaExceeded.TopicNumber | Topic数量超出上限。 |
500 | ServiceBusy | 服务繁忙,请稍后重试。 |