集群健康

先让我们开始基本的健康检查,我们可以用它来看看我们的集群是怎么工作的。我们将使用curl来尝试,但你也可以使用任何其他工具,使您可以发起HTTP/REST调用。假设我们仍然在同一节点上,我们启动Elasticsearch并打开另一个命令shell窗口。

要检查群集运行状况,我们将使用_cat API。还记得之前说过吗,我们的节点HTTP端点端口是9200:


curl 'localhost:9200/_cat/health?v'

然后响应如下:


epoch      timestamp cluster       status node.total node.data shards pri relo init unassign
1394735289 14:28:09  elasticsearch green           1         1      0   0    0    0        0

我们可以看到,我们启动的名为“elasticsearch”集群是绿色状态的。

每当我们查看的集群健康时,我们要么得到绿色,黄色或红色。绿色表示一切都很好(集群功能齐全),黄色表示所有数据都可用,但有些副本尚未分配(集群功能齐全),红色意味着部分数据不可用因为某种原因。请注意,即使一个集群是红色的,它仍然是部分可用的(例如,它会继续搜索请求现有的碎片),但你可能会需要尽快将其修复,因为你有丢失数据。

另外从上面可以看到,总共1个节点,并且我们有0个碎片,因为我们在它上面还没有数据呢。注意,因为我们使用的是默认的群集名称(elasticsearch),并且Elasticsearch默认情况下使用单播网络搜索来查找在同一台机器上的其他节点,它可能使你可能会不小心启动了多个节点的计算机上,并让他们所有加入一个单一集群。在这种情况下,您可能会看到在上面不仅仅是1个节点。

我们还可以在集群中获取一列节点,像这样:


curl 'localhost:9200/_cat/nodes?v'

然后返回:


curl 'localhost:9200/_cat/nodes?v'
host         ip        heap.percent ram.percent load node.role master name
mwubuntu1    127.0.1.1            8           4 0.00 d         *      New Goblin

在这里,我们可以看到我们命名为“New Goblin”一个节点,这是目前在我们的集群中的单个节点。

results matching ""

    No results matching ""