1、集群状态及监控状态
ES提供了检查和监控节点或集群的信息,包括统计信息、服务器信息、节点参数等。
1.1、集群监控
可以利用集群健康api来查看集群或索引的健康状态信息。
集群健康查询示例:
GET /_cluster/health
{
"cluster_name" : "test-cluster",
"status" : "yellow",
"timed_out" : false,
"number_of_nodes" : 1,
"number_of_data_nodes" : 1,
"active_primary_shards" : 9,
"active_shards" : 9,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 5,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis" : 0,
"active_shards_percent_as_number" : 64.28571428571429
}
索引健康查询示例:
GET /_cluster/health/city
1.2、索引统计
此统计信息包括docs统计信息、store统计信息、indexing、get、search等统计信息。
示例:
GET /city/_stats
GET /_stats
1.3、节点信息
api命令格式:
- 节点名称(/_nodes/test-node-1)
- 标识符(/_nodes/test-node-1)
- 地址(/_nodes/192.168.1.133)
- ES配置中的参数(/_nodes/rack:2)
可获取的信息如下:
- settings:获得ES配置;
- os:获取服务器信息,如处理器、RAM及交换空间等;
- process:获取进程标识符和可用文件描述符;
- jvm:获取jvm信息;
- thread_pool:对不同操作获取线程池的配置;
- network:网络接口名称和地址;
- transport:获取传输的监听地址;
- http:获取http监听地址;
- all:获取上面所有信息;
示例:
GET /_nodes/test-node-1
1.4、节点状态
统计节点的信息;
示例:
GET /_nodes/stats
1.5、集群状态
提供节点、状态、配置、别名及索引映射等基本信息;
示例:
GET /_cluster/state
1.6、索引分段信息
提供分片及其位置信息等;
示例:
GET /city/_segments