创建Kafka实例
功能介绍
创建实例。
URI
POST /v2/{project_id}/kafka/instances
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 参数解释: 项目ID,获取方式请参见获取项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| name | 是 | String | 参数解释: 实例名称。 约束限制: 由英文字符开头,只能由英文字母、数字、中划线、下划线组成,长度为4~64的字符。 取值范围: 不涉及。 默认取值: 不涉及。 |
| description | 否 | String | 参数解释: 实例的描述信息。 约束限制: 长度不超过1024的字符串。 \与"在json报文中属于特殊字符,如果参数值中需要显示\或者"字符,请在字符前增加转义字符\,比如\\或者\"。 取值范围: 不涉及。 默认取值: 不涉及。 |
| engine | 是 | String | 参数解释: 消息引擎。 约束限制: 不涉及 取值范围: kafka 默认取值: 不涉及。 |
| engine_version | 是 | String | 参数解释: 消息引擎的版本。 约束限制: 不涉及 取值范围:
默认取值: 不涉及。 |
| broker_num | 是 | Integer | 参数解释: 代理个数。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
| storage_space | 是 | Integer | 参数解释: 消息存储空间,单位GB。 约束限制: 磁盘容量仅支持设置为100的整数倍。 取值范围:
默认取值: 不涉及。 |
| access_user | 否 | String | 参数解释: 认证用户名。 约束限制: 只能由英文字母开头且由英文字母、数字、中划线、下划线组成,长度为4~64的字符。当ssl_enable为true时,该参数必选,ssl_enable为false时,该参数无效。 取值范围: 不涉及。 默认取值: 不涉及。 |
| password | 否 | String | 参数解释: 实例的认证密码。 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
| vpc_id | 是 | String | 参数解释: 虚拟私有云ID。获取方法如下:参考《虚拟私有云 API参考》,调用“查询VPC列表”接口,从响应体中获取VPC ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| security_group_id | 是 | String | 参数解释: 指定实例所属的安全组。获取方法如下:参考《虚拟私有云 API参考》,调用“查询安全组列表”接口,从响应体中获取安全组ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| subnet_id | 是 | String | 参数解释: 子网信息。获取方法如下:参考《虚拟私有云 API参考》,调用“查询子网列表”接口,从响应体中获取子网ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| available_zones | 是 | Array of strings | 参数解释: 创建节点到指定且有资源的可用区ID。请参考查询可用区信息获取可用区ID。 约束限制: 该参数不能为空数组或者数组的值为空。 创建Kafka实例,节点需要部署在1个或3个及以上可用区中。如果部署在多个可用区中,以英文逗号隔开多个可用区ID。 |
| product_id | 是 | String | 参数解释: 产品ID。产品ID可以从查询产品规格列表获取。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| maintain_begin | 否 | String | 参数解释: 维护时间窗开始时间。 约束限制: 格式为HH:mm。 取值范围: 不涉及。 默认取值: 不涉及。 |
| maintain_end | 否 | String | 参数解释: 维护时间窗结束时间。 约束限制: 格式为HH:mm。 取值范围: 不涉及。 默认取值: 不涉及。 |
| enable_publicip | 否 | Boolean | 参数解释: 是否开启公网访问功能。 约束限制: 不涉及。 取值范围:
默认取值: false。 |
| tenant_ips | 否 | Array of strings | 参数解释: 创建实例时可以手动指定实例节点的内网IP地址,仅支持指定IPv4地址。 约束限制: 指定内网IP地址数量必须小于等于创建的节点数量。 如果指定的内网IP地址数量小于创建的节点数量时,系统会自动为剩余的节点随机分配内网IP地址。 |
| publicip_id | 否 | String | 参数解释: 实例绑定的弹性IP地址的ID。获取方法:参考《弹性公网IP API参考》,调用“查询弹性公网IP列表”接口,从响应体中获取弹性公网IP的ID。 约束限制: 以英文逗号隔开多个弹性IP地址的ID。 如果开启了公网访问功能(即enable_publicip为true),该字段为必选。 取值范围: 不涉及。 默认取值: 不涉及。 |
| ssl_enable | 否 | Boolean | 参数解释: 是否开启SASL加密访问。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
| kafka_security_protocol | 否 | String | 参数解释: 开启SASL后使用的安全协议。 约束限制: 若该字段值为空,默认开启SASL_SSL认证机制。实例创建后,此参数不支持动态修改。 若创建实例时,使用了port_protocol参数,则Kafka的内网访问安全协议以及公网访问安全协议会使用port_protocol中的值,则此参数无效。 取值范围:
默认取值: 不涉及。 |
| sasl_enabled_mechanisms | 否 | Array of strings | 参数解释: 开启SASL后使用的认证机制。 约束限制: 如果开启了SASL认证功能(即ssl_enable=true),该字段为必选。若该字段值为空,默认开启PLAIN认证机制。 |
| port_protocol | 否 | PortProtocol object | 参数解释: 设置Kafka实例的接入方式。PLAINTEXT表示明文接入,SASL_SSL表示密文接入。 约束限制: 内网访问不支持关闭,明文接入和密文接入至少开启一个。 |
| retention_policy | 否 | String | 参数解释: 磁盘的容量到达容量阈值后,对于消息的处理策略。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
| ipv6_enable | 否 | Boolean | 参数解释: 是否开启IPv6。 约束限制: 仅在虚拟私有云支持IPv6时生效。 取值范围:
默认取值: false。 |
| disk_encrypted_enable | 否 | Boolean | 参数解释: 是否开启磁盘加密。 约束限制: 不涉及。 取值范围:
默认取值: false。 |
| disk_encrypted_key | 否 | String | 参数解释: 磁盘加密key,未开启磁盘加密时为空。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| connector_enable | 否 | Boolean | 参数解释: 是否开启Smart Connect功能。Smart Connect用于Kafka实例和其他云服务之间的数据同步,或者两个Kafka实例之间的数据同步,实现数据的备份或迁移。 约束限制: 不涉及。 取值范围:
默认取值: false。 |
| enable_auto_topic | 否 | Boolean | 参数解释: 是否开启kafka自动创建Topic功能。当您选择开启,向一个未创建的Topic生产或消费消息时,系统会自动创建此Topic。 约束限制: 不涉及。 取值范围:
默认取值: false。 |
| storage_spec_code | 是 | String | 参数解释: 云硬盘类型。如何选择磁盘类型请参考《云硬盘 用户指南》的“磁盘类型及性能介绍”。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
| enterprise_project_id | 否 | String | 参数解释: 企业项目ID。 约束限制: 若为企业项目账号,该参数必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
| tags | 否 | Array of TagEntity objects | 参数解释: Kafka实例的标签信息。 约束限制: 不涉及。 |
| arch_type | 否 | String | 参数解释: CPU架构。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
| vpc_client_plain | 否 | Boolean | 参数解释: VPC内网明文访问。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| bss_param | 否 | BssParam object | 参数解释: 表示包周期计费模式的相关参数。 约束限制: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| private_plain_enable | 否 | Boolean | 参数解释: 是否开启内网明文访问连接方式。 约束限制: 不涉及。 取值范围:
默认取值: false。 |
| private_sasl_ssl_enable | 否 | Boolean | 参数解释: 是否开启安全协议为SASL_SSL的内网密文接入方式。 约束限制: private_sasl_ssl_enable和private_sasl_plaintext_enable不能同时为true。 取值范围:
默认取值: false。 |
| private_sasl_plaintext_enable | 否 | Boolean | 参数解释: 是否开启安全协议为SASL_PLAINTEXT的内网密文接入方式。 约束限制: private_sasl_plaintext_enable和private_sasl_ssl_enable不能同时为true。 取值范围:
默认取值: false。 |
| public_plain_enable | 否 | Boolean | 参数解释: 是否开启公网明文访问连接方式。 约束限制: 开启公网明文接入前,需要先开启公网访问功能。 取值范围:
默认取值: false。 |
| public_sasl_ssl_enable | 否 | Boolean | 参数解释: 是否开启安全协议为SASL_SSL的公网密文接入。 约束限制: public_sasl_ssl_enable和public_sasl_plaintext_enable不能同时为true。 为true时,需要实例开启公网。 取值范围:
默认取值: false。 |
| public_sasl_plaintext_enable | 否 | Boolean | 参数解释: 是否开启安全协议为SASL_PLAINTEXT的公网密文接入方式。 约束限制: public_sasl_plaintext_enable和public_sasl_ssl_enable不能同时为true。 为true时,需要实例开启公网。 取值范围:
默认取值: false。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| key | 否 | String | 参数解释: 标签键。 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
| value | 否 | String | 参数解释: 标签值。 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| is_auto_renew | 否 | Boolean | 参数解释: 是否自动续订。 约束限制: 不涉及。 取值范围:
默认取值: false |
| charging_mode | 否 | String | 参数解释: 计费模式。 约束限制: 不涉及。 取值范围:
默认取值: postPaid。 |
| is_auto_pay | 否 | Boolean | 参数解释: 下单订购后,是否自动从客户的账户中支付,而不需要客户手动去进行支付。 约束限制: 不涉及。 取值范围:
默认取值: false |
| period_type | 否 | String | 参数解释: 订购周期类型。 约束限制: chargingMode为prePaid时生效且为必选值。 取值范围:
默认取值: 不涉及。 |
| period_num | 否 | Integer | 参数解释: 订购周期数。 约束限制: chargingMode为prePaid时生效且为必选值。 取值范围:
默认取值: 不涉及。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| instance_id | String | 参数解释: 实例ID。 取值范围: 不涉及 |
请求示例
{
"name" : "kafka-test",
"description" : "",
"engine" : "kafka",
"engine_version" : "2.7",
"storage_space" : 300,
"vpc_id" : "********-9b4a-44c5-a964-************",
"subnet_id" : "********-8fbf-4438-ba71-************",
"security_group_id" : "********-e073-4aad-991f-************",
"available_zones" : [ "********706d4c1fb0eb72f0********" ],
"product_id" : "c6.2u4g.cluster",
"ssl_enable" : true,
"kafka_security_protocol" : "SASL_SSL",
"sasl_enabled_mechanisms" : [ "SCRAM-SHA-512" ],
"storage_spec_code" : "dms.physical.storage.ultra.v2",
"ipv6_enable" : false,
"broker_num" : 3,
"arch_type" : "X86",
"enterprise_project_id" : "0",
"access_user" : "********",
"password" : "********",
"enable_publicip" : true,
"tags" : [ {
"key" : "aaa",
"value" : "111"
} ],
"retention_policy" : "time_base",
"disk_encrypted_enable" : true,
"disk_encrypted_key" : "********-b953-4875-a743-************",
"publicip_id" : "********-88fc-4a8c-86d0-************,********-16af-455d-8d54-************,********-3d69-4367-95ab-************",
"enable_auto_topic" : true,
"tenant_ips" : [ "127.xx.xx.x", "127.xx.xx.x", "127.xx.xx.x" ]
} 响应示例
状态码:200
创建实例成功。
{
"instance_id" : "8959ab1c-7n1a-yyb1-a05t-93dfc361b32d"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 创建实例成功。 |
错误码
请参见错误码。