华为云用户手册

  • 响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Authorization 否 String 若微服务引擎专享版开启了安全认证,此参数必填。否则,无此参数。 开启了安全认证的微服务引擎专享版Token,格式为: Authorization:Bearer {Token} Token获取方法,请参考获取微服务引擎专享版用户Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 properties 否 Object 微服务扩展属性,可以自定义KEY和相应的Value。长度最小1字节。
  • 响应示例 查询成功 { "metadata": { "version": "2.0.0" }, "data": [ { "id": "0bdfddb8-c4f9-4a88-8360-07a8a616a804", "key": "2", "labels": { "2": "2" }, "value": "2", "status": "enabled", "value_type": "text" }, { "id": "34befef9-7f3a-4394-85f9-142622a11b1d", "key": "1", "labels": { "1": "1" }, "value": "1", "status": "enabled", "value_type": "text" } ]}
  • URI POST /v1/{project_id}/kie/download 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户子项目的唯一标识,字符长度为1~64位,获取方法请参考获取项目ID。 表2 Query参数 参数 是否必选 参数类型 描述 label 否 String 按label过滤项导出,格式为:{标签key}:{标签value}。 match 否 String 对label过滤项的匹配选项。 如果值为exact表示严格匹配,包括label个数和内容相等。 不填表示包含匹配。
  • 请求示例 创建一个名称为“test”专享版微服务引擎,其计费模式为按需计费,规格为cse.s1.medium2,可用区为test,关闭安全认证,微服务引擎的部署类型为 CS E2。 POST https://{endpoint}/v2/{project_id}/enginemgr/engines{"name": "test","description": "test","payment": "1","flavor": "cse.s1.medium2","azList": ["test"],"authType": "NONE","vpc": "vpc-demotest","vpcId": "09902850-9454-4715-9764-018f0c37022","networkId": "88550801-e892-4f8e-b21b-f7147f6229","subnetCidr": "192.168.0.5/26","specType": "CSE2","inputs": {"nodeFlavor": "s6.large.2"}}
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 id String 微服务引擎专享版ID。 name String 微服务引擎专享版名称。 jobId Integer 微服务引擎专享版执行任务ID。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表7 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 id String 微服务引擎专享版ID。 name String 微服务引擎专享版名称。 jobId Integer 微服务引擎专享版执行任务ID。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 请求示例 导入配置文件,当存在相同配置时,会强制导入覆盖重复项,按body的label导入。 POST https://{endpoint}/v1/{project_id}/kie/file/override=force----WebKitFormBoundary7MA4YWxkTrZu0gWContent-Disposition: form-data; name="upload_file"; filename="custom_1663124521493.json"Content-Type: application/json----WebKitFormBoundary7MA4YWxkTrZu0gW
  • 响应示例 查询成功 { "success": [ { "id": "7e2d346e-d907-4871-bf51-a17fc7e52ad4", "key": "2", "value": "2", "value_type": "text", "create_revision": 3, "update_revision": 3, "status": "enabled", "create_time": 1636374809, "update_time": 1636374809, "labels": { "2": "2", "environment": "production" } }, { "id": "907b3891-c691-4ae0-816f-e91eba705e28", "key": "1", "value": "1", "value_type": "text", "create_revision": 4, "update_revision": 4, "status": "enabled", "create_time": 1636374809, "update_time": 1636374809, "labels": { "1": "1", "environment": "production" } } ], "failure": []}
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 x-engine-id 是 String 待上传配置的引擎id,获取方法请参考查询微服务引擎专享版列表。 X-Enterprise-Project-ID 否 String 企业项目id。 如果不配置此参数,则默认企业项目为“default”,ID为0。 Authorization 否 String 若微服务引擎专享版开启了安全认证,此参数必填。否则,无此参数。 开启了安全认证的微服务引擎专享版Token,格式为: Authorization:Bearer {Token} Token获取方法,请参考获取微服务引擎专享版用户Token。 表4 请求Body参数 参数 是否必选 参数类型 描述 upload_file 是 File 导入的文件,文件名格式为:fileName.json 文件格式为: { "data": [ { "key": "keyItem1", "value": "valueItem1", "labels":{ "1": "1" }, "status": "enabled", "value_type": "text" } ]}
  • URI POST /v1/{project_id}/kie/file 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户子项目的唯一标识,字符长度为1~64位,获取方法请参考获取项目ID。 表2 Query参数 参数 是否必选 参数类型 描述 override 是 String force:强制导入,会覆盖重复项。 skip:跳过导入,会跳过重复项。 abort:终止导入,遇到重复项会停止导入操作。 label 否 String 指定label导入,格式为:{标签key}:{标签value},如果不填则按body的label导入。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 total Integer 当前微服务引擎专享版规格总个数。 data Array of Flavor objects 微服务引擎专享版规格详情。 表5 Flavor 参数 参数类型 描述 flavor String 微服务引擎专享版规格。 description String 微服务引擎专享版规格描述。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表7 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 微服务 表5 微服务接口 API 说明 查询指定微服务信息 根据service_id查询微服务定义信息。 删除微服务定义信息 删除一个微服务定义及其相关信息,同时注销其所有实例信息。 查询所有微服务信息 根据条件组合,查询满足所有条件的微服务定义信息。 创建微服务静态信息 在注册微服务实例前需要创建服务静态信息,之后注册的微服务实例根据serviceId这个字段与静态信息关联,一个服务对应对多个实例。serviceId可以定制。如果定制了,系统将使用定制的serviceId;如果没定制,系统会随机生成serviceId。 批量删除微服务静态信息 批量删除指定的微服务定义及其相关信息,同时注销其所有实例信息。 修改微服扩展属性信息 创建微服务静态信息后可对服务部分字段进行更新,每次更新都需要传入完整的服务静态信息json,也就是说,即便不更新部分的字段也要作为json的属性传过去。 查询微服务唯一标识信息 可通过指定条件,查询微服务serviceId或schema的唯一标识信息。
  • 微服务实例 表7 微服务实例接口 API 说明 注册微服务实例 创建微服务后就可以注册该微服务的实例了。 注册微服务实例时,需提供该微服务实例相关的信息。 instanceId可定制,如果定制了,再次注册就直接全内容覆盖。如果没定制,逻辑如下:系统自动生成id,如果endpoints内容重复,则使用原来的id。 根据service_id查询微服务实例 实例注册后可以根据service_id发现该微服务的所有实例。 注销微服务实例 实例注册后可以根据instance_id进行实例注销。 查询微服务实例详细信息 实例注册后可以根据service_id和instance_id获取该实例的详细信息。 修改微服务实例扩展信息 实例注册后可以根据instance_id进行添加/更新一个微服务实例扩展信息。 修改微服务实例状态 实例注册后可以根据instance_id进行更新一个微服务实例状态。 发送心跳信息 服务提供端需要向服务中心发送心跳信息,以保证服务中心知道服务实例是否健康。 按条件查询微服务实例 实例注册后可以根据微服务版本规则或字段条件发现该微服务的实例。 批量查询微服务实例 实例注册后可以根据微服务版本规则或字段条件批量发现多个微服务的实例。
  • URI PUT /v4/{project_id}/registry/microservices/{service_id}/schemas/{schema_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 请填固定值:default。 service_id 是 String 微服务唯一标识。字符长度为1~64,正则表达式为^.*$。获取方法请参考查询所有微服务信息。 schema_id 是 String 微服务契约唯一标识。字符长度为1~160,正则表达式为^[a-zA-Z0-9]{1,160}$|^[a-zA-Z0-9][a-zA-Z0-9_-.]{0,158}[a-zA-Z0-9]$。获取方法请参考查询微服务的所有契约。
  • 响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 请求示例 修改指定service_id和schema_id的契约的契约内容和摘要。 PUT https://{endpoint}/v4/{project_id}/registry/microservices/{service_id}/schemas/{schema_id}{ "schema": "---\nswagger: \"2.0\"\ninfo:\n version: \"1.0.0\"\n title: \"swagger definition for com.service.provider.controller.ProviderImpl\"\n x-java-interface: \"cse.gen.springmvc.provider.provider.ProviderImplIntf\"\nbasePath: \"/provider\"\nconsumes:\n- \"application/json\"\nproduces:\n- \"application/json\"\npaths:\n /helloworld:\n get:\n operationId: \"helloworld\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"name\"\n in: \"query\"\n required: true\n type: \"string\"\n responses:\n 200:\n description: \"response of 200\"\n schema:\n type: \"string\"\n", "summary": "test"}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Authorization 否 String 若微服务引擎专享版开启了安全认证,此参数必填。否则,无此参数。 开启了安全认证的微服务引擎专享版Token,格式为: Authorization:Bearer {Token} Token获取方法,请参考获取微服务引擎专享版用户Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 schema 是 String 契约内容。 summary 否 String 新加入参数,后面创建schema,请尽量提供shema的摘要。
  • 请求示例 查询微服务serviceId,指定的查询条件是请求类型为microservice,应用id为default,微服务名称为service,微服务版本为1.0.0。 GET https://{endpoint}/v4/{project_id}/registry/existence?type=microservice&appId=default&serviceName=service&version=1.0.0
  • URI GET /v4/{project_id}/registry/existence 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 请填固定值:default。 表2 Query参数 参数 是否必选 参数类型 描述 type 是 String 请求类型: microservice schema 说明: 若type为microservice,参数env、appId、serviceName、version必填。 若type为schema,参数serviceId、schemaId必填。 env 否 String 微服务的环境信息:development、testing、acceptance、production。 appId 是 String 资源类型为microservice时需传入应用app唯一标识。 字符长度为1~160。正则表达式为^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9_-.][a-zA-Z0-9]$。 serviceName 是 String 资源类型为microservice时需传入微服务名称。 字符长度为1~128正则表达式为^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9_-.][a-zA-Z0-9]$。 version 是 String 资源类型为microservice时需传入微服务版本。 字符长度为1~64。正则表达式为^[0-9]$|^[0-9]+(.[0-9]+)$。 serviceId 是 String 资源类型为schema时需传入微服务唯一标识。 字符长度为1~64。正则表达式为^.*$。 schemaId 是 String 资源类型为schema时需传入schema唯一标识。 字符长度为1~160。正则表达式为^[a-zA-Z0-9]{1,160}$|^[a-zA-Z0-9][a-zA-Z0-9_-.]{0,158}[a-zA-Z0-9]$。
  • 响应参数 状态码: 200 表4 响应Header参数 参数 参数类型 描述 X-Schema-Summary String 契约的摘要。 表5 响应Body参数 参数 参数类型 描述 serviceId String 查询实体为服务时,返回服务ID。 schemaId String 查询实体为契约时,返回契约ID。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表7 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 基本概念 帐号 用户注册云平台时的帐号,帐号对其所拥有的资源及云服务具有完全的访问权限,可以重置用户密码、分配用户权限等。由于帐号是付费主体,为了确保帐号安全,建议您不要直接使用帐号进行日常管理工作,而是创建用户并使用他们进行日常管理工作。 用户 由帐号在 IAM 中创建的用户,是云服务的使用人员,具有身份凭证(密码和访问密钥)。 在我的凭证下,您可以查看帐号ID和用户ID。通常在调用API的鉴权过程中,您需要用到帐号、用户和密码等信息。 区域(Region) 从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 详情请参见区域和可用区。 可用区(AZ,Availability Zone) 一个可用区是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 项目 云平台的区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您帐号中该区域的所有资源。如果您希望进行更加精细的权限控制,可以在区域默认的项目中创建子项目,并在子项目中创建资源,然后以子项目为单位进行授权,使得用户仅能访问特定子项目中资源,使得资源的权限控制更加精确。 同样在我的凭证下,您可以查看项目ID。 图1 项目隔离模型 企业项目 企业项目是项目的升级版,针对企业不同项目间资源的分组和管理,是逻辑隔离。企业项目中可以包含多个区域的资源,且项目中的资源可以迁入迁出。 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理服务用户指南》。 父主题: 使用前必读
  • 响应参数 状态码: 200 删除成功。 状态码: 404 表3 响应Body参数 参数 参数类型 描述 error_code String 错误代码。 error_message String 错误信息。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误代码。 error_message String 错误信息。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误代码。 error_message String 错误信息。
  • 响应参数 状态码: 204 删除成功。 状态码: 404 表4 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 响应参数 状态码: 200 表9 响应Body参数 参数 参数类型 描述 services BatchFindResult object 批量查询结果结构体。 instances BatchFindResult object 批量查询结果结构体。 表10 BatchFindResult 参数 参数类型 描述 failed Array of FindFailedResult objects 查询失败结果结构体。 notModified Array of integers 与请求数组对应的索引集合。 updated Array of FindResult objects 查询结果结构体列表。 表11 FindFailedResult 参数 参数类型 描述 indexes Array of integers 与请求数组对应的索引集合。 error Error object 异常错误结构体。 表12 Error 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 表13 FindResult 参数 参数类型 描述 index Integer 与请求数组对应的索引。 rev String 服务端返回集合版本,如跟客户端缓存版本号一致,则instances为空。 instances Array of MicroServiceInstance objects 实例列表。 表14 MicroServiceInstance 参数 参数类型 描述 instanceId String 实例id,唯一标识。创建实例,instanceId由service-center产生。 serviceId String 微服务唯一标识,创建实例时,以url里面的为准,不用这里的serviceId。 version String 微服务版本号。 hostName String 主机信息。 endpoints Array of strings 访问地址信息。 status String 实例状态:UP、DOWN、STARTING、OUTOFSERVICE。默认值UP。 properties Object 微服务扩展属性,可以自定义KEY和相应的Value。长度最小为1字节。 healthCheck HealthCheck object 健康检查信息。 dataCenterInfo DataCenterInfo object 数据中心信息。 timestamp String 实例创建时间戳,自动生成。 modTimestamp String 更新时间。 表15 HealthCheck 参数 参数类型 描述 mode String 心跳模式push/pull。 port Integer 端口。 interval Integer 心跳间隔(秒),当值小于5秒时,按5秒注册。 times Integer 最大尝试请求次数。 表16 DataCenterInfo 参数 参数类型 描述 name String 区 域名 称。 region String 区域。 availableZone String 可用区。 状态码: 400 表17 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。 状态码: 500 表18 响应Body参数 参数 参数类型 描述 errorCode String 错误代码。 errorMessage String 错误信息。 detail String 详细定位信息。
  • 请求示例 查询应用ID为default,微服务名称为test的微服务的所有实例。 POST https://{endpoint}/v4/{project_id}/registry/instances/action?type=query{ "services": [ { "service": { "environment": "", "appId": "default", "serviceName": "test" }, "rev": "0" } ]}
  • 响应示例 状态码: 200 查询成功。 { "services": { "updated": [ { "index": 0, "rev": "0feb784798bca7b2fb4de8351578c4437b516c4b", "instances": [ { "instanceId": "79cdaf47cacf43a5b2b4185527da2255", "serviceId": "8aed80ea052ac04a64dfc79c24f2170224d074f5", "endpoints": [ "rest:127.0.0.1:8080" ], "hostName": "hostNameTest", "status": "UP", "properties": { "engineID": "30c263e5-2eac-4da1-9c72-5abb9ac94550", "engineName": "cse-fkln1-HA" }, "healthCheck": { "mode": "push", "interval": 30, "times": 3 }, "timestamp": "1650546183", "modTimestamp": "1650546183", "version": "1.0.0" } ] } ] }}
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-consumerId 否 String 微服务消费者的微服务唯一标识。 Authorization 否 String 若微服务引擎专享版开启了安全认证,此参数必填。否则,无此参数。 开启了安全认证的微服务引擎专享版Token,格式为: Authorization:Bearer {Token} Token获取方法,请参考获取微服务引擎专享版用户Token。 表4 请求Body参数 参数 是否必选 参数类型 描述 services 两个参数至少必须选择一个。 Array of FindService objects 查询服务信息结构体。 instances Array of FindInstance objects 查询实例信息结构体。 表5 FindService 参数 是否必选 参数类型 描述 service 是 DependencyKey object 依赖关系条目。 rev 否 String 客户端缓存的版本号,用于判断本地缓存和服务中心微服务的差异。 首次传值0。 若传入的rev值与当前的微服务的rev一致,则返回notModified;若不一致,则返回updated信息。 下次请求若需要传入rev,则该值为当前返回body体中的updated中的rev的值 。 表6 DependencyKey 参数 是否必选 参数类型 描述 environment 是 String 环境信息:development、testing、acceptance、production。 appId 是 String 应用app唯一标识。 serviceName 是 String 微服务名称。 表7 FindInstance 参数 是否必选 参数类型 描述 instance 否 HeartbeatSetElement object 微服务实例请求结构体。 rev 否 String 客户端缓存的版本号, 客户端缓存的版本号,用于判断本地缓存和服务中心微服务实例的差异。 首次传值0。 若传入的rev值与当前的微服务实例的rev一致,则返回notModified;若不一致,则返回updated信息。 下次请求若需要传入rev,则该值为当前返回body体中的updated中的rev的值 。 表8 HeartbeatSetElement 参数 是否必选 参数类型 描述 serviceId 否 String 微服务id。 instanceId 否 String 微服务实例id。
  • 响应示例 状态码: 200 查询成功。 { "total": 1, "data":[{ "id": "8a9e6a5d-8d65-48fb-a40c-5150c8479da8", "key": "string", "labels": { "key1": "value1", "key2": "value2" }, "value": "string", "value_type": "text", "status": "enabled", "create_time": 1623139038, "update_time": 1623139038, "create_revision": 13, "update_revision": 13 }]}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Authorization 否 String 若微服务引擎专享版开启了安全认证,此参数必填。否则,无此参数。 开启了安全认证的微服务引擎专享版Token,格式为: Authorization:Bearer {Token} Token获取方法,请参考获取微服务引擎专享版用户Token。 表3 Query参数 参数 是否必选 参数类型 描述 label 否 String 按label过滤项导出,格式为:{标签key}:{标签value}。 match 否 String 对label过滤项的匹配选项,如果值为exact,表示严格匹配,包括label个数和内容相等;不填表示包含匹配。 revision 否 Integer 配置的版本号。 用于判断本地缓存配置和配置管理中心的配置差异。 首次传值0。 若传入的revision值与当前配置的revision一致,则返回304状态码,无body体返回;若不一致,则返回当前配置和revision信息。 下次请求若需要传入revision,则该值为当前返回body体中的update_revision 。
共100000条