华为云用户手册

  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 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: 明文传输,支持账号密码认证,性能更好,建议使用SCRAM-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 是否为容灾实例。 表3 TagEntity 参数 参数类型 描述 key String 标签键。 不能为空。 对于同一个实例,Key值唯一。 长度为1~128个字符(中文也可以输入128个字符)。 由任意语种字母、数字、空格和字符组成,字符仅支持_ . : = + - @ 首尾字符不能为空格。 value String 标签值。 长度为0~255个字符(中文也可以输入255个字符)。 由任意语种字母、数字、空格和字符组成,字符仅支持_ . : = + - @ 首尾字符不能为空格。
  • URI POST /v2/{project_id}/instances/{instance_id}/management/topics/{topic}/partitions-reassignment 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID。 topic 是 String Topic名称。
  • URI GET /v2/{project_id}/connectors/{connector_id}/sink-tasks/{task_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 connector_id 是 String 实例转储ID。 请参考查询实例返回的数据。 task_id 是 String 转储任务ID。 表2 Query参数 参数 是否必选 参数类型 描述 topic-info 否 String 是否包含topic信息。默认是false。
  • 响应示例 状态码: 200 查询单个转储任务成功。 { "task_name" : "obsTransfer-56997523", "destination_type" : "OBS", "create_time" : 1628126621283, "status" : "RUNNING", "topics" : "topic-sdk-no-delete", "obs_destination_descriptor" : { "consumer_strategy" : "earliest", "destination_file_type" : "TEXT", "obs_bucket_name" : "testobs", "obs_path" : "obsTransfer-56997523", "partition_format" : "yyyy/MM/dd/HH/mm", "record_delimiter" : "", "deliver_time_interval" : 300, "obs_part_size" : 5242880 }, "topics_info" : [ { "topic" : "topic-sdk-no-delete", "partitions" : [ { "partition_id" : "2", "status" : "RUNNING", "last_transfer_offset" : "3", "log_end_offset" : "3", "lag" : "0" }, { "partition_id" : "1", "status" : "RUNNING", "last_transfer_offset" : "3", "log_end_offset" : "3", "lag" : "0" }, { "partition_id" : "0", "status" : "RUNNING", "last_transfer_offset" : "3", "log_end_offset" : "3", "lag" : "0" } ] } ] }
  • 响应消息体(可选) 该部分可选。响应消息体通常以结构化格式(如JSON或XML)返回,与响应消息头中Content-type对应,传递除响应消息头之外的内容。 对于获取用户Token接口,返回如下消息体。为篇幅起见,这里只展示部分内容。 { "token": { "expires_at": "2019-02-13T06:52:13.855000Z", "methods": [ "password" ], "catalog": [ { "endpoints": [ { "region_id": "XXXXXX", ...... 当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所示。 { "error_msg": "The format of message is error", "error_code": "AS.0001" } 其中,error_code表示错误码,error_msg表示错误描述信息。
  • 请求示例 创建一个Topic,Topic名称为test01。 POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/topics { "id" : "test01", "partition" : 3, "replication" : 3, "retention_time" : 72, "sync_message_flush" : false, "sync_replication" : "false", "topic_other_configs" : [ { "name" : "message.timestamp.type", "value" : "LogAppendTime" }, { "name" : "max.message.bytes", "value" : 10485760 } ], "topic_desc" : "" }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 id 是 String topic名称,长度为3-200,以字母开头且只支持大小写字母、中横线、下划线、点以及数字。 最小长度:3 最大长度:200 replication 否 Integer 副本数,配置数据的可靠性。 取值范围:1-3。 最小值:1 最大值:3 sync_message_flush 否 Boolean 是否使用同步落盘。默认值为false。同步落盘会导致性能降低。 partition 否 Integer topic分区数,设置消费的并发数。取值范围:1-100。 最小值:1 最大值:100 sync_replication 否 Boolean 是否开启同步复制,开启后,客户端生产消息时相应的也要设置acks=-1,否则不生效,默认关闭。 retention_time 否 Integer 消息老化时间。默认值为72。取值范围1~168,单位小时。 topic_other_configs 否 Array of topic_other_configs objects topic配置 数组长度:0 - 100 topic_desc 否 String topic描述 最小长度:0 最大长度:200 表3 topic_other_configs 参数 是否必选 参数类型 描述 name 否 String 配置名称 value 否 String 配置值
  • AK/SK认证 AK/SK签名认证方式仅支持消息体大小12M以内,12M以上的请求请使用Token认证。 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
  • Token认证 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头,从而通过身份认证,获得操作API的权限。Token可通过调用获取用户Token接口获取。 云服务存在两种部署方式:项目级服务和全局级服务。其中: 项目级服务需要获取项目级别的Token,此时请求body中auth.scope的取值为project。 全局级服务需要获取全局级别的Token,此时请求body中auth.scope的取值为domain。 调用本服务API需要project级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } } } 获取Token后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/projects Content-Type: application/json X-Auth-Token: ABCDEFJ.... 您还可以通过这个视频教程了解如何使用Token认证:https://bbs.huaweicloud.com/videos/101333。
  • 请求示例 创建一个按需付费的Kafka实例,版本为2.7,规格为2U4G*3,300GB的存储空间。 POST https://{endpoint}/v2/{engine}/{project_id}/instances { "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", "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-************", "vpc_client_plain" : true, "enable_auto_topic" : true } 创建一个包年包月的Kafka实例,版本为2.7,规格为2U4G*3,300GB的存储空间。 POST https://{endpoint}/v2/{engine}/{project_id}/instances { "name" : "kafka-test1", "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", "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", "publicip_id" : "********-88fc-4a8c-86d0-************,********-16af-455d-8d54-************,********-3d69-4367-95ab-************", "vpc_client_plain" : true, "enable_auto_topic" : true, "bss_param" : { "charging_mode" : "prePaid", "period_type" : "month", "period_num" : 1, "is_auto_pay" : true } }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 topics 是 Array of AccessPolicyTopicEntity objects topic列表。 表3 AccessPolicyTopicEntity 参数 是否必选 参数类型 描述 name 是 String topic名称。 policies 是 Array of AccessPolicyEntity objects 权限列表。 表4 AccessPolicyEntity 参数 是否必选 参数类型 描述 user_name 否 String 用户名称。 设置用户权限时,为必选参数。 access_policy 否 String 权限类型。 all:拥有发布、订阅权限; pub:拥有发布权限; sub:拥有订阅权限。 设置用户权限时,为必选参数。
  • 请求示例 设置用户权限,为root用户授予发布和订阅topic-test的权限。 POST https://{endpoint}/v1/{project_id}/instances/{instance_id}/topics/accesspolicy { "topics" : [ { "name" : "topic-test", "policies" : [ { "user_name" : "root", "access_policy" : "all" } ] } ] }
  • URI GET /v1.0/{project_id}/instances/{instance_id}/manage/topics/{topic}/partitions/{partition}/end-message 参数说明如下表所示。 表1 参数说明 参数 类型 必选 说明 project_id String 是 项目ID。 instance_id String 是 实例ID。 topic String 是 Topic名称。 partition Integer 是 分区编号。取值范围:0~19。
  • 响应消息 响应参数 参数说明见表2。 表2 响应参数说明 参数 类型 说明 topic String Topic名称。 partition Integer 分区编号。 message_offset Long 最新消息位置。 timestamp Long 最新消息时间戳。 响应示例 { "topic": "mytest", "partition": 0, "message_offset": 9, "timestamp": 1568125039164 }
  • 后台任务管理 表8 后台任务管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目(Enterprise Project) 查询实例的后台任务列表 GET /v2/{project_id}/instances/{instance_id}/tasks dms:instance:getBackgroundTask √ √ 查询后台任务管理中的指定记录 GET /v2/{project_id}/instances/{instance_id}/tasks/{task_id} dms:instance:getBackgroundTask √ √ 删除后台任务管理中的指定记录 DELETE /v2/{project_id}/instances/{instance_id}/tasks/{task_id} dms:instance:deleteBackgroundTask √ √
  • 标签管理 表9 标签管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目(Enterprise Project) 批量添加或删除实例标签 POST /v2/{project_id}/kafka/{instance_id}/tags/action dms:instance:modify √ √ 查询实例标签 GET /v2/{project_id}/kafka/{instance_id}/tags dms:instance:get √ √ 查询项目标签 GET /v2/{project_id}/kafka/tags dms:instance:get √ √
  • 用户管理 表6 用户管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目(Enterprise Project) 查询用户列表 GET /v2/{project_id}/instances/{instance_id}/users dms:instance:get √ √ 创建用户 POST /v2/{project_id}/instances/{instance_id}/users dms:instance:modify √ √ 批量删除用户 PUT /v2/{project_id}/instances/{instance_id}/users dms:instance:modify √ √ 重置用户密码 PUT /v2/{project_id}/instances/{instance_id}/users/{user_name} dms:instance:get √ √ 查询用户权限 GET /v1/{project_id}/instances/{instance_id}/topics/{topic_name}/accesspolicy dms:instance:get √ √ 设置用户权限 POST /v1/{project_id}/instances/{instance_id}/topics/accesspolicy dms:instance:modify √ √
  • 支持的授权项 策略包含系统策略和自定义策略,如果系统策略不满足授权要求,管理员可以创建自定义策略,并通过给用户组授予自定义策略来进行精细的访问控制。策略支持的操作与API相对应,授权项列表说明如下: 权限:允许或拒绝某项操作。 对应API接口:自定义策略实际调用的API接口。 授权项:自定义策略中支持的Action,在自定义策略中的Action中写入授权项,可以实现授权项对应的权限功能。 IAM项目(Project)/企业项目(Enterprise Project):自定义策略的授权范围,包括IAM项目与企业项目。授权范围如果同时支持IAM项目和企业项目,表示此授权项对应的自定义策略,可以在IAM和企业管理两个服务中给用户组授权并生效。如果仅支持IAM项目,不支持企业项目,表示仅能在IAM中给用户组授权并生效,如果在企业管理中授权,则该自定义策略不生效。管理员可以在授权项列表中查看授权项是否支持IAM项目或企业项目,“√”表示支持,“×”表示暂不支持。关于IAM项目与企业项目的区别,详情请参见:IAM与企业管理的区别。 DMS for Kafka的支持自定义策略授权项如下所示: 生命周期管理,包含Kafka实例所有生命周期接口对应的授权项,如创建实例、查询实例列表、修改实例信息、批量重启或删除实例等接口。 实例管理,包括Kafka实例管理接口对应的授权项,如重置密码、开启或关闭实例自动创建Topic功能等接口。 转储管理,包括转储管理接口对应的授权项,如创建实例的转储节点、创建转储任务、查询转储任务列表等接口。 规格变更管理,包括实例规格变更管理接口对应的授权项,如实例规格变更接口。 主题管理,包括Topic管理接口对应的授权项,如创建Topic、查询Topic、修改Topic等接口。 用户管理,包括用户管理接口对应的授权项,如创建用户、查询用户列表、设置用户权限等接口。 消息查询,包括消息查询接口对应的授权项,如查询消息接口。 后台任务管理,包括实例的后台任务管理接口对应的授权项,如查询实例的后台任务列表、查询后台任务管理中的指定记录等接口。 标签管理,包括实例的标签管理接口对应的授权项,如查询实例标签、查询项目标签等接口。 其他:包括开启关闭公网访问接口。
  • 生命周期管理 表1 生命周期管理 权限 对应API接口 授权项(Action) IAM项目 (Project) 企业项目 (Enterprise Project) 创建实例 POST /v2/{engine}/{project_id}/instances dms:instance:create √ √ 查询所有实例列表 GET /v2/{project_id}/instances dms:instance:list √ √ 查询指定实例 GET /v2/{project_id}/instances/{instance_id} dms:instance:get √ √ 删除指定的实例 DELETE /v2/{project_id}/instances/{instance_id} dms:instance:delete √ √ 修改实例信息 PUT /v2/{project_id}/instances/{instance_id} dms:instance:modify √ √ 批量重启或删除实例 POST /v2/{project_id}/instances/action 重启:dms:instance:modifyStatus 删除:dms:instance:delete √ √
  • 转储管理 表3 转储管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建实例的转储节点 POST /v2/{project_id}/instances/{instance_id}/connector dms:instance:connector √ √ 创建转储任务 POST /v2/{project_id}/connectors/{connector_id}/sink-tasks dms:instance:createConnectorSinkTask √ √ 查询转储任务列表 GET /v2/{project_id}/connectors/{connector_id}/sink-tasks dms:instance:listConnectorSinkTask √ √ 修改转储任务的配额 PUT /v2/{project_id}/connectors/{connector_id}/sink-tasks dms:instance:createConnectorSinkTask √ √ 查询单个转储任务 GET /v2/{project_id}/connectors/{connector_id}/sink-tasks/{task_id} dms:instance:getConnectorSinkTask √ √ 删除单个转储任务 POST /v2/{project_id}/connectors/{connector_id}/sink-tasks/{task_id} dms:instance:deleteConnectorSinkTask √ √
  • 实例管理 表2 实例管理 权限 对应API接口 授权项(Action) IAM项目 (Project) 企业项目 (Enterprise Project) 重置密码 POST /v2/{project_id}/instances/{instance_id}/password dms:instance:resetAuthInfo √ √ 重置Manager密码 PUT /v2/{project_id}/instances/{instance_id}/kafka-manager-password dms:instance:resetAuthInfo √ √ 重启Manager PUT /v2/{project_id}/instances/{instance_id}/restart-kafka-manager dms:instance:modifyStatus √ √ 开启或关闭实例自动创建topic功能 POST /v2/{project_id}/instances/{instance_id}/autotopic dms:instance:modify √ √ 修改实例跨VPC访问的内网IP POST /v2/{project_id}/instances/{instance_id}/crossvpc/modify dms:instance:modify √ √ 重置消费组消费进度到指定位置 POST /v2/{project_id}/instances/{instance_id}/management/groups/{group}/reset-message-offset dms:instance:modify √ √
  • 主题管理 表5 主题管理 权限 对应API接口 授权项 IAM项目(Project) 企业项目(Enterprise Project) Kafka实例创建Topic POST /v2/{project_id}/instances/{instance_id}/topics dms:instance:modify √ √ Kafka实例查询Topic GET /v2/{project_id}/instances/{instance_id}/topics dms:instance:get √ √ 修改Kafka实例Topic PUT /v2/{project_id}/instances/{instance_id}/topics dms:instance:modify √ √ Kafka实例批量删除Topic POST /v2/{project_id}/instances/{instance_id}/topics/delete dms:instance:modify √ √
  • 基本概念 账号 用户注册账号时,账号对其所拥有的资源及云服务具有完全的访问权限,可以重置用户密码、分配用户权限等。由于账号是付费主体,为了确保账号安全,建议您不要直接使用账号进行日常管理工作,而是创建用户并使用他们进行日常管理工作。 用户 由账号在IAM中创建的用户,是云服务的使用人员,具有身份凭证(密码和访问密钥)。 在我的凭证下,您可以查看帐号ID和用户ID。通常在调用API的鉴权过程中,您需要用到账号、用户和密码等信息。 区域(Region) 从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 可用区(AZ,Availability Zone) 一个可用区是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 项目 区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您账号中该区域的所有资源。如果您希望进行更加精细的权限控制,可以在区域默认的项目中创建子项目,并在子项目中创建资源,然后以子项目为单位进行授权,使得用户仅能访问特定子项目中资源,使得资源的权限控制更加精确。 图1 项目隔离模型 同样在我的凭证下,您可以查看项目ID。 企业项目 企业项目是项目的升级版,针对企业不同项目间资源的分组和管理,是逻辑隔离。企业项目中可以包含多个区域的资源,且项目中的资源可以迁入迁出。 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理服务用户指南》。 父主题: 使用前必读
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 specification 否 String 部署Smart Connect的规格,基准带宽,表示单位时间内传送的最大数据量。请保持和当前实例规格一致。仅老规格实例需要填写。 取值范围: 100MB 300MB 600MB 1200MB node_cnt 否 String Smart Connect节点数量。不能小于2个。 如果不填,默认是2个。 spec_code 否 String 转储节点规格编码。仅老规格实例需要填写。
  • 请求示例 创建实例的Smart Connect节点,规格为100MB,节点数量为2。 POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/connector { "specification" : "100MB", "node_cnt" : 2, "spec_code" : "kafka.c3.mini.connector" }
  • 请求示例 创建实例标签,标签名为key1、key2,值为value1、value2。 POST https://{endpoint}/v2/{project_id}/kafka/{instance_id}/tags/action { "action" : "create", "tags" : [ { "key" : "key1", "value" : "value1" }, { "key" : "key2", "value" : "value2" } ] }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 action 否 String 操作标识(仅支持小写): create(创建) delete(删除) tags 否 Array of TagEntity objects 标签列表。 表3 TagEntity 参数 是否必选 参数类型 描述 key 否 String 标签键。 不能为空。 对于同一个实例,Key值唯一。 长度为1~128个字符(中文也可以输入128个字符)。 由任意语种字母、数字、空格和字符组成,字符仅支持_ . : = + - @ 首尾字符不能为空格。 value 否 String 标签值。 长度为0~255个字符(中文也可以输入255个字符)。 由任意语种字母、数字、空格和字符组成,字符仅支持_ . : = + - @ 首尾字符不能为空格。
  • URI POST /v2/{project_id}/instances/{instance_id}/management/topics/{topic}/replicas-reassignment 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID。 topic 是 String Topic名称。
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 partitions 否 Array of partitions objects 期望调整的分区副本分配情况。 表3 partitions 参数 是否必选 参数类型 描述 partition 否 Integer 分区ID。 replicas 否 Array of integers 副本期望所在的broker ID。其中Array首位为leader副本,所有分区需要有同样数量的副本,副本数不能大于总broker的数量。
  • 请求示例 修改Topic分区的副本分布位置,分区1的副本分布在broker 1和broker 2,Leader副本在broker 1。 POST https://{endpoint}/v2/{project_id}/instances/{instance_id}/management/topics/{topic}/replicas-reassignment { "partitions" : [ { "partition" : 1, "replicas" : [ 1, 2 ] }, { "partition" : 0, "replicas" : [ 0, 1 ] } ] }
共100000条