Elasticsearch是一个分布式的开源搜索和分析引擎,支持全文检索和数据分析,并且可伸缩到上百个节点,处理PB级结构化或非结构化数据。get /_cat/allocation是Elasticsearch API中的一种,它可以显示集群中每个索引在哪个节点上分配,还可以显示硬盘使用率,结构化数据结构等信息。下面将从多个方面对get /_cat/allocation?v进行详细的阐述。
一、获取集群信息
在Elasticsearch集群中,可以使用get /_cat/allocation?v命令获取每个索引名及其在哪个节点上分配的信息,如下所示:
GET /_cat/allocation?v
执行完上述请求之后,返回的结果如下所示,其中一行代表了一个索引的分配信息:
shard disk.indices disk.used disk.avail disk.total disk.percent host ip node 3 1.3gb 1.4gb 48.5gb 50.1gb 2 127.0.0.1 127.0.0.1 instance-00000002 3 1.3gb 1.4gb 48.5gb 50.1gb 2 127.0.0.1 127.0.0.1 instance-00000001
每一列的含义如下:
- shard:分片的索引编号。
- disk.indices:该分片中索引在磁盘中的尺寸,表示分片上所有索引占用的磁盘空间。
- disk.used:该分片中索引占用的磁盘空间。
- disk.avail:该分片中索引未使用的磁盘空间。
- disk.total:该节点中磁盘总空间。
- disk.percent:该分片占用磁盘空间的百分比。
- host:该节点的主机名。
- ip:该节点的IP地址。
- node:该节点的节点名称。
二、获取节点信息
在Elasticsearch集群中,可以使用get /_cat/nodes?v命令获取节点的相关信息,如下所示:
GET /_cat/nodes?v
执行完上述请求之后,返回的结果如下所示:
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name 127.0.0.1 25 95 5 0.00 0.00 0.00 ndmi * instance-00000001 127.0.0.1 19 95 5 0.00 0.00 0.00 ndmi - instance-00000002
每一列的含义如下:
- ip:该节点的IP地址。
- heap.percent:JVM堆使用率百分比,表示该节点JVM的内存使用率。
- ram.percent:该节点RAM的使用率百分比,表示该节点内存使用率。
- cpu:该节点CPU使用率。
- load_1m:该节点在过去一分钟内的系统负载。
- load_5m:该节点在过去五分钟内的系统负载。
- load_15m:该节点在过去十五分钟内的系统负载。
- node.role:该节点在集群中所属的角色。
- master:该节点是否担任主节点。
- name:该节点的名称。
三、获取索引信息
在Elasticsearch集群中,可以使用get /_cat/indices?v命令获取所有的索引信息,如下所示:
GET /_cat/indices?v
执行完上述请求之后,返回的结果如下所示:
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size green open .kibana_task_manager_1 0aHg5mj-TXKzRGvBLNZqPQ 1 0 16 0 89.3kb 89.3kb green open .kibana_1 Q0Cr4twZT0m6QH8tMc-l6Q 1 0 2 0 10.3kb 10.3kb green open test_index -N7Qsmw6QqOVquNwCILFjA 1 0 0 0 283b 283b green open test_index2 MjzHiYQ2QsGk7uSNhFvlEg 1 0 0 0 283b 283b
每一列的含义如下:
- health:该索引的健康状态。
- status:该索引是否打开。
- index:该索引的名称。
- uuid:该索引的唯一ID。
- pri:该索引拥有的主分片数量。
- rep:该索引拥有的副本分片数量。
- docs.count:该索引中的文档数量。
- docs.deleted:该索引中已被删除的文档数量。
- store.size:该索引占用的磁盘空间。
- pri.store.size:该索引的主分片占用的磁盘空间。
四、获取分片信息
在Elasticsearch集群中,可以使用get /_cat/shards?v命令获取每个分片的信息,如下所示:
GET /_cat/shards?v
执行完上述请求之后,返回的结果如下所示,其中一行代表了一个分片的信息:
index shard prirep state docs store ip node test_index2 0 p STARTED 0 230b 127.0.0.1 instance-00000001 test_index 0 p STARTED 0 230b 127.0.0.1 instance-00000002
每一列的含义如下:
- index:该分片所属的索引名称。
- shard:该分片的编号。
- prirep:该分片的类型,p表示主分片,r表示副本分片。
- state:该分片的状态,STARTED表示已启动。
- docs:该分片中的文档数量。
- store:该分片占用的磁盘空间。
- ip:该分片所在的节点的IP地址。
- node:该分片所在的节点名称。
总结
通过本篇文章的介绍,我们可以了解到get /_cat/allocation?v命令可以获取Elasticsearch集群中每个索引在哪个节点上分配,并且可以显示硬盘使用率,结构化数据结构等信息。同时,我们也了解了如何获取节点、索引、分片的相关信息。通过以上的命令,我们可以更加了解我们的Elasticsearch集群,并在使用过程中更加得心应手。
原创文章,作者:KSZLD,如若转载,请注明出处:https://www.506064.com/n/374487.html