更新时间:2022-02-21 GMT+08:00

创建Kafka实例

功能介绍

使用API创建Kafka实例。

URI

POST /v1.0/{project_id}/instances

参数说明见表1

表1 参数说明

参数

类型

必选

说明

project_id

String

项目ID。

请求消息

请求参数

参数说明见表2

表2 参数说明

参数

类型

是否必选

说明

name

String

实例名称。

由英文字符开头,只能由英文字母、数字、中划线、下划线组成,长度为4~64的字符。

description

String

实例的描述信息。

长度不超过1024的字符串。

说明:

\与"在json报文中属于特殊字符,如果参数值中需要显示\或者"字符,请在字符前增加转义字符\,比如\\或者\"

engine

String

消息引擎。取值填写为:kafka。

engine_version

String

消息引擎的版本。取值支持1.1.0和2.3.0。

specification

String

Kafka实例的基准带宽,表示单位时间内传送的最大数据量,单位MB。

取值范围为:

  • 100MB
  • 300MB
  • 600MB
  • 1200MB

storage_space

Integer

消息存储空间,单位GB。

  • Kafka实例规格为100MB时,存储空间取值范围600GB ~ 90000GB。
  • Kafka实例规格为300MB时,存储空间取值范围1200GB ~ 90000GB。
  • Kafka实例规格为600MB时,存储空间取值范围2400GB ~ 90000GB。
  • Kafka实例规格为1200MB时,存储空间取值范围4800GB ~ 90000GB。

partition_num

Integer

Kafka实例的最大分区数量。

  • 参数specification为100MB时,取值300
  • 参数specification为300MB时,取值900
  • 参数specification为600MB时,取值1800
  • 参数specification为1200MB时,取值1800

access_user

String

当ssl_enable为true时,该参数必选, ssl_enable为false时,该参数无效。

认证用户名,只能由英文字母、数字、中划线、下划线组成,长度为4~64的字符。

password

String

当ssl_enable为true时,该参数必选, ssl_enable为false时,该参数无效。

实例的认证密码。

复杂度要求:

  • 输入长度为8到32位的字符串。
  • 必须包含如下四种字符中的三种组合:
    • 小写字母
    • 大写字母
    • 数字
    • 特殊字符包括(`~!@#$%^&*()-_=+\|[{}]:'",<.>/?)

vpc_id

String

虚拟私有云ID。

获取方法如下:

  • 方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。
  • 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考《虚拟私有云 API参考》的“查询VPC列表”。

security_group_id

String

指定实例所属的安全组。

获取方法如下:

  • 方法1:登录虚拟私有云服务的控制台界面,在安全组的详情页面查找安全组ID。
  • 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考《虚拟私有云 API参考》的“查询安全组列表”。

subnet_id

String

子网信息。

获取方法如下:

  • 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。
  • 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考《虚拟私有云 API参考》的“查询子网列表”。

available_zones

Array

创建节点到指定且有资源的可用区ID。该参数不能为空数组或者数组的值为空,详情请参考查询可用区信息查询得到。在查询时,请注意查看该可用区是否有资源。

创建Kafka实例,支持节点部署在1个或3个及3个以上的可用区。在为节点指定可用区时,用逗号分隔开。

product_id

String

产品标识。

获取方法,请参考查询产品规格列表

kafka_manager_user

String

表示登录Kafka Manager的用户名。只能由英文字母、数字、中划线、下划线组成,长度为4~64的字符。

kafka_manager_password

String

表示登录Kafka Manager的密码。

复杂度要求:

  • 输入长度为8到32位的字符串。
  • 必须包含如下四种字符中的三种组合:
    • 小写字母
    • 大写字母
    • 数字
    • 特殊字符包括(`~!@#$%^&*()-_=+\|[{}]:'",<.>/?)

maintain_begin

String

维护时间窗开始时间,格式为HH:mm:ss。

  • 维护时间窗开始和结束时间必须为指定的时间段,可参考查询维护时间窗时间段获取。
  • 开始时间必须为22:00:00、02:00:00、06:00:00、10:00:00、14:00:00和18:00:00。
  • 该参数不能单独为空,若该值为空,则结束时间也为空。系统分配一个默认开始时间02:00:00。

maintain_end

String

维护时间窗结束时间,格式为HH:mm:ss。

  • 维护时间窗开始和结束时间必须为指定的时间段,可参考查询维护时间窗时间段获取。
  • 结束时间在开始时间基础上加四个小时,即当开始时间为22:00:00时,结束时间为02:00:00。
  • 该参数不能单独为空,若该值为空,则开始时间也为空,系统分配一个默认结束时间06:00:00。

ssl_enable

Boolean

是否打开SSL加密访问。

  • true:打开SSL加密访问。
  • false:不打开SSL加密访问。

retention_policy

String

磁盘的容量到达容量阈值后,对于消息的处理策略。取值如下:

  • time_base:自动删除
  • produce_reject:生产受限

enable_auto_topic

Boolean

是否打开kafka自动创建topic功能。

  • true:开启
  • false:关闭

当您选择开启,表示生产或消费一个未创建的Topic时,会自动创建一个包含3个分区和3个副本的Topic。

storage_spec_code

String

存储IO规格。

取值范围:

  • 参数specification为100MB时,取值dms.physical.storage.high或者dms.physical.storage.ultra
  • 参数specification为300MB时,取值dms.physical.storage.high或者dms.physical.storage.ultra
  • 参数specification为600MB时,取值dms.physical.storage.ultra
  • 参数specification为1200MB时,取值dms.physical.storage.ultra

enterprise_project_id

String

企业项目ID。

{
	"name": "kafka-test",
	"description": "",
	"engine": "kafka",
	"engine_version": "XXXX",
	"storage_space": 600,
	"access_user": "",
	"password": "",
	"kafka_manager_user": "******",
	"kafka_manager_password": "******",
	"vpc_id": "1e93f86e-13af-46c8-97d6-d40fa62b76c2",
	"security_group_id": "0aaa0033-bf7f-4c41-a6c2-18cd04cad2c8",
	"subnet_id": "b5fa806c-35e7-4299-b659-b39398dd4718",
	"available_zones": ["d573142f24894ef3bd3664de068b44b0"],
	"product_id": "00300-30308-0--0",
	"maintain_begin": "22:00:00",
	"maintain_end": "02:00:00",
	"ssl_enable": false,
	"enterprise_project_id": "0",
	"specification": "100MB",
	"partition_num": "300",
	"retention_policy": "produce_reject",
        "enable_auto_topic": true,
	"storage_spec_code": "dms.physical.storage.ultra"
}

响应消息

响应参数

参数说明见表3

表3 参数说明

参数

类型

说明

instance_id

String

实例ID

响应示例

{  
    "instance_id": "8959ab1c-7n1a-yyb1-a05t-93dfc361b32d"  
}

状态码

操作成功的状态码如表4所示,其他响应见状态码

表4 状态码

状态码

描述

200

创建实例成功。