¿Cómo utilizo ISM para gestionar el poco espacio de almacenamiento en Amazon OpenSearch Service?

7 minutos de lectura
0

Mi clúster de Amazon OpenSearch Service tiene poco espacio de almacenamiento.

Descripción breve

La administración del estado del índice (ISM) permite automatizar las tareas rutinarias y luego aplicarlas a índices y patrones de índices en OpenSearch Service. Con ISM, puede definir políticas de administración personalizadas que le ayuden a mantener problemas como el bajo espacio en disco. Por ejemplo, puede utilizar una operación de transferencia y una política ISM para automatizar la eliminación de índices antiguos en función de condiciones como el tamaño del índice. La operación de transferencia de reinversión transfiere un objetivo a un nuevo índice cuando un índice existente cumple la condición definida.

Para crear una política de ISM para un patrón de índice mediante una operación como la transferencia, lleve a cabo los siguientes pasos:

1.Configure su índice de transferencia.

2.Cree una política de ISM.

3.Adjunte la política a un índice.

4.Añada la plantilla.

Después de adjuntar la política a un índice, su índice comienza a inicializarse y, a continuación, pasa a diferentes estados hasta que la operación de transferencia se complete. Para obtener más información sobre la operación de transferencia, consulte operación de transferencia en el sitio web Open Distro for OpenSearch.

Resolución

Configure su índice acumulativo

Cree un índice y un alias en los que el formato del índice coincida con el patrón de índice:

^.*-\d+$

Importante: Asegúrese de configurar correctamente su transferencia acumulativa. De lo contrario, recibirá un mensaje de error.

En el siguiente ejemplo, se crea «test-index-000001» y se rellena con varios documentos. Como en este ejemplo se utiliza un índice de transferencia acumulativo, el formato del índice debe coincidir con el patrón.

PUT test-index-000001/_doc/1
{
  "user": "testuser",
  "post_date": "2020-05-08T14:12:12",
  "message": "ISM testing"
}

Un índice de transferencia acumulativo requiere un alias que apunte al índice más reciente. Esto significa que debe crear un alias («test-index») mediante la siguiente consulta:

POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "test-index-000001",
        "alias": "test-index"
      }
    }
  ]
}

Nota: Si se incluye una operación de transferencia en la política de ISM, debe incluir un alias de transferencia . Para obtener más información, consulte ¿Por qué sigue fallando la acción de indexación acumulada de mi política de ISM en Amazon OpenSearch Service?

Crear una política de ISM

En los paneles de OpenSearch, elija la pestaña Administración de índices y, a continuación, cree una política de ISM para su operación de transferencia .

Por ejemplo:

Vuelva a un estado cálido

{
  "policy": {
    "policy_id": "Roll_over_policy",
    "description": "A test policy. DO NOT USE FOR PRODUCTION!",
    "schema_version": 1,
    "error_notification": null,
    "default_state": "hot",
    "states": [
      {
        "name": "hot",
        "actions": [
          {
            "rollover": {
              "min_size": "10mb"
            }
          }
        ],
        "transitions": [
          {
            "state_name": "warm"
          }
        ]
      },
      {
        "name": "warm",
        "actions": [
          {
            "replica_count": {
              "number_of_replicas": 2
            }
          }
        ],
        "transitions": []
      }
    ]
  }
}

En esta política de ISM, hay dos estados definidos: «caliente» y «cálido». De forma predeterminada, el índice está en estado «activo». El índice pasa al estado «activo» en cuanto el tamaño del índice alcanza los 10 MB y se crea un nuevo índice de transferencia acumulativo. En el estado «cálido», puede realizar varias acciones en el índice, como cambiar el recuento de réplicas a dos o realizar una operación de fuerza_fusión .

Haga una transferencia para eliminarlo después de unos días

{
  "policy": {
    "policy_id": "Roll_over_policy",
    "description": "A test policy. DO NOT USE FOR PRODUCTION!",
    "schema_version": 1,
    "error_notification": null,
    "default_state": "hot",
    "states": [
      {
        "name": "hot",
        "actions": [
          {
            "rollover": {
              "min_size": "10mb"
            }
          }
        ],
        "transitions": [
          {
            "state_name": "delete",
            "conditions": {
              "min_index_age": "30d"
            }
          }
        ]
      },
      {
        "name": "delete",
        "actions": [
          {
            "delete": {}
          }
        ],
        "transitions": []
      }
    ]
  }
}

En esta política de ISM, hay dos estados definidos: «activo» y «eliminar». De forma predeterminada, el índice está en estado «activo». Cuando el índice alcance los 10 MB, se crea un nuevo índice acumulativo. A continuación, transcurridos 30 días, el índice pasa al estado «eliminar» y se elimina el índice.

