集群健康

在Elasticsearch集群中可以监控统计很多信息,但是只有一个是最重要的:集群健康(cluster health)。集群健康有三种状态:greenyellowred

  1. GET /_cluster/health

在一个没有索引的空集群中运行如上查询,将返回这些信息:

  1. {
  2. "cluster_name": "elasticsearch",
  3. "status": "green", <1>
  4. "timed_out": false,
  5. "number_of_nodes": 1,
  6. "number_of_data_nodes": 1,
  7. "active_primary_shards": 0,
  8. "active_shards": 0,
  9. "relocating_shards": 0,
  10. "initializing_shards": 0,
  11. "unassigned_shards": 0
  12. }
  • <1> status 是我们最感兴趣的字段

status字段提供一个综合的指标来表示集群的的服务状况。三种颜色各自的含义:

颜色 意义
green 所有主要分片和复制分片都可用
yellow 所有主要分片可用,但不是所有复制分片都可用
red 不是所有的主要分片都可用

在接下来的章节,我们将说明什么是主要分片(primary shard)复制分片(replica shard),并说明这些颜色(状态)在实际环境中的意义。