Elasticsearch Eliminar todos los índices

Elasticsearch Eliminar Todos Los Indices



Elasticsearch es un motor de búsqueda y análisis gratuito y de código abierto que impulsa ELK Stack. Elasticsearch permite que las diversas canalizaciones de datos utilicen herramientas como Logstash para recopilar y agregar los datos. Luego, Elasticsearch almacena los datos proporcionados, lo que permite que las aplicaciones accedan, busquen, clasifiquen y filtren grandes cantidades de datos casi en tiempo real. Elasticsearch también le permite visualizar los diversos datos mediante herramientas integradas.

Estas funciones hacen que Elasticseach sea muy adecuado para buscar y ordenar grandes cantidades de datos con una latencia mínima o nula. Entonces, ya sea que esté creando un motor de búsqueda o analizando registros, métricas y otros datos de texto, Elasticsearch es una excelente opción.







En el corazón de Elasticsearch hay un índice. Un índice se refiere a la unidad responsable de almacenar los documentos en Elasticsearch. Un índice es relativamente equivalente a una base de datos en el contexto de las bases de datos relacionales. Por ejemplo, puede tener un índice que contenga todos los datos de los registros de una aplicación web.



Como todas las bases de datos, es posible que se encuentre con un escenario en el que necesite eliminar todos los datos de su clúster, lo que le permitirá comenzar desde cero.



Este artículo le muestra cómo usar las características de la API de Elasticsearch para eliminar todos los índices de su clúster.





PRECAUCIÓN: Los métodos y técnicas utilizados en este artículo provocarán la pérdida de datos. No nos hacemos responsables de ninguna pérdida de datos que pueda ocurrir debido a las instrucciones de este artículo.

API de índice de eliminación de Elasticsearch

Si está iniciando Elasticsearch, necesitará saber cómo realizar las llamadas API básicas. Esto se debe a que Elasticsearch utiliza las API al máximo.



Como puede adivinar, usamos la API Delete Index para eliminar un índice de un clúster. La sintaxis para las solicitudes de eliminación de índice es la siguiente:

ELIMINAR /< índice >

 
La solicitud elimina el índice especificado y los documentos almacenados, fragmentos y todos sus metadatos.

Tenga en cuenta que esto no eliminará ningún componente de Kibana asociado con el índice especificado, como vistas de datos, etc.

Puede especificar uno o varios índices separándolos con comas. Un ejemplo de sintaxis es como se muestra:

ELIMINAR / nombre_índice
ELIMINAR / índice1,índice2,índice3...índiceN

 
Elasticsearch le impide usar el alias de índice al eliminar un índice. En su lugar, debe utilizar el nombre del índice.

Ejemplo 1: índice de eliminación de Elasticsearch

El siguiente ejemplo muestra cómo usar la API de índice de eliminación de Elasticsearch para eliminar un índice existente del clúster:

rizo -XBORRAR 'http://localhost:9200/kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: informes'

 
La solicitud anterior envía una solicitud DELETE a la API de eliminación. Esto debería eliminar el índice con el nombre 'kibana_sample_data_logs'.

La salida resultante es como se muestra:

{
  'admitido' : verdadero
}

 

Ejemplo 2: Elasticsearch elimina varios índices

Podemos eliminar los múltiples índices pasándolos como una lista separada por comas. Una consulta de ejemplo es como se muestra:

rizo -XBORRAR 'http://localhost:9200kibana_sample_data_flights,kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: informes'

 
El comando anterior elimina los índices especificados y devuelve un mensaje como el que se muestra:

{
  'admitido' : verdadero
}

 
Nota: si el índice no existe, Elasticsearch devuelve un error como se muestra:

Ejemplo 3: Elasticsearch elimina todos los índices

Podemos usar el comodín _all en la API de índice de eliminación para eliminar todos los índices de un clúster. La API de índice de eliminación, de forma predeterminada, le impedirá pasar los comodines en la solicitud.

Puede deshabilitar esto configurando action.desctructive_requires_name en falso.

La siguiente consulta le muestra cómo habilitar el uso de comodines en la API de índice de eliminación:

rizo -XPUT 'localhost:9200 /_cluster/configuración' -H 'kbn-xsrf: informes' -H 'Tipo de contenido: aplicación/json' -d '
{
'transitorio': {
'acción.destructivo_requires_nombre': falso
  }
}'

 
NOTA: Aunque Elasticsearch no recomienda el uso de configuraciones de clúster transitorias, evite establecer parámetros de clúster destructivos, como el uso de comodines, como una configuración de clúster persistente.

La consulta anterior debería devolver el resultado como:

{
  'admitido' : verdadero ,
  'persistente' : { } ,
  'transitorio' : {
    'acción' : {
      'destructive_requires_name' : 'falso'
    }
  }
}

 
Una vez que tenga éxito, puede eliminar todos los índices en el clúster ejecutando el siguiente comando:

rizo -XBORRAR “http://localhost:9200/_all?pretty=true” -H 'kbn-xsrf: informes'

 

Ejemplo 4: Elasticsearch elimina todos los índices que coinciden con nombres específicos

Si desea eliminar todos los índices que coinciden con un patrón específico, puede utilizar un carácter comodín (*).

Por ejemplo, para eliminar todos los índices que comienzan con el nombre kibana, podemos ejecutar la siguiente consulta:

rizo -XBORRAR “http://localhost:9200/kibana*” -H 'kbn-xsrf: informes'

 
La solicitud anterior elimina todos los índices que comienzan con kibana.

NOTA: La solicitud anterior requiere el uso de comodines. Por lo tanto, debe habilitar la compatibilidad con comodines como se muestra en la sección anterior.

Conclusión

Esta guía le enseñó cómo usar la API de índice de eliminación de Elasticsearch. También aprendió cómo habilitar la compatibilidad con comodines en su clúster, eliminar todos los índices y eliminar los índices que coinciden con un patrón específico.