华为云用户手册

  • 请求示例 修改实例跨VPC访问的内网IP。 POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/crossvpc/modify { "advertised_ip_contents" : { "192.168.245.246" : "192.168.245.247", "192.168.197.36" : "192.168.197.38", "192.168.190.11" : "192.168.190.11" } }
  • 响应示例 状态码: 200 查询产品规格列表成功。 { "engine" : "kafka", "versions" : [ "1.1.0", "2.3.0" ], "products" : [ { "type" : "cluster", "product_id" : "c6.2u4g.cluster", "ecs_flavor_id" : "c6.large.2", "billing_code" : "dms.platinum.c6", "arch_types" : [ "X86" ], "charging_mode" : [ "monthly", "hourly" ], "ios" : [ { "io_spec" : "dms.physical.storage.high.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] }, { "io_spec" : "dms.physical.storage.ultra.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] } ], "support_features" : [ { "name" : "connector_obs", "properties" : { "max_task" : "10", "max_node" : "10", "min_task" : "1", "min_node" : "2" } } ], "properties" : { "max_partition_per_broker" : "250", "max_broker" : "30", "max_storage_per_node" : "10000", "max_consumer_per_broker" : "4000", "min_broker" : "3", "max_bandwidth_per_broker" : "100", "min_storage_per_node" : "200", "max_tps_per_broker" : "30000", "product_alias" : "kafka.2u4g.cluster" } }, { "type" : "cluster", "product_id" : "c6.4u8g.cluster", "ecs_flavor_id" : "c6.xlarge.2", "billing_code" : "dms.platinum.c6", "arch_types" : [ "X86" ], "charging_mode" : [ "monthly", "hourly" ], "ios" : [ { "io_spec" : "dms.physical.storage.high.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] }, { "io_spec" : "dms.physical.storage.ultra.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] } ], "support_features" : [ { "name" : "connector_obs", "properties" : { "max_task" : "10", "max_node" : "10", "min_task" : "1", "min_node" : "2" } } ], "properties" : { "max_partition_per_broker" : "500", "max_broker" : "30", "max_storage_per_node" : "20000", "max_consumer_per_broker" : "4000", "min_broker" : "3", "max_bandwidth_per_broker" : "100", "min_storage_per_node" : "400", "max_tps_per_broker" : "100000", "product_alias" : "kafka.4u8g.cluster" } }, { "type" : "cluster", "product_id" : "c6.8u16g.cluster", "ecs_flavor_id" : "c6.2xlarge.2", "billing_code" : "dms.platinum.c6", "arch_types" : [ "X86" ], "charging_mode" : [ "monthly", "hourly" ], "ios" : [ { "io_spec" : "dms.physical.storage.high.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] }, { "io_spec" : "dms.physical.storage.ultra.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] } ], "support_features" : [ { "name" : "connector_obs", "properties" : { "max_task" : "10", "max_node" : "10", "min_task" : "1", "min_node" : "2" } } ], "properties" : { "max_partition_per_broker" : "1000", "max_broker" : "30", "max_storage_per_node" : "30000", "max_consumer_per_broker" : "4000", "min_broker" : "3", "max_bandwidth_per_broker" : "100", "min_storage_per_node" : "800", "max_tps_per_broker" : "150000", "product_alias" : "kafka.8u16g.cluster" } }, { "type" : "cluster", "product_id" : "c6.12u24g.cluster", "ecs_flavor_id" : "c6.3xlarge.2", "billing_code" : "dms.platinum.c6", "arch_types" : [ "X86" ], "charging_mode" : [ "monthly", "hourly" ], "ios" : [ { "io_spec" : "dms.physical.storage.high.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] }, { "io_spec" : "dms.physical.storage.ultra.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] } ], "support_features" : [ { "name" : "connector_obs", "properties" : { "max_task" : "10", "max_node" : "10", "min_task" : "1", "min_node" : "2" } } ], "properties" : { "max_partition_per_broker" : "1500", "max_broker" : "30", "max_storage_per_node" : "30000", "max_consumer_per_broker" : "4000", "min_broker" : "3", "max_bandwidth_per_broker" : "100", "min_storage_per_node" : "1200", "max_tps_per_broker" : "200000", "product_alias" : "kafka.12u24g.cluster" } }, { "type" : "cluster", "product_id" : "c6.16u32g.cluster", "ecs_flavor_id" : "c6.4xlarge.2", "billing_code" : "dms.platinum.c6", "arch_types" : [ "X86" ], "charging_mode" : [ "monthly", "hourly" ], "ios" : [ { "io_spec" : "dms.physical.storage.high.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] }, { "io_spec" : "dms.physical.storage.ultra.v2", "type" : "evs", "available_zones" : [ "xxx", "xxx" ], "unavailable_zones" : [ "xxx", "xxx" ] } ], "support_features" : [ { "name" : "connector_obs", "properties" : { "max_task" : "10", "max_node" : "10", "min_task" : "1", "min_node" : "2" } } ], "properties" : { "max_partition_per_broker" : "2000", "max_broker" : "30", "max_storage_per_node" : "30000", "max_consumer_per_broker" : "4000", "min_broker" : "3", "max_bandwidth_per_broker" : "100", "min_storage_per_node" : "1600", "max_tps_per_broker" : "250000", "product_alias" : "kafka.16u32g.cluster" } } ] }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 engine String 分布式消息服务的产品类型。 versions Array of strings 支持的产品版本类型。 products Array of ListEngineProductsEntity objects 产品规格的详细信息。 表4 ListEngineProductsEntity 参数 参数类型 描述 type String 产品类型。当前产品类型有单机和集群。 product_id String 产品ID。 ecs_flavor_id String 底层资源类型。 billing_code String 账单计费类型。 arch_types Array of strings CPU架构。 charging_mode Array of strings 计费模式。monthly:包年/包月类型。hourly:按需类型。 ios Array of ListEngineIosEntity objects 支持的磁盘IO类型列表。 support_features Array of ListEngineSupportFeaturesEntity objects 当前规格实例支持的功能特性列表。 properties ListEnginePropertiesEntity object 当前规格实例的属性。 表5 ListEngineIosEntity 参数 参数类型 描述 io_spec String 磁盘IO编码。 type String 磁盘类型。 available_zones Array of strings 可用区。 unavailable_zones Array of strings 不可用区。 表6 ListEngineSupportFeaturesEntity 参数 参数类型 描述 name String 功能名称。 properties ListEngineSupportFeaturesPropertiesEntity object 实例支持的功能属性描述。 表7 ListEngineSupportFeaturesPropertiesEntity 参数 参数类型 描述 max_task String 转储功能的最大任务数。 min_task String 转储功能的最小任务数。 max_node String 转储功能的最大节点数。 min_node String 转储功能的最小节点数。 表8 ListEnginePropertiesEntity 参数 参数类型 描述 max_partition_per_broker String 每个Broker的最大分区数。 max_broker String Broker的最大个数。 max_storage_per_node String 每个节点的最大存储。单位为GB。 max_consumer_per_broker String 每个Broker的最大消费者数。 min_broker String Broker的最小个数。 max_bandwidth_per_broker String 每个Broker的最大带宽。 min_storage_per_node String 每个节点的最小存储。单位为GB。 max_tps_per_broker String 每个Broker的最大TPS。 product_alias String product_id的别名。
  • 请求示例 修改实例的名称和描述。 PUT https://{endpoint}/v2/{project_id}/instances/{instance_id} { "name" : "kafka001", "description" : "kafka description" } 修改实例的名称、描述和维护时间窗。 PUT https://{endpoint}/v2/{project_id}/instances/{instance_id} { "name" : "dms002", "description" : "instance description", "maintain_begin" : "02:00:00", "maintain_end" : "06:00:00" } 修改容量阈值策略。 PUT https://{endpoint}/v2/{project_id}/instances/{instance_id} { "retention_policy" : "time_base" }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 实例名称。 由英文字符开头,只能由英文字母、数字、中划线、下划线组成,长度为4~64的字符。 description 否 String 实例的描述信息。 长度不超过1024的字符串。 说明: \与"在json报文中属于特殊字符,如果参数值中需要显示\或者"字符,请在字符前增加转义字符\,比如\或者"。 maintain_begin 否 String 维护时间窗开始时间,格式为HH:mm:ss。 maintain_end 否 String 维护时间窗结束时间,格式为HH:mm:ss。 security_group_id 否 String 安全组ID。 获取方法如下:登录虚拟私有云服务的控制台界面,在安全组的详情页面查找安全组ID。 retention_policy 否 String 容量阈值策略。 支持两种策略模式: produce_reject: 生产受限 time_base: 自动删除 enterprise_project_id 否 String 企业项目。
  • 响应示例 状态码: 200 查询转储任务列表成功。 { "tasks" : [ { "task_id" : "2e148bed-3038-4617-8ade-b52e84a33eeb", "task_name" : "obsTransfer-1122976956", "destination_type" : "OBS", "create_time" : 1592309487621, "status" : "RUNNING", "topics" : "topic-test" } ], "total_number" : 1, "max_tasks" : 9, "quota_tasks" : 10 }
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 tasks Array of tasks objects 转储任务列表。 total_number Integer 转储任务总数。 max_tasks Integer 总的支持任务个数。 quota_tasks Integer 任务总数的配额。 表3 tasks 参数 参数类型 描述 task_id String 任务ID。 task_name String 转储任务名称。 destination_type String 转储任务类型。 create_time Long 转储任务创建时间戳。 status String 转储任务状态。 topics String 返回任务转存的topics列表或者正则表达式。
  • URI POST /v2/{project_id}/kafka/instances/{instance_id}/delete-connector-order 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 最小长度:1 最大长度:100 instance_id 是 String 实例ID。 最小长度:1 最大长度:100
  • 请求示例 POST https://{endpoint}/v2/{project_id}/kafka/instances/{instance_id}/delete-connector-order { "instance_id" : "20c6b355-5d95-45ef-b476-e38bcccce0d7", "url" : "https://console.xxx.xxx.com/dms/?engine=all®ion=xxx&locale=xxx#/queue/manager/newKafkaList" }
  • URI GET /v1/{project_id}/instances/{instance_id}/topics/{topic_name}/accesspolicy 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID。 topic_name 是 String Topic名称。
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 name String topic名称。 topic_type Integer topic类型。 policies Array of PolicyEntity objects 权限列表。 表3 PolicyEntity 参数 参数类型 描述 owner Boolean 是否为创建topic时所选择的用户。 user_name String 用户名。 access_policy String 权限类型。 all:拥有发布、订阅权限; pub:拥有发布权限; sub:拥有订阅权限。
  • 响应示例 状态码: 200 查询成功。 { "name" : "topic-test", "policies" : [ { "owner" : false, "user_name" : "xxxa", "access_policy" : "pub" }, { "owner" : false, "user_name" : "root", "access_policy" : "all" } ], "topic_type" : 0 }
  • 响应示例 状态码: 200 查询成功。 { "maintain_windows" : [ { "default" : false, "seq" : 1, "begin" : "22", "end" : "02" }, { "default" : true, "seq" : 2, "begin" : "02", "end" : "06" }, { "default" : false, "seq" : 3, "begin" : "06", "end" : "10" }, { "default" : false, "seq" : 4, "begin" : "10", "end" : "14" }, { "default" : false, "seq" : 5, "begin" : "14", "end" : "18" }, { "default" : false, "seq" : 6, "begin" : "18", "end" : "22" } ] }
  • 响应参数 状态码: 200 表1 响应Body参数 参数 参数类型 描述 maintain_windows Array of MaintainWindowsEntity objects 支持的维护时间窗列表。 表2 MaintainWindowsEntity 参数 参数类型 描述 default Boolean 是否为默认时间段。 end String 维护时间窗结束时间。 begin String 维护时间窗开始时间。 seq Integer 序号。
  • 响应示例 状态码: 200 查询所有实例列表成功。 查询所有实例列表成功返回示例如下。 { "instances" : [ { "name" : "kafka-2085975099", "engine" : "kafka", "port" : 9092, "status" : "RUNNING", "type" : "cluster", "specification" : "100MB", "engine_version" : "1.1.0", "connect_address" : "192.168.0.100,192.168.0.61,192.168.0.72", "instance_id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "resource_spec_code" : "dms.instance.kafka.cluster.c3.mini", "charging_mode" : 1, "vpc_id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "vpc_name" : "dms-test", "created_at" : "1585618587087", "product_id" : "00300-30308-0--0", "security_group_id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "security_group_name" : "Sys-default", "subnet_id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "available_zones" : [ "38b0f7a602344246bcb0da47b5d548e7" ], "user_id" : "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "user_name" : "paas_dms", "kafka_manager_enable" : false, "kafka_manager_user" : "root", "maintain_begin" : "02:00:00", "maintain_end" : "06:00:00", "enable_log_collection" : false, "storage_space" : 492, "total_storage_space" : 600, "used_storage_space" : 25, "partition_num" : "300", "enable_publicip" : false, "ssl_enable" : false, "management_connect_address" : "https://192.168.0.100:9999", "cross_vpc_info" : "{\"192.168.0.61\":{\"advertised_ip\":\"192.168.0.61\",\"port\":9011,\"port_id\":\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"},\"192.168.0.72\":{\"advertised_ip\":\"192.168.0.72\",\"port\":9011,\"port_id\":\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"},\"192.168.0.100\":{\"advertised_ip\":\"192.168.0.100\",\"port\":9011,\"port_id\":\"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\"}}", "storage_resource_id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "storage_spec_code" : "dms.physical.storage.ultra", "service_type" : "advanced", "storage_type" : "hec", "enterprise_project_id" : "0", "is_logical_volume" : true, "extend_times" : 0, "retention_policy" : "produce_reject", "ipv6_enable" : false, "ipv6_connect_addresses" : [ ], "connector_enable" : false, "connector_id" : "", "rest_enable" : false, "rest_connect_address" : "", "kafka_public_status" : "closed", "public_bandwidth" : 0, "message_query_inst_enable" : true, "vpc_client_plain" : false, "support_features" : "kafka.new.pod.port,feature.physerver.kafka.topic.modify,feature.physerver.kafka.topic.accesspolicy,message_trace_enable,features.pod.token.access,feature.physerver.kafka.pulbic.dynamic,roma_app_enable,features.log.collection,auto_topic_switch,feature.physerver.kafka.user.manager", "trace_enable" : false, "agent_enable" : false, "pod_connect_address" : "100.86.75.15:9080,100.86.142.77:9080,100.86.250.167:9080", "disk_encrypted" : false, "kafka_private_connect_address" : "192.168.0.61:9092,192.168.0.100:9092,192.168.0.72:9092", "enable_auto_topic" : false, "ces_version" : "linux" } ], "instance_num" : 1 }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 instances Array of ShowInstanceResp objects 实例列表 instance_num Integer 实例数量。 表4 ShowInstanceResp 参数 参数类型 描述 name String 实例名称。 engine String 引擎。 engine_version String 版本。 description String 实例描述。 specification String 实例规格。 storage_space Integer 消息存储空间,单位:GB。 partition_num String Kafka实例的分区数量。 used_storage_space Integer 已使用的消息存储空间,单位:GB。 connect_address String 实例连接IP地址。 port Integer 实例连接端口。 status String 实例的状态。详细状态说明请参考实例状态说明。 instance_id String 实例ID。 resource_spec_code String 资源规格标识。 dms.instance.kafka.cluster.c3.mini:Kafka实例的基准带宽为100MByte/秒。 dms.instance.kafka.cluster.c3.small.2:Kafka实例的基准带宽为300MByte/秒。 dms.instance.kafka.cluster.c3.middle.2:Kafka实例的基准带宽为600MByte/秒。 dms.instance.kafka.cluster.c3.high.2:Kafka实例的基准带宽为1200MByte/秒。 charging_mode Integer 付费模式,1表示按需计费,0表示包年/包月计费。 vpc_id String VPC ID。 vpc_name String VPC的名称。 created_at String 完成创建时间。 格式为时间戳,指从格林威治时间 1970年01月01日00时00分00秒起至指定时间的偏差总毫秒数。 subnet_name String 子网名称。 subnet_cidr String 子网网段。 user_id String 用户ID。 user_name String 用户名。 access_user String 实例访问用户名。 order_id String 订单ID,只有在包周期计费时才会有order_id值,其他计费方式order_id值为空。 maintain_begin String 维护时间窗开始时间,格式为HH:mm:ss。 maintain_end String 维护时间窗结束时间,格式为HH:mm:ss。 enable_publicip Boolean 实例是否开启公网访问功能。 true:开启 false:未开启 management_connect_address String Kafka实例的Kafka Manager连接地址。 ssl_enable Boolean 是否开启安全认证。 true:开启 false:未开启 kafka_security_protocol String 开启SASL后使用的安全协议。 SASL_SSL: 采用SSL证书进行加密传输,支持账号密码认证,安全性更高。 SASL_PLAINTEXT: 明文传输,支持账号密码认证,性能更好,建议使用SC RAM -SHA-512机制。 sasl_enabled_mechanisms Array of strings 开启SASL后使用的认证机制。 PLAIN: 简单的用户名密码校验。 SCRAM-SHA-512: 用户凭证校验,安全性比PLAIN机制更高。 ssl_two_way_enable Boolean 是否开启双向认证。 cert_replaced Boolean 是否能够证书替换。 public_management_connect_address String 公网访问Kafka Manager连接地址。 enterprise_project_id String 企业项目ID。 is_logical_volume Boolean 实例扩容时用于区分老实例与新实例。 true:新创建的实例,允许磁盘动态扩容不需要重启。 false:老实例 extend_times Integer 实例扩容磁盘次数,如果超过20次则无法扩容磁盘。 enable_auto_topic Boolean 是否打开kafka自动创建topic功能。 true:开启 false:关闭 type String 实例类型:集群,cluster。 product_id String 产品标识。 security_group_id String 安全组ID。 security_group_name String 租户安全组名称。 subnet_id String 子网ID。 available_zones Array of strings 实例节点所在的可用区,返回“可用区ID”。 total_storage_space Integer 总共消息存储空间,单位:GB。 public_connect_address String 实例公网连接IP地址。当实例开启了公网访问,实例才包含该参数。 storage_resource_id String 存储资源ID。 storage_spec_code String IO规格。 service_type String 服务类型。 storage_type String 存储类型。 retention_policy String 消息老化策略。 kafka_public_status String Kafka公网开启状态。 public_bandwidth Integer kafka公网访问带宽。 kafka_manager_enable Boolean 是否已开启kafka manager kafka_manager_user String 登录Kafka Manager的用户名。 enable_log_collection Boolean 是否开启消息收集功能。 cross_vpc_info String 跨VPC访问信息。 ipv6_enable Boolean 是否开启ipv6。 ipv6_connect_addresses Array of strings IPv6的连接地址。 connector_enable Boolean 是否开启转储。新规格产品暂不支持开启转储。 connector_id String 转储任务ID。 rest_enable Boolean 是否开启Kafka rest功能。 rest_connect_address String Kafka rest连接地址。 public_boundwidth Integer kafka公网访问带宽。待删除版本。 message_query_inst_enable Boolean 是否开启消息查询功能。 vpc_client_plain Boolean 是否开启VPC明文访问。 support_features String Kafka实例支持的特性功能。 trace_enable Boolean 是否开启消息轨迹功能。 agent_enable Boolean 是否开启代理。 pod_connect_address String 租户侧连接地址。 disk_encrypted Boolean 是否开启磁盘加密。 disk_encrypted_key String 磁盘加密key,未开启磁盘加密时为空。 kafka_private_connect_address String Kafka实例私有连接地址。 ces_version String 云监控 版本。 public_access_enabled String 区分实例什么时候开启的公网访问:true,actived,closed,false。 node_num Integer 节点数。 enable_acl Boolean 是否开启访问控制。 new_spec_billing_enable Boolean 是否启用新规格计费。 broker_num Integer 节点数量。 tags Array of TagEntity objects 标签列表。 dr_enable Boolean 是否为容灾实例。 表5 TagEntity 参数 参数类型 描述 key String 标签键。 不能为空。 对于同一个实例,Key值唯一。 长度为1~128个字符(中文也可以输入128个字符)。 由任意语种字母、数字、空格和字符组成,字符仅支持_ . : = + - @ 首尾字符不能为空格。 value String 标签值。 长度为0~255个字符(中文也可以输入255个字符)。 由任意语种字母、数字、空格和字符组成,字符仅支持_ . : = + - @ 首尾字符不能为空格。
  • URI GET /v2/{project_id}/instances 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 表2 Query参数 参数 是否必选 参数类型 描述 engine 否 String 消息引擎:kafka。 缺省值:kafka name 否 String 实例名称。 instance_id 否 String 实例ID。 status 否 String 实例状态。 详细状态说明请参考实例状态说明。 include_failure 否 String 是否返回创建失败的实例数。 当参数值为“true”时,返回创建失败的实例数。参数值为“false”,不返回创建失败的实例数。 exact_match_name 否 String 是否按照实例名称进行精确匹配查询。 默认为“false”,表示模糊匹配实例名称查询。若参数值为“true”表示按照实例名称进行精确匹配查询。 enterprise_project_id 否 String 企业项目ID。 offset 否 String 偏移量,表示从此偏移量开始查询, offset大于等于0。 limit 否 String 当次查询返回的最大实例个数,默认值为10,取值范围为1~50。
  • 创建Kafka实例 如下示例是创建Kafka实例的请求消息: { "name": "kafka-demo", "engine": "kafka", "engine_version": 2.7, "broker_num": 3, "storage_space": 300, "vpc_id": "ead6c5ff-xxx-9ba91820e72c", "security_group_id": "aa75ae22-xxx-a9dec8c73220", "subnet_id": "3cb6afa2-xxx-05a7f671d6a8", "available_zones": [ "effdcbcxxx6b42f56533" ], "product_id": "c6.2u4g.cluster", "storage_spec_code": "dms.physical.storage.high.v2" } name:实例名称,由您自行定义。 engine:消息引擎,设置kafka。 engine_version:消息引擎的版本。 broker_num:代理个数。 storage_space:消息存储空间,单位GB。具体取值范围,请参考创建实例。 vpc_id:Kafka实例所在的VPC(虚拟私有云)的ID。请参考创建实例获取。 security_group_id:安全组ID。请参考创建实例获取。 subnet_id:VPC内子网的网络ID。请参考创建实例获取。 available_zones:创建节点到指定的AZ ID,该参数不能为空数组或者数组的值为空,请参考查询可用区信息获取。 product_id:产品标识。请参考查询产品规格列表获取。 storage_spec_code:存储IO规格。具体取值范围,请参考创建实例。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 total Integer 总条数 最小值:0 最大值:100 partitions Array of partitions objects 分区数组 数组长度:0 - 50 表4 partitions 参数 参数类型 描述 partition Integer 分区ID 最小值:0 最大值:100 start_offset Long 起始偏移量 最小值:0 最大值:9223372036854775807 last_offset Long 最后偏移量 最小值:0 最大值:9223372036854775807 message_count Long 分区消息数 最小值:0 最大值:9223372036854775807 last_update_time Long 最近更新时间 最小值:0 最大值:9223372036854775807
  • 响应示例 状态码: 200 查询topic的分区列表成功 { "total" : 3, "partitions" : [ { "partition" : 0, "start_offset" : 0, "last_offset" : 1216303, "message_count" : 1216303, "last_update_time" : 1688011291458 }, { "partition" : 1, "start_offset" : 0, "last_offset" : 985447, "message_count" : 985447, "last_update_time" : 1688011291469 }, { "partition" : 2, "start_offset" : 0, "last_offset" : 923340, "message_count" : 923340, "last_update_time" : 1688011291526 } ] }
  • URI GET /v2/{project_id}/kafka/instances/{instance_id}/topics/{topic}/partitions 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 最小长度:1 最大长度:64 instance_id 是 String 实例id 最小长度:1 最大长度:64 topic 是 String 主题 最小长度:1 最大长度:200 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 Integer 偏移量,表示查询该偏移量后面的记录 最小值:0 最大值:10000 limit 否 Integer 查询返回记录的数量限制 最小值:1 最大值:50
  • 请求示例 修改Topic参数,topic-1284340884的老化时间修改为72小时,分区数修改为6,新增分区分布在broker-1和broker-2上,不同步复制,不同步落盘,消息时间类型为LogAppendTime,最大批处理大小10485760。 PUT https://{endpoint}/v2/{project_id}/instances/{instance_id}/topics { "topics" : [ { "id" : "test01", "retention_time" : 72, "sync_replication" : false, "sync_message_flush" : false, "new_partition_numbers" : 6, "new_partition_brokers" : [ 1, 2 ], "topic_other_configs" : [ { "name" : "message.timestamp.type", "value" : "LogAppendTime" }, { "name" : "max.message.bytes", "value" : 10485760 } ], "topic_desc" : "This is a test topic" } ] }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 topics 否 Array of topics objects 修改的topic列表。 表3 topics 参数 是否必选 参数类型 描述 id 是 String topic名称,不支持修改。 retention_time 否 Integer 老化时间,单位小时。 sync_replication 否 Boolean 是否同步复制。 sync_message_flush 否 Boolean 是否同步落盘。 new_partition_numbers 否 Integer 分区数。 new_partition_brokers 否 Array of integers 增加分区时指定broker列表 topic_other_configs 否 Array of topic_other_configs objects topic配置 topic_desc 否 String topic描述 表4 topic_other_configs 参数 是否必选 参数类型 描述 name 否 String 配置名称 value 否 String 配置值
  • 响应消息 响应参数 参数说明见表2。 表2 响应参数说明 参数 类型 说明 topic String topic名称。 partitions Array of object partitions 分区列表。参数查看表3。 group_subscribed Array of String 订阅该topic的消费组名称列表。 表3 partitions参数说明 参数 类型 说明 partition Integer 分区ID。 leader Integer leader副本所在节点的id。 leo long 分区leader副本的LEO(Log End Offset)。 hw long 分区高水位(HW,High Watermark)。 lso long 分区leader副本的LSO(Log Start Offset)。 last_update_timestamp long 分区上次写入消息的时间。 replicas Array of object replicas 副本列表。参数查看表4。 表4 replicas参数说明 参数 类型 说明 broker Integer 副本所在的节点ID。 leader Boolean 该副本是否为leader。 in_sync Boolean 该副本是否在ISR副本中。 size Long 该副本当前日志大小。 lag Long 该副本当前落后hw的消息数。 响应示例 { "topic": "test", "partitions": [ { "partition": 0, "leader": 2, "replicas": [ { "broker": 2, "leader": true, "in_sync": true, "size": 123971146, "lag": 0 }, { "broker": 1, "leader": false, "in_sync": true, "size": 123971146, "lag": 0 }, { "broker": 0, "leader": false, "in_sync": true, "size": 123971146, "lag": 0 } ], "lso": 0, "leo": 13598, "hw": 13598, "last_update_timestamp": 1571477180985 }, { "partition": 2, "leader": 1, "replicas": [ { "broker": 1, "leader": true, "in_sync": true, "size": 123889531, "lag": 0 }, { "broker": 0, "leader": false, "in_sync": true, "size": 123889531, "lag": 0 }, { "broker": 2, "leader": false, "in_sync": true, "size": 123889531, "lag": 0 } ], "lso": 0, "leo": 13601, "hw": 13601, "last_update_timestamp": 1571477077146 }, { "partition": 1, "leader": 0, "replicas": [ { "broker": 0, "leader": true, "in_sync": true, "size": 127245604, "lag": 0 }, { "broker": 2, "leader": false, "in_sync": true, "size": 127245604, "lag": 0 }, { "broker": 1, "leader": false, "in_sync": true, "size": 127245604, "lag": 0 } ], "lso": 0, "leo": 13599, "hw": 13599, "last_update_timestamp": 1571477172959 } ], "group_subscribed": [ "test-consumer-group" ] }
  • URI GET /v2/{project_id}/instances/{instance_id}/topics 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID。 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 String 偏移量,表示从此偏移量开始查询, offset大于等于0。 limit 否 String 当次查询返回的最大实例个数,默认值为10,取值范围为1~50。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 total Integer topic总数。 size Integer 分页查询的大小。 remain_partitions Integer 剩余分区数。 max_partitions Integer 分区总数。 topic_max_partitions Integer 单个topic最大占用分区数。 topics Array of TopicEntity objects topic列表。 表4 TopicEntity 参数 参数类型 描述 policiesOnly Boolean 是否为默认策略。 name String topic名称。 replication Integer 副本数,配置数据的可靠性。 partition Integer topic分区数,设置消费的并发数。 retention_time Integer 消息老化时间。 sync_replication Boolean 是否开启同步复制,开启后,客户端生产消息时相应的也要设置acks=-1,否则不生效,默认关闭。 sync_message_flush Boolean 是否使用同步落盘。默认值为false。同步落盘会导致性能降低。 external_configs Object 扩展配置。 topic_type Integer topic类型(0:普通Topic 1:系统(内部)Topic)。 topic_other_configs Array of topic_other_configs objects topic其他配置 topic_desc String topic描述 created_at Long topic创建时间 表5 topic_other_configs 参数 参数类型 描述 name String 配置名称 valid_values String 配置有效值 default_value String 配置默认值 config_type String 配置类型:dynamic/static value String 配置值 value_type String 配置值类型
  • 响应示例 状态码: 200 查询成功。 { "total" : 1, "size" : 0, "topics" : [ { "policiesOnly" : false, "name" : "Topic-test01", "replication" : 3, "partition" : 3, "retention_time" : 72, "sync_replication" : "false", "sync_message_flush" : "false", "topic_other_configs" : [ { "name" : "max.message.bytes", "valid_values" : "[0...10485760]", "default_value" : "10485760", "config_type" : "dynamic", "value" : "10485760", "value_type" : "int" }, { "name" : "message.timestamp.type", "valid_values" : "[CreateTime, LogAppendTime]", "default_value" : "LogAppendTime", "config_type" : "dynamic", "value" : "LogAppendTime", "value_type" : "string" } ], "external_configs" : { }, "topic_type" : 0, "topic_desc" : "This is a test topic", "created_at" : 1688112779916 } ], "remain_partitions" : 294, "max_partitions" : 300, "topic_max_partitions" : 200 }
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 users Array of ShowInstanceUsersEntity objects 用户列表。 表3 ShowInstanceUsersEntity 参数 参数类型 描述 user_name String 用户名称。 由英文字符开头,只能由英文字母、数字、中划线、下划线组成,长度为4~64的字符。 user_desc String 用户描述。 role String 用户角色。 default_app Boolean 是否为默认应用。 created_time Long 创建时间。
  • 响应示例 状态码: 200 查询成功。 { "users" : [ { "user_name" : "xxxa", "role" : "guest", "default_app" : false, "created_time" : 1615431764734 }, { "user_name" : "test", "role" : "guest", "default_app" : false, "created_time" : 1615364062463 }, { "user_name" : "ROOT", "role" : "guest", "default_app" : false, "created_time" : 1617194246328 } ] }
  • 响应消息 响应参数 参数说明见表3。 表3 参数说明 参数 类型 说明 topics Array Topic列表 表4 topics参数说明 参数 类型 说明 id String Topic名称 success Boolean 是否删除成功。 响应示例 { "topics" : [{ "id" : "haha", "success" : true }, { "id" : "aabb", "success" : true } ] }
共100000条