Ce didacticiel vous montrera comment utiliser l'API _cat pour afficher des informations sur les partitions dans un cluster Elasticsearch, quel nœud est le réplica, la taille qu'il occupe sur le disque, etc.
Comment répertorier tous les fragments d'un cluster
Pour afficher toutes les partitions d'un cluster Elasticsearch, vous pouvez utiliser la requête GE au niveau du point de terminaison de l'API _cat/shards, comme suit :
GET _cat/shardsSi vous êtes un utilisateur cURL, utilisez la commande suivante :
curl -XGET "http://localhost:9200/_cat/shards"L'exécution de la commande ci-dessus vous donnera des informations sur toutes les partitions du cluster, comme indiqué ci-dessous (sortie tronquée) :
kibana_sample_data_flights 0 p COMMENCÉ 13059 5.3 Mo 172.28.86.133 instance-0000000003kibana_sample_data_flights 0 r COMMENCÉ 13059 5.3 Mo 172.28.27.142 instance-0000000001
.slm-history-3-000001 0 p COMMENCÉ 172.28.86.133 instance-0000000003
.slm-history-3-000001 0 r COMMENCÉ 172.28.27.142 instance-0000000001
index_destination 0 p COMMENCÉ 13232 5.9Mo 172.28.27.142 instance-0000000001
.surveillance-es-7-2021.01.22 0 p COMMENCÉ 279515 153.5 Mo 172.28.86.133 instance-0000000003
.surveillance-es-7-2021.01.22 0 r COMMENCÉ 279467 268.5 Mo 172.28.27.142 instance-0000000001
.kibana_task_manager_1 0 p COMMENCÉ 6 205.6ko 172.28.86.133 instance-0000000003
.kibana_task_manager_1 0 r COMMENCÉ 6 871.5ko 172.28.27.142 instance-0000000001
.monitoring-beats-7-2021.01.22 0 p COMMENCÉ 6245 8Mo 172.28.86.133 instance-0000000003
--------------------------------sortie tronquée---------------------
Vous pouvez également filtrer la sortie et spécifier le format du résultat. Par exemple, pour obtenir la sortie au format YAML, ajoutez le paramètre format=yaml à la requête, comme suit :
GET _cat/shards?format=yamlLa commande cURL pour cela est :
curl -XGET "http://localhost:9200/_cat/shards?format=yaml"La sortie doit être au format YAML comme :
- indice : "apm-7.dix.2-onboarding-2021.01.20"fragment : "0"
prerep: "p"
état : « DÉMARRÉ »
doc : "2"
magasin : "14.7 ko"
IP : "172.28.27.142"
nœud : "instance-0000000001"
- index : "index_source"
fragment : "0"
prerep: "p"
état : « DÉMARRÉ »
doc : "0"
magasin : "208b"
IP : "172.28.86.133"
nœud : "instance-0000000003"
- index : "kibana_sample_type_diff"
fragment : "0"
prerep: "p"
état : « DÉMARRÉ »
doc : "13059"
magasin : "5.7 Mo"
IP : "172.28.86.133"
nœud : "instance-0000000003"
- index : "kibana_sample_type_diff"
fragment : "0"
prerep: "r"
état : « DÉMARRÉ »
doc : "13059"
magasin : " 9.8 Mo"
IP : "172.28.27.142"
nœud : "instance-0000000001"
--------------------------------SORTIE TRONQUÉE---------------------
Vous pouvez même choisir d'obtenir des en-têtes spécifiques. Exemple :
GET _cat/shards?h=index,shard,state,store,id,ip&format=jsonLa commande cURL est la suivante :
curl -XGET "http://localhost:9200/_cat/shards?h=index,shard,state,store,id,ip&format=json”L'exécution de la commande ci-dessus vous donne des informations sélectionnées sur les fragments au format JSON. Ignorez les paramètres de format pour utiliser le format tabulaire par défaut.
["index" : "kibana_sample_data_flights",
"shard" : "0",
"état" : "DÉMARRÉ",
"magasin" : "5.3 Mo",
"id" : "gSlMjTKyTemoOX-EO7Em4w",
"ip" : "172.28.86.133"
,
"index" : "kibana_sample_data_flights",
"shard" : "0",
"état" : "DÉMARRÉ",
"magasin" : "5.3 Mo",
"id" : "FTd_2iXjSXudN_Ua4tZhHg",
"ip" : "172.28.27.142"
,
"index" : ".slm-histoire-3-000001",
"shard" : "0",
"état" : "DÉMARRÉ",
"magasin" : nul,
"id" : "gSlMjTKyTemoOX-EO7Em4w",
"ip" : "172.28.86.133"
,
"index" : ".slm-histoire-3-000001",
"shard" : "0",
"état" : "DÉMARRÉ",
"magasin" : nul,
"id" : "FTd_2iXjSXudN_Ua4tZhHg",
"ip" : "172.28.27.142"
,
"index" : "index_destination",
"shard" : "0",
"état" : "DÉMARRÉ",
"magasin" : "5.9 Mo",
"id" : "FTd_2iXjSXudN_Ua4tZhHg",
"ip" : "172.28.27.142"
,
"index" : ".surveillance-es-7-2021.01.22",
"shard" : "0",
"état" : "DÉMARRÉ",
"magasin" : "154.7 Mo",
"id" : "gSlMjTKyTemoOX-EO7Em4w",
"ip" : "172.28.86.133"
,
"index" : ".surveillance-es-7-2021.01.22",
"shard" : "0",
"état" : "DÉMARRÉ",
"magasin" : "270.2 Mo",
"id" : "FTd_2iXjSXudN_Ua4tZhHg",
"ip" : "172.28.27.142"
,
-----------------------------------SORTIE TRONQUÉE-------------------------
Informations sur les fragments pour des indices spécifiques
Pour obtenir des informations sur une partition pour un index spécifique, transmettez le nom de l'index comme suit :
GET _cat/shards/kibana_sample_data_flightsSaisissez la commande cURL comme suit :
curl -XGET "http://localhost:9200/_cat/shards/kibana_sample_data_flights"Cette commande vous donne des informations sur les fragments de cet index spécifique :
kibana_sample_data_flights 0 p COMMENCÉ 13059 5.3 Mo 172.28.86.133 instance-0000000003kibana_sample_data_flights 0 r COMMENCÉ 13059 5.3 Mo 172.28.27.142 instance-0000000001
REMARQUE: Vous pouvez également utiliser des paramètres pour filtrer les données ci-dessus.
Conclusion
Dans ce guide, nous vous avons montré comment utiliser l'API cat pour obtenir des informations sur les partitions exécutées dans le cluster Elasticsearch.