Adjuntar la política a un índice

Para adjuntar la política de ISM a un índice, lleve a cabo los siguientes pasos:

1.Abra los paneles de OpenSearch desde la consola de OpenSearch Service. Encontrará un enlace a los paneles de OpenSearch en el resumen del dominio de la consola de OpenSearch Service.

2.Seleccione la pestaña de Administración de índices.

3.Seleccione el índice al que desea adjuntar su política de ISM (por ejemplo: «test-index-000001»).

4.Seleccione ** Aplicar política**.

5.(Opcional) Si su política especifica alguna acción que requiera un alias, proporcione el alias y, a continuación, elija Aplicar. Su índice aparece en la lista de índices gestionados por políticas.

Actualización de la política de un índice existente

Nota : Cualquier actualización realizada en la política existente no se aplica automáticamente a los índices existentes, sino que requiere volver a aplicar la misma política a los índices.

Para volver a aplicar la política de ISM a cualquier índice existente, lleve a cabo los siguientes pasos:

1.Abra los paneles de OpenSearch desde la consola de OpenSearch Service.

2.Seleccione la pestaña de Administración de índices.

3.En la sección Índices gestionados por políticas, elija Cambiar política.

4.Elija los índices a los que desea aplicar el cambio (por ejemplo: «test-index-000001»).

5.Elija el estado actual de los índices.

6.En la sección Elegir nueva política elija** actualizar el nombre de la política**.

7.(Opcional) Si desea cambiar los índices a otro estado después de la actualización de la política, elija Cambiar los índices al siguiente estado una vez que la política entre en vigor. A continuación, elija el estado de la lista desplegable.

Añadir la plantilla

Adjunte la política a un índice específico, como «test-index-000002», que se creó como resultado de la política de ISM. Con este accesorio, los índices también se transfieren una vez que se cumple la condición requerida (como el tamaño del índice).

Puedes crear y usar una plantilla de ISM como esta:

PUT _plugins/_ism/policies/test_policy
{
  "policy": {
    "description": "A test policy. DO NOT USE FOR PRODUCTION!",
    "last_updated_time": 1642027350875,
    "schema_version": 1,
    "error_notification": null,
    "default_state": "hot",
    "states": [
      {
        "name": "hot",
        "actions": [
          {
            "rollover": {
              "min_size": "10mb"
            }
          }
        ],
        "transitions": [
          {
            "state_name": "warm"
          }
        ]
      },
      {
        "name": "warm",
        "actions": [
          {
            "replica_count": {
              "number_of_replicas": 2
            }
          }
        ],
        "transitions": []
      }
    ],
    "ism_template": {
      "index_patterns": [
        "test*"
      ],
      "priority": 100
    }
  }
}

En este ejemplo, la API de explicar índice verifica que la plantilla «test_policy» que creó esté adjunta al índice recién creado:

GET _plugins/_ism/explain/test-index-000002
{
  "test-index-000002": {
    "index.plugins.index_state_management.policy_id": "test_policy",
    "index.opendistro.index_state_management.policy_id": "test_policy",
    "index": "test-index-000002",
    "index_uuid": "CZrQ-RzRS8SmiWIuyqFmVg",
    "policy_id": "test_policy",
    "enabled": true
  },
  "total_managed_indices": 1
}

Nota: Este índice también aparece en la sección Índices gestionados de la pestaña deAdministración de índices de OpenSearch Dashboards.

Estados de la política ISM

Cuando se adjunta una política de ISM a un índice, el índice entra en el estado de «Inicialización». Desde el estado «Inicialización», el índice pasa al estado «Predeterminado», que se define en la política. Esta operación de «inicialización», y todas las operaciones posteriores, pueden tardar entre 30 y 48 minutos. ISM utiliza este tiempo para realizar acciones políticas y, a continuación, comprueba si hay condiciones y pasa el índice a diferentes estados. También se añade una fluctuación aleatoria del 0 al 60 % para garantizar que no se produzcan picos de actividad procedentes de todos los índices al mismo tiempo.

Nota: Para una operación de transferencia, un índice se «completa» después de que el índice se renueva, pasa a un estado «cálido» y se actualiza el recuento de réplicas.

Si utiliza una política de ISM y el índice no se migra correctamente, compruebe el estado del ISM.

Para comprobar el estado de la migración de un índice determinado, utilice la siguiente sintaxis:

GET _ultrawarm/migration/<put_index_name_here>/_status

Para obtener un resumen de la migración de todos los índices, utilice la siguiente sintaxis:

GET _ultrawarm/migration/_status?

Información relacionada

Políticas de ejemplo

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año