第三方服务创建
第三方服务创建
第三方服务创建依然存在两个入口,分别是团队视图左侧导航的创建-->创建第三方组件和应用 Dashboard 页面的添加第三方组件按钮,创建流程一致。
创建静态第三方服务
- 
选择服务注册方式为静态注册 
- 
填写服务的通信地址 比如服务有两个运行实例,IP 地址分别是 192.168.0.1 192.168.0.2,为了设置方便,我们可以填写第一个实例时携带上端口配置,即提供如下的数据,告知 Rainbond 服务的监听端口是 8080,且都一致。 192.168.0.1:8080 192.168.0.2 
- 
提交创建,进入到服务的 Dashboard 页面对服务端口、连接信息、健康检查属性进行配置。 
创建 Kubernetes 第三方服务(Beta)
- 选择服务注册方式为 Kubernetes
- 填写 Namespace ,默认为当前团队所在 Namespace
- 填写 Service ,Service 应属于上边填写的 Namespace
- 提交创建,进入端口界面进行配置,新增端口必须和 Service 配置端口一致才可以正常访问
创建基于 API 注册的第三方服务
- 
选择服务注册方式为 API 注册 
- 
提交创建,进入到服务的 Dashboard 页面对服务端口、连接信息、健康检查属性进行配置。 
- 
创建完成后, 可以根据总览页面中展示的 API地址和密钥, 通过调用 API 的方式, 动态的更改服务的通信地址.
API 提供了 GET, PUT, DELETE 三种调用方式, 分别对应服务地址的查询, 添加(或修改)和删除.
GET
下面是查询实例的 API 示例:
curl -s -G \
--url http://ip:port/console/third_party/8ad4b1c7ffb305f2b59b6de625b1ee6a \
--data secret_key=6RW0mYM3
执行完 curl 请求后, 会得到一个类似以下的响应:
{
    "msg": "success",
    "code": 200,
    "msg_show": "查询成功",
    "data": {
        "list": [
            {
                "status": "healthy",
                "ip": "192.168.0.1",
                "is_static": true,
                "is_online": true
            },
            ...
        ]
    }
}
请求参数说明:
| 参数 | 是否必填 | 说明 | 
|---|---|---|
| secret_key | 是 | 密钥 | 
响应参数说明:
| 参数 | 类型 | 说明 | 
|---|---|---|
| code | int | 业务码 | 
| msg | string | 对该请求的响应结果的详细描述 | 
| msg_show | string | 对该请求的响应结果的描述, 用于展示 | 
| status | string | 实例的状态, 可能的值为: healthy, unhealthy, unknown | 
| ip | string | 实例的 IP 地址 | 
| is_static | bool | 实例是否属于静态类型, true: 静态类型; false: 动态类型 | 
| is_online | bool | 实例是否处于上线状态, true: 已上线; false: 已下线 | 
PUT
下面是修改实例的 API 示例:
curl -X PUT \
--url http://192.168.1.200:7070/console/third_party/8d545c3e8e7780b228b6dcc77561388b \
-H "Content-Type: application/json" \
-d '{"secret_key":"4FsL5PWK","ip":"192.168.0.1","is_online":true}'
执行完 curl 请求后, 会得到一个类似以下的响应:
{
    "msg": "success",
    "code": 200,
    "msg_show": "修改成功"
}
请求参数说明:
| 参数 | 是否必填 | 类型 | 说明 | 
|---|---|---|---|
| secret_key | 是 | string | 密钥 | 
| ip | 是 | string | 服务实例地址, ipv4 格式 | 
| is_online | 否 | bool | 是否上线, 默认 true | 
响应参数说明:
| 参数 | 类型 | 说明 | 
|---|---|---|
| code | int | 业务码 | 
| msg | string | 对该请求的响应结果的详细描述 | 
| msg_show | string | 对该请求的响应结果的描述, 用于展示 | 
DELETE
下面是删除实例的 API 示例:
curl -X DELETE \
--url http://192.168.1.200:7070/console/third_party/8d545c3e8e7780b228b6dcc77561388b \
-H "Content-Type: application/json" \
-d '{"secret_key":"4FsL5PWK","ip":"192.168.1.107","is_online":true}'
执行完 curl 请求后, 会得到一个类似以下的响应:
{
    "msg": "success",
    "code": 200,
    "msg_show": "删除成功"
}
请求参数说明:
| 参数 | 是否必填 | 类型 | 说明 | 
|---|---|---|---|
| secret_key | 是 | string | 密钥 | 
| ip | 是 | string | 服务实例地址, ipv4 格式 | 
响应参数说明:
| 参数 | 类型 | 说明 | 
|---|---|---|
| code | int | 业务码 | 
| msg | string | 对该请求的响应结果的详细描述 | 
| msg_show | string | 对该请求的响应结果的描述, 用于展示 | 
PUT 和 DELETE 方法的请求内容的类型为 application/json