Index State Management en Amazon OpenSearch Service - OpenSearch Servicio Amazon

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Index State Management en Amazon OpenSearch Service

La administración del estado de índices (ISM) de Amazon OpenSearch Service te permite definir políticas de administración personalizadas que automatizan las tareas rutinarias y aplicarlas a los índices y patrones de índices. Ya no es necesario configurar y administrar procesos externos para ejecutar las operaciones de índice.

Una política incluye un estado predeterminado y una lista de estados para que el índice pase de un estado al otro. Dentro de cada estado, se puede definir una lista de acciones para realizar y las condiciones que activan estas transiciones. Un caso de uso típico es eliminar periódicamente los índices antiguos después de un determinado periodo de tiempo. Por ejemplo, puede definir una política que mueva el índice a un estado read_only después de 30 días y, a continuación, lo elimine después de 90 días.

Después de adjuntar una política a un índice, ISM crea un trabajo que se ejecuta cada 5 a 8 minutos (o cada 30 a 48 minutos en los clústeres de la versión 1.3 y anteriores) para realizar acciones de políticas, verificar condiciones y pasar el índice a estados diferentes. El tiempo base para que este trabajo se ejecute es cada 5 minutos, además de una fluctuación aleatoria del 0 al 60 % para asegurarse de que no se produzca un aumento de la actividad de todos los índices al mismo tiempo. ISM no ejecuta trabajos si el estado del clúster es rojo.

ISM requiere Elasticsearch 6.8 OpenSearch o una versión posterior.

nota

Esta documentación proporciona una breve descripción general de ISM y varios ejemplos de políticas. También explica en qué se diferencia el ISM para los dominios OpenSearch de Amazon Service del ISM en los OpenSearch clústeres autogestionados. Para obtener la documentación completa sobre ISM, incluida una referencia exhaustiva de los parámetros, las descripciones de cada configuración y una referencia de la API, consulte Index State Management en la OpenSearch documentación.

importante

Ya no se pueden utilizar plantillas de índice para aplicar políticas de ISM a los índices recién creados. Puede seguir administrando automáticamente los índices recién creados con el campo de plantillas de ISM. Esta actualización introduce un cambio importante que afecta a las CloudFormation plantillas existentes que utilizan esta configuración.

Crear una política de ISM

Para empezar a utilizar la administración de estados de índice
  1. Abre la consola OpenSearch de Amazon Service en https://console.aws.amazon.com/aos/home.

  2. Seleccione el dominio para el que desea crear una política de ISM.

  3. Desde el panel de control del dominio, navegue hasta la URL de OpenSearch Dashboards e inicie sesión con su nombre de usuario y contraseña maestros. La URL tiene este formato:

    domain-endpoint/_dashboards/
  4. Abre el panel de navegación izquierdo en OpenSearch Dashboards y selecciona Administración de índices y, a continuación, Crear política.

  5. Utilice el editor visual o el editor de JSON para crear políticas. Se recomienda utilizar el editor visual, ya que ofrece una forma más estructurada de definir las políticas. Para obtener ayuda para crear políticas, consulte las políticas de muestra a continuación.

  6. Después de crear una política, puede adjuntarla a uno o más índices:

    POST _plugins/_ism/add/my-index { "policy_id": "my-policy-id" }
    nota

    Si su dominio ejecuta una versión de Elasticsearch heredada, utilice _opendistro en lugar de _plugins.

    También puede seleccionar el índice en los OpenSearch paneles y elegir Aplicar política.

Ejemplos de política

Los siguientes ejemplos de política muestran cómo automatizar los casos de uso comunes de ISM.

Traspaso de almacenamiento en caliente a templado y a frío

Este ejemplo de política mueve un índice del almacenamiento activo al almacenamiento activo y UltraWarm, finalmente, a almacenamiento en frío. A continuación, elimina el índice.

El índice se encuentra inicialmente en el estado hot. Transcurridos 10 días, ISM lo mueve al estado warm. 80 días más tarde, cuando el índice tiene 90 días, ISM lo mueve al estado cold. Luego de un año, el servicio envía una notificación a una sala de Amazon Chime que indica que el índice está siendo eliminado y, a continuación, lo elimina permanentemente.

Tenga en cuenta que los índices fríos requieren la operación cold_delete, en lugar de la operación delete normal. Tenga en cuenta también que es necesario un timestamp_field explícito en los datos para administrar índices fríos con ISM.

{ "policy": { "description": "Demonstrate a hot-warm-cold-delete workflow.", "default_state": "hot", "schema_version": 1, "states": [{ "name": "hot", "actions": [], "transitions": [{ "state_name": "warm", "conditions": { "min_index_age": "10d" } }] }, { "name": "warm", "actions": [{ "warm_migration": {}, "retry": { "count": 5, "delay": "1h" } }], "transitions": [{ "state_name": "cold", "conditions": { "min_index_age": "90d" } }] }, { "name": "cold", "actions": [{ "cold_migration": { "timestamp_field": "<your timestamp field>" } } ], "transitions": [{ "state_name": "delete", "conditions": { "min_index_age": "365d" } }] }, { "name": "delete", "actions": [{ "notification": { "destination": { "chime": { "url": "<URL>" } }, "message_template": { "source": "The index {{ctx.index}} is being deleted." } } }, { "cold_delete": {} }] } ] } }

