Admin API
Admin 提供了一种简单的方法来查看和管理集群信息,包括 metasrv 健康检测、metasrv leader 查询、数据节点心跳检测、维护模式和 Procedure Manager 控制。
Admin API 是一个 HTTP 服务,提供一组可以通过 HTTP 请求调用的 RESTful API。Admin API 简单、用户友好且安全。 本页介绍以下 API:
- /health
- /leader
- /heartbeat
- /maintenance
- /procedure-manager
所有这些 API 都在父资源 /admin 下。
在以下部分中,我们假设你的 metasrv 实例运行在本地主机的 4000 端口。
/health HTTP 端点
/health 端点接受 GET HTTP 请求,你可以使用此端点检查你的 metasrv 实例的健康状况。
定义
curl -X GET http://localhost:4000/admin/health
示例
请求
curl -X GET http://localhost:4000/admin/health
响应
OK
/leader HTTP 端点
/leader 端点接受 GET HTTP 请求,你可以使用此端点查询你的 metasrv 实例的 leader 地址。
定义
curl -X GET http://localhost:4000/admin/leader
示例
请求
curl -X GET http://localhost:4000/admin/leader
响应
127.0.0.1:4000
/heartbeat HTTP 端点
/heartbeat 端点接受 GET HTTP 请求,你可以使用此端点查询所有数据节点的心跳。
你还可以查询指定 addr 的数据节点的心跳数据,但在路径中指定 addr 是可选的。
定义
curl -X GET http://localhost:4000/admin/heartbeat
| 查询字符串参数 | 类型 | 可选/必选 | 定义 |
|---|---|---|---|
| addr | String | 可选 | 数据节点的地址。 |
示例
请求
curl -X GET 'http://localhost:4000/admin/heartbeat?addr=127.0.0.1:4100'
响应
[
[
{
"timestamp_millis": 1677049348651,
"id": 1,
"addr": "127.0.0.1:4100",
"rcus": 0,
"wcus": 0,
"region_num": 2,
"region_stats": [],
"topic_stats": [],
"node_epoch": 0,
"datanode_workloads": {
"types": []
},
"gc_stat": null
}
]
]