实例管理


创建实例

请求示例:

  1. POST /naming/v1/instances
  2. # 开启北极星服务端针对控制台接口鉴权开关后,需要添加下面的 header
  3. Header X-Polaris-Token: {访问凭据}
  4. [
  5. {
  6. "service": "tdsql-ops-server",
  7. "namespace": "default",
  8. "host": "127.0.0.1",
  9. "port": 8080,
  10. "location": {
  11. "region": "ap-guangzhou",
  12. "zone": "ap-guangzhou-3",
  13. "campus": ""
  14. },
  15. "enable_health_check": true,
  16. "health_check": {
  17. "type": 1,
  18. "heartbeat": {
  19. "ttl": 10
  20. }
  21. },
  22. "metadata": {
  23. "env": "pre"
  24. }
  25. }
  26. ]

应答示例:

  1. {
  2. "code": 200000,
  3. "info": "execute success",
  4. "size": 1,
  5. "responses": [
  6. {
  7. "code": 200000,
  8. "info": "execute success",
  9. "instance": {
  10. "id": "...",
  11. "service": "...",
  12. "namespace": "...",
  13. "host": "...",
  14. "port": 8080
  15. }
  16. }
  17. ]
  18. }

数据结构:

HealthCheck 参数

参数名类型描述是否必填
typeint0(Unknow)/1(Heartbeat)
heartbeat{“ttl”: int}心跳间隔(范围为区间(0, 60])

Location 参数

参数名类型描述是否必填
regionstring地区
zonestring地域
campusstring园区

主请求参数

参数名类型描述是否必填
servicestring服务名
namespacestring命名空间
hoststring实例的IP
portstring实例的端口
vpc_idstringVPC ID
protocolstring对应端口的协议
versionstring版本
prioritystring优先级
weightstring权重(默认值100)
enable_health_checkbool是否开启健康检查
health_checkHealthCheck健康检查类别具体描述信息(如果enable_health_check==true,必须填写)
healthybool实例健康标志(默认为健康的)
isolatebool实例隔离标志(默认为不隔离的)
locationLocation实例位置信息
metadatamap<string,string>实例标签信息,最多只能存储64对key-value
service_tokenstringservice的token信息

更新实例

请求示例:

  1. PUT /naming/v1/instances
  2. # 开启北极星服务端针对控制台接口鉴权开关后,需要添加下面的 header
  3. Header X-Polaris-Token: {访问凭据}
  4. [
  5. {
  6. "service": "tdsql-ops-server",
  7. "namespace": "default",
  8. "host": "127.0.0.1",
  9. "port": 8080,
  10. "location": {
  11. "region": "ap-guangzhou",
  12. "zone": "ap-guangzhou-3",
  13. "campus": ""
  14. },
  15. "enable_health_check": true,
  16. "health_check": {
  17. "type": 1,
  18. "heartbeat": {
  19. "ttl": 10
  20. }
  21. },
  22. "metadata": {
  23. "env": "pre"
  24. }
  25. }
  26. ]

应答示例:

  1. {
  2. "code": 200000,
  3. "info": "execute success",
  4. "amount": 0,
  5. "size": 0
  6. }

数据结构:

HealthCheck 参数

参数名类型描述是否必填
typeint0(Unknow)/1(Heartbeat)
heartbeat{“ttl”: int}心跳间隔(范围为区间(0, 60])

Location 参数

参数名类型描述是否必填
regionstring地区
zonestring地域
campusstring园区

主请求参数

参数名类型描述是否必填
servicestring服务名
namespacestring命名空间
hoststring实例的IP
portstring实例的端口
vpc_idstringVPC ID
protocolstring对应端口的协议
versionstring版本
prioritystring优先级
weightstring权重(默认值100)
enable_health_checkbool是否开启健康检查
health_checkHealthCheck健康检查类别具体描述信息(如果enable_health_check==true,必须填写)
healthybool实例健康标志(默认为健康的)
isolatebool实例隔离标志(默认为不隔离的)
locationLocation实例位置信息
metadatamap<string,string>实例标签信息,最多只能存储64对key-value
service_tokenstringservice的token信息

获取实例列表

请求示例

  1. GET /naming/v1/instances?service=&namespace=&{参数key}={参数值}
  2. # 开启北极星服务端针对控制台接口鉴权开关后,需要添加下面的 header
  3. Header X-Polaris-Token: {访问凭据}
参数名类型描述是否必填
servicestring服务名称
namespacestring命名空间
hoststring实例IP是(要么(service,namespace)存在,要么host存在,不然视为参数不完整)
portuint实例端口
keysstring标签key只允许填写一个key
valuesstring标签value只允许填写一个value
healthystring实例健康状态
isolatestring实例隔离状态
protocolstring实例端口协议状态
versionstring实例版本
cmdb_regionstring实例region信息
cmdb_zonestring实例zone信息
cmdb_idcstring实例idc信息
offsetuint查询偏移量
limituint查询条数

应答示例:

  1. {
  2. "code": 200000,
  3. "info": "execute success",
  4. "amount": 1,
  5. "size": 1,
  6. "instances": [
  7. {
  8. "id": "...",
  9. "host": "...",
  10. "port": 8080,
  11. "weight": 100,
  12. "enableHealthCheck": true,
  13. "healthCheck": {
  14. "type": "HEARTBEAT",
  15. "heartbeat": {
  16. "ttl": 10
  17. }
  18. },
  19. "healthy": true,
  20. "isolate": false,
  21. "location": {
  22. "region": "ap-guangzhou",
  23. "zone": "ap-guangzhou-3",
  24. "campus": ""
  25. },
  26. "metadata": {
  27. "env": "pre"
  28. },
  29. "ctime": "2021-11-23 01:59:31",
  30. "mtime": "2021-11-23 01:59:31",
  31. "revision": "..."
  32. }
  33. ]
  34. }

删除实例(根据实例ID)

请求示例:

  1. POST /naming/v1/instances/delete
  2. # 开启北极星服务端针对控制台接口鉴权开关后,需要添加下面的 header
  3. Header X-Polaris-Token: {访问凭据}
  4. [
  5. {
  6. "id": "...",
  7. }
  8. ]

应答示例:

  1. {
  2. "code": 200000,
  3. "info": "execute success",
  4. "amount": 0,
  5. "size": 0
  6. }

数据结构:

参数名类型描述是否必填
idstring实例ID
servicestring服务名称
namespacestring命名空间