Reducir el recuento de réplicas

Este ejemplo de política reduce el recuento de réplicas a cero, después de siete días, para conservar espacio en disco y, a continuación, elimina el índice después de 21 días. Esta política supone que su índice no es crítico y ya no recibe solicitudes de escritura; tener cero réplicas conlleva cierto riesgo de pérdida de datos.

{ "policy": { "description": "Changes replica count and deletes.", "schema_version": 1, "default_state": "current", "states": [{ "name": "current", "actions": [], "transitions": [{ "state_name": "old", "conditions": { "min_index_age": "7d" } }] }, { "name": "old", "actions": [{ "replica_count": { "number_of_replicas": 0 } }], "transitions": [{ "state_name": "delete", "conditions": { "min_index_age": "21d" } }] }, { "name": "delete", "actions": [{ "delete": {} }], "transitions": [] } ] } }

Tomar una instantánea de índice

Este ejemplo de política utiliza la operación snapshot para tomar una instantánea de un índice tan pronto como contenga al menos un documento. repository es el nombre del repositorio de instantáneas manual que registró en Amazon S3. snapshot es el nombre de la instantánea. Para obtener más información sobre los requisitos previos de una instantánea y los pasos para registrar un repositorio, consulte Creación de instantáneas de índices en Amazon Service OpenSearch .

{ "policy": { "description": "Takes an index snapshot.", "schema_version": 1, "default_state": "empty", "states": [{ "name": "empty", "actions": [], "transitions": [{ "state_name": "occupied", "conditions": { "min_doc_count": 1 } }] }, { "name": "occupied", "actions": [{ "snapshot": { "repository": "<my-repository>", "snapshot": "<my-snapshot>" } }], "transitions": [] } ] } }

Plantillas de ISM

Puede configurar un campo ism_template en una política, de modo que cuando se cree un índice que coincida con el patrón de plantilla, la política se adjuntará automáticamente a ese índice. En este ejemplo, cualquier índice que cree con un nombre que comience por “registro” se hace coincidir automáticamente con la política de ISM my-policy-id:

PUT _plugins/_ism/policies/my-policy-id { "policy": { "description": "Example policy.", "default_state": "...", "states": [...], "ism_template": { "index_patterns": ["log*"], "priority": 100 } } }

Para ver un ejemplo más detallado, consulte Ejemplo de política con plantillas de ISM para reversión automática.

Diferencias

En comparación OpenSearch con Elasticsearch, ISM for Amazon OpenSearch Service presenta varias diferencias.

Operaciones ISM

  • OpenSearch El servicio admite tres operaciones de ISM únicas warm_migrationcold_migration, y: cold_delete

    • Si su dominio UltraWarmestá habilitado, la warm_migration acción convierte el índice en almacenamiento en caliente.

    • Si el dominio tiene habilitado el almacenamiento frío, la acción cold_migration pasa el índice al almacenamiento frío, y la acción cold_delete elimina el índice del almacenamiento frío.

    Aunque una de estas acciones no se complete dentro del periodo de tiempo de espera establecido, la migración o eliminación de los índices prosigue. Configuración de un error_notification de una de las acciones anteriores, le notificará que la acción falla por no haberse completado dentro del periodo de tiempo de espera, pero la notificación es solo para su propia referencia. La propia operación no tiene un tiempo de espera inherente, y continúa ejecutándose hasta que finalmente se completa correctamente o falla.

  • Si tu dominio ejecuta Elasticsearch 7.4 OpenSearch o una versión posterior, el OpenSearch servicio admite el ISM open y close las operaciones.

  • Si tu dominio ejecuta Elasticsearch 7.7 OpenSearch o una versión posterior, OpenSearch Service admite la operación de ISM. snapshot

Operaciones de ISM de almacenamiento en frío

Para índices almacenados en frío, debe especificar un parámetro ?type=_cold cuando utilice las siguientes API de ISM:

Estas API para índices fríos tienen las siguientes diferencias adicionales:

  • Los operadores comodín no son compatibles excepto cuando se utilizan al final. Por ejemplo, se admite _plugins/_ism/<add, remove, change_policy, retry, explain>/logstash-*, pero no _plugins/_ism/<add, remove, change_policy, retry, explain>/iad-*-prod.

  • No se admiten varios nombres y patrones de índices. Por ejemplo, se admite _plugins/_ism/<add, remove, change_policy, retry, explain>/app-logs, pero no _plugins/_ism/<add, remove, change_policy, retry, explain>/app-logs,sample-data.

Configuración de ISM

OpenSearch y Elasticsearch te permiten cambiar todos los ajustes de ISM disponibles mediante la API. _cluster/settings En Amazon OpenSearch Service, solo puedes cambiar la siguiente configuración de ISM:

  • Configuración de nivel de clúster:

    • plugins.index_state_management.enabled

    • plugins.index_state_management.history.enabled

  • Configuración de nivel de índice:

    • plugins.index_state_management.rollover_alias