Este tutorial le mostrará cómo usar la API _cat para ver información sobre fragmentos en un clúster de Elasticsearch, qué nodo es la réplica, el tamaño que ocupa el disco y más.
Cómo enumerar todos los fragmentos en un grupo
Para ver todos los fragmentos en un clúster de Elasticsearch, puede usar la solicitud de GE en el punto final de la API _cat / shards, de la siguiente manera:
OBTENER _cat / shardsSi es un usuario de cURL, use el siguiente comando:
curl -XGET "http: // localhost: 9200 / _cat / shards"La ejecución del comando anterior le dará información sobre todos los fragmentos en el clúster, como se muestra a continuación (salida truncada):
kibana_sample_data_flights 0 p COMENZADO 13059 5.3mb 172.28.86.133 instancia-0000000003kibana_sample_data_flights 0 r COMENZADO 13059 5.3mb 172.28.27.142 instancia-0000000001
.slm-history-3-000001 0 p COMENZADO 172.28.86.133 instancia-0000000003
.slm-history-3-000001 0 r INICIADO 172.28.27.142 instancia-0000000001
índice_destino 0 p COMENZADO 13232 5.9mb 172.28.27.142 instancia-0000000001
.seguimiento-es-7-2021.01.22 0 p INICIADO 279515153.5mb 172.28.86.133 instancia-0000000003
.seguimiento-es-7-2021.01.22 0 r INICIADO 279467268.5mb 172.28.27.142 instancia-0000000001
.kibana_task_manager_1 0 p COMENZADO 6205.6 KB 172.28.86.133 instancia-0000000003
.kibana_task_manager_1 0 r COMENZADO 6871.5 KB 172.28.27.142 instancia-0000000001
.seguimiento-beats-7-2021.01.22 0 p INICIADO 6245 8mb 172.28.86.133 instancia-0000000003
--------------------------------salida truncada---------------------
También puede filtrar la salida y especificar el formato del resultado. Por ejemplo, para obtener la salida en formato YAML, agregue el parámetro format = yaml a la solicitud, de la siguiente manera:
OBTENER _cat / shards?formato = yamlEl comando cURL para esto es:
curl -XGET “http: // localhost: 9200 / _cat / shards?formato = yaml ”La salida debe estar en formato YAML como:
- índice: "apm-7.10.2-incorporación-2021.01.20 "fragmento: "0"
prirep: "p"
estado: "EMPEZADO"
docs: "2"
tienda: "14.7kb "
ip: "172.28.27.142 "
nodo: "instancia-0000000001"
- índice: "source_index"
fragmento: "0"
prirep: "p"
estado: "EMPEZADO"
docs: "0"
tienda: "208b"
ip: "172.28.86.133 "
nodo: "instancia-0000000003"
- índice: "kibana_sample_type_diff"
fragmento: "0"
prirep: "p"
estado: "EMPEZADO"
documentos: "13059"
tienda: "5.7mb "
ip: "172.28.86.133 "
nodo: "instancia-0000000003"
- índice: "kibana_sample_type_diff"
fragmento: "0"
prirep: "r"
estado: "EMPEZADO"
documentos: "13059"
tienda: "9.8mb "
ip: "172.28.27.142 "
nodo: "instancia-0000000001"
--------------------------------SALIDA TRUNCADA---------------------
Incluso puedes optar por obtener encabezados específicos. Por ejemplo, para obtener el nombre del índice, el nombre del fragmento, el estado del fragmento, el espacio en disco del fragmento, la identificación del nodo y la IP del nodo, filtre pasándolos al argumento del encabezado como:
OBTENER _cat / shards?h = índice, fragmento, estado, tienda, id, ip y formato = jsonEl comando cURL es el siguiente:
curl -XGET “http: // localhost: 9200 / _cat / shards?h = índice, fragmento, estado, tienda, id, ip y formato = json "La ejecución del comando anterior le brinda información seleccionada sobre los fragmentos en formato JSON. Omita los parámetros de formato para usar el formato tabular predeterminado.
["index": "kibana_sample_data_flights",
"fragmento": "0",
"estado": "EMPEZADO",
"tienda": "5.3mb ",
"id": "gSlMjTKyTemoOX-EO7Em4w",
"ip": "172.28.86.133 "
,
"index": "kibana_sample_data_flights",
"fragmento": "0",
"estado": "EMPEZADO",
"tienda": "5.3mb ",
"id": "FTd_2iXjSXudN_Ua4tZhHg",
"ip": "172.28.27.142 "
,
"índice": ".slm-history-3-000001 ",
"fragmento": "0",
"estado": "EMPEZADO",
"tienda": nulo,
"id": "gSlMjTKyTemoOX-EO7Em4w",
"ip": "172.28.86.133 "
,
"índice": ".slm-history-3-000001 ",
"fragmento": "0",
"estado": "EMPEZADO",
"tienda": nulo,
"id": "FTd_2iXjSXudN_Ua4tZhHg",
"ip": "172.28.27.142 "
,
"índice": "índice_destino",
"fragmento": "0",
"estado": "EMPEZADO",
"tienda": "5.9mb ",
"id": "FTd_2iXjSXudN_Ua4tZhHg",
"ip": "172.28.27.142 "
,
"índice": ".seguimiento-es-7-2021.01.22 ",
"fragmento": "0",
"estado": "EMPEZADO",
"tienda": "154.7mb ",
"id": "gSlMjTKyTemoOX-EO7Em4w",
"ip": "172.28.86.133 "
,
"índice": ".seguimiento-es-7-2021.01.22 ",
"fragmento": "0",
"estado": "EMPEZADO",
"tienda": "270.2mb ",
"id": "FTd_2iXjSXudN_Ua4tZhHg",
"ip": "172.28.27.142 "
,
-----------------------------------SALIDA TRUNCADA-------------------------
Información de fragmentos para índices específicos
Para obtener información sobre un fragmento para un índice específico, pase el nombre del índice de la siguiente manera:
OBTENGA _cat / shards / kibana_sample_data_flightsIngrese el comando cURL de la siguiente manera:
curl -XGET "http: // localhost: 9200 / _cat / shards / kibana_sample_data_flights"Este comando le brinda información sobre los fragmentos de ese índice específico:
kibana_sample_data_flights 0 p COMENZADO 13059 5.3mb 172.28.86.133 instancia-0000000003kibana_sample_data_flights 0 r COMENZADO 13059 5.3mb 172.28.27.142 instancia-0000000001
NOTA: También puede utilizar parámetros para filtrar los datos anteriores.
Conclusión
En esta guía, le mostramos cómo usar la API cat para obtener información sobre los fragmentos que se ejecutan en el clúster de Elasticsearch.