文档首页 > > API参考> CSE API> 微服务实例>

注册微服务实例

注册微服务实例

分享
更新时间:2021/05/26 GMT+08:00

功能介绍

创建微服务后就可以注册该微服务的实例了。 注册微服务实例时,需提供该微服务实例相关的信息。 instance_id可定制,如果定制了,再次注册就直接全内容覆盖。如果没定制,逻辑如下:系统自动生成id,如果endpoints内容重复,则使用原来的id

调试

您可以在API Explorer中调试该接口。

URI

POST /v4/{project_id}/registry/microservices/{service_id}/instances

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户子项目的唯一标识。字符长度为1~64。

service_id

String

微服务唯一标识。字符长度为1~64。正则表达式为^.*$

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

x-domain-name

String

租户帐号名称。

X-Auth-Token

String

用户Token。

表3 请求Body参数

参数

是否必选

参数类型

描述

instance

MicroServiceInstance object

微服务实例信息。

表4 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

更新时间

表5 HealthCheck

参数

是否必选

参数类型

描述

mode

String

心跳模式 push/pull。

port

Integer

端口。

interval

Integer

心跳间隔(秒)。

times

Integer

允许失败次数。

表6 DataCenterInfo

参数

是否必选

参数类型

描述

name

String

区域名字

region

String

区域

availableZone

String

可获取区

响应参数

状态码: 200

表7 响应Body参数

参数

参数类型

描述

instanceId

String

实例ID。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

状态码: 500

表9 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

请求示例

POST https://{endpoint}/v4/{project_id}/registry/existence

{
  "instance" : {
    "endpoints" : [ "grpc://127.0.1.312:9980", "rest://127.0.0.111:8081" ],
    "hostName" : "localhost",
    "status" : "UP",
    "stage" : "dev",
    "properties" : {
      "_TAGS" : "A, B",
      "attr1" : "a",
      "nodeIP" : "127.0.0.1"
    },
    "dataCenterInfo" : {
      "name" : "dc",
      "region" : "r1",
      "availableZone" : "az1"
    },
    "healthCheck" : {
      "mode" : "push",
      "interval" : 30,
      "times" : 3
    }
  }
}

响应示例

状态码: 200

注册成功。

{
  "instanceId" : "string"
}

状态码

状态码

描述

200

注册成功。

400

错误的请求。

500

服务内部错误

错误码

请参见错误码

分享:

    相关文档

    相关产品