English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
The cluster API is used to obtain information about the cluster and its nodes and make changes to them. To call this API, we need to specify the node name, address, or _local.
GET /_nodes/_local
After running the above code, we get the following response:
……………………………………………… "cluster_name" : "elasticsearch", "nodes": { FKH-5blYTJmff2rJ_lQOCg": { "name": "ubuntu", "transport_address": ""127.0.0.1:9300", "host": ""127.0.0.1", "ip": ""127.0.0.1", "version" : "7.0.0", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "b7e28a7", "total_indexing_buffer" : 106502553, "roles": [ "master", "data", "ingest" ], "attributes": { ………………………………………………
The API is used to obtain the status of the cluster's operation by adding the 'health' keyword.
GET /_cluster/health
After running the above code, we get the following response:
{ "cluster_name": "elasticsearch", "status": "yellow", "timed_out" : false, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "active_primary_shards" : 7, "active_shards" : 7, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 4, "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" : 63.63636363636363 }
This API is used to obtain status information about the cluster by adding the 'state' keyword to the URL. Status information includes version, master node, other nodes, routing table, metadata, and blocks.
GET /_cluster/state
After running the above code, we get the following response:
……………………………………………… { "cluster_name": "elasticsearch", "cluster_uuid": "IzKu0OoVTQ"6LxqONJnN2eQ "version" : 89, "state_uuid" : "y3BlwvspR1eUQBTo0aBjig", "master_node" : "FKH-5blYTJmff2rJ_lQOCg", "blocks" : { }, "nodes": { FKH-5blYTJmff2rJ_lQOCg": { "name": "ubuntu", "ephemeral_id" : "426kTGpITGixhEzaM-5Qyg", "transport } ………………………………………………
This API helps retrieve statistical information about the cluster by using the 'stats' keyword. This API returns shard ID, storage size, memory usage rate, number of nodes, roles, operating system, and file system.
GET /_cluster/stats
After running the above code, we get the following response:
…………………………………………. "cluster_name": "elasticsearch", "cluster_uuid": "IzKu0OoVTQ"6LxqONJnN2eQ "timestamp": 1556435464704, "status": "yellow", "indices": { "count": 7, "shards": { "total": 7, "primaries": 7, "replication": 0.0, "index": { "shards": { "min": 1, "max": 1, "avg": 1.0 }, "primaries": { "min": 1, "max": 1, "avg": 1.0 }, "replication": { "min": 0.0, "max": 0.0, "avg": 0.0 } ………………………………………….
Using this API, you can use the 'set' keyword to update the cluster settings. There are two types of settings-Persistence (applied during restart) and transient (cannot survive after a full cluster restart).
This API is used to retrieve statistical information about another node in the cluster. Node statistics are almost the same as cluster statistics.
GET /_nodes/stats
After running the above code, we get the following response:
{ "_nodes": { "total": 1, "successful": 1, "failed": 0 }, "cluster_name": "elasticsearch", "nodes": { FKH-5blYTJmff2rJ_lQOCg": { "timestamp": 1556437348653, "name": "ubuntu", "transport_address": ""127.0.0.1:9300", "host": ""127.0.0.1", "ip": ""127.0.0.1:9300", "roles": [ "master", "data", "ingest" ], "attributes": { "ml.machine_memory": ""4112797696", "xpack.installed": "true", "ml.max_open_jobs": ""20" }, ………………………………………………………….
This API can help you retrieve information about the current hot threads on each node in the cluster.
GET /_nodes/hot_threads
After running the above code, we get the following response:
:::{ubuntu}{FKH-5blYTJmff2rJ_lQOCg}{426kTGpITGixhEzaM5Qyg}{127.0.0.1}{127.0.0.1:9300}{ml.machine_memory=4112797696, xpack.installed=true, ml.max_open_jobs=20} Hot threads at 2019-04-28T07:43:58.265Z, interval=500ms, busiestThreads=3, ignoreIdleThreads=true: