<managerRoot uri>/clusterreporter[.<format>]
clusterReporterConfig 为集群报告器配置信息资源,通过 clusterReporterConfig 资源您不仅可以获取集群报告器配置信息,还可以向集群服务器报告将本机添加到集群中。
在集群体系中,任意一个 iServer 都可作为一个集群服务器,接受子节点的加入。子节点加入集群时,需要向集群服务器的地址(http://<ip>:<port>/iserver/services/cluster)报告。
支持的方法:
支持的表述格式:RJSON、JSON、HTML、XML。
对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiserver 是服务器名。
http://supermapiserver:8090/iserver/manager/clusterreporter.rjson
获取集群报告器配置信息。
对 clusterReporterConfig 资源执行 GET 请求,返回的是集群报告器配置信息,表述结构如下:
字段 | 类型 | 说明 |
reporters | List<ReporterSetting> | 集群报告器。 |
对 clusterReporterConfig 资源执行 GET 请求( http://localhost:8090/iserver/manager/clusterreporter.rjson ),返回的 rjson 格式表述如下:
{"reporters": [
{
"address": "http://anotherclusterservice:8090/iserver/services/cluster",
"enabled": false,
"isTileWorker": false,
"iserverId": "d7c64eb1ea1a4f11983082488ab9fba9",
"localAddress": null,
"token": null
}
]}
添加新的集群报告器。
发送请求时,需要在请求体中包含如下参数:
名称 | 类型 | 含义 |
reporters | List<ReporterSetting> | 【必选参数】
集群报告器。 |
执行 PUT 请求后,返回的资源表述结构如下:
字段 | 类型 | 说明 |
succeed |
boolean | 是否成功添加集群报告器。 |
对 clusterReporterConfig 资源执行 PUT 请求( http://localhost:8090/iserver/manager/clusterreporter.rjson ), 可以添加集群报告器,发送的请求体如下:
{
"reporters": [
{
"enabled": false,
"iserverId": "d7c64eb1ea1a4f11983082488ab9fba9",
"isTileWorker": false,
"token": null,
"address": "http://anotherclusterservice:8090/iserver/services/cluster",
"localAddress": null
},
{
"enabled": true,
"isTileWorker": true,
"token": "",
"address": "http://192.168.17.147:8090/iserver/services/cluster"
}
]
}
则返回的 rjson 格式响应结果如下:
{
"succeed": true
}
对 clusterReporterConfig 资源执行 PUT 请求( http://localhost:8090/iserver/manager/clusterreporter.rjson ), 也可以向spark集群添加集群报告器,发送的请求体如下:
{
"reporters": [
{
"enabled": true,
"isTileWorker": false,
"token": "",
"address": "http://localhost:8090/iserver/services/cluster",
"enabledSparkWork": true
}
]
}
则返回的 rjson 格式响应结果如下:
{
"succeed": true
}
返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。
HEAD 请求可以用来判断 clusterReporterConfig 资源是否存在,或者客户端是否有权限访问 clusterReporterConfig 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 clusterReporterConfig 资源是否支持<format>格式的表述。