多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# cat health 原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/5.0/cat-health.html](https://www.elastic.co/guide/en/elasticsearch/reference/5.0/cat-health.html) 译文链接 : [http://www.apache.wiki/display/Elasticsearch/cat+health](http://www.apache.wiki/display/Elasticsearch/cat+health) 贡献者 : [那伊抹微笑](/display/~wangyangting) **health** 是一个简洁的,一行表示了来自 **/_cluster/health** 的相同的信息。 ``` curl -XGET 'localhost:9200/_cat/health?v&pretty' ``` 响应如下 :  ``` epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent 1475871424 16:17:04 elasticsearch green 1 1 5 5 0 0 0 0 - 100.0% ``` 它有一个 **ts** 选项,以禁用 **timestamping**(时间戳):  ``` curl -XGET 'localhost:9200/_cat/health?v&ts=0&pretty' ``` 响应如下 :  ``` cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent elasticsearch green 1 1 5 5 0 0 0 0 - 100.0% ``` 此命令的一个常见用途是验证所有节点的健康是不是一致的 :  ``` % pssh -i -h list.of.cluster.hosts curl -s localhost:9200/_cat/health [1] 20:20:52 [SUCCESS] es3.vm 1384309218 18:20:18 foo green 3 3 3 3 0 0 0 0 [2] 20:20:52 [SUCCESS] es1.vm 1384309218 18:20:18 foo green 3 3 3 3 0 0 0 0 [3] 20:20:52 [SUCCESS] es2.vm 1384309218 18:20:18 foo green 3 3 3 3 0 0 0 0 ``` 一个不太明显的用途是来跟踪一段时间内大型集群的恢复情况。有许多分片,启动集群,或者在丢失一节点后恢复,可能需要一段时间(取决于网络 & 硬盘)。其中的一种方法是在一个延迟的循环中使用跟踪它的进程,命令如下 :  ``` % while true; do curl localhost:9200/_cat/health; sleep 120; done 1384309446 18:24:06 foo red 3 3 20 20 0 0 1812 0 1384309566 18:26:06 foo yellow 3 3 950 916 0 12 870 0 1384309686 18:28:06 foo yellow 3 3 1328 916 0 12 492 0 1384309806 18:30:06 foo green 3 3 1832 916 4 0 0 ^C ``` 在这种情况下,我们可以告诉到家,集群恢复大概需要**4**分钟。如果恢复时间是**4**个小时的话,我们将会看到 `**UNASSIGNED**(未分配的)分片数量减少。如果数量保持不变,集群可能出现问题了。` 在集群故障时您通常会使用 **health** 命令。在这期间,它在整个日志文件,报警系统等相关联的活动是非常重要。 有两种输出。一种是 **HH:MM:SS** 输出,对于人们来说是友好的。另一种是 **epoch time**(**Epoch **是指定为**1970**年**1**月**1**日凌晨零点零分零秒,[格林威治时间](https://www.baidu.com/s?wd=%E6%A0%BC%E6%9E%97%E5%A8%81%E6%B2%BB%E6%97%B6%E9%97%B4&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1YzmWc3mvFbrHwBuAuBuW010ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6KdThsqpZwYTjCEQLGCpyw9Uz4Bmy-bIi4WUvYETgN-TLwGUv3EPHf1PWfYP1mY)),这样保留了更多的信息,其中包括日期,如果恢复是跨天的话还可以排序。