¿Por qué tarda tanto la actualización de mi dominio de OpenSearch Service?

6 minutos de lectura
0

Estoy intentando actualizar mi dominio de Amazon OpenSearch Service, pero la actualización tarda mucho.

Descripción corta

Al actualizar la versión del dominio de OpenSearch Service, se producen cambios en la configuración que activan un proceso de despliegue azul-verde. En un despliegue azul-verde, se ejecutan dos entornos de producción. Un entorno está activo y el otro, inactivo. Los dos entornos de producción se cambian de acuerdo con las actualizaciones de software. En OpenSearch Service, se crea un nuevo entorno durante las actualizaciones del dominio y los usuarios se redirigen al nuevo entorno de producción una vez finalizadas las actualizaciones. Este comportamiento minimiza el tiempo de inactividad y mantiene el entorno original en caso de que el despliegue no tenga éxito.

El proceso de actualización de OpenSearch Service consiste en comprobar si hay problemas antes de la actualización y en una instantánea del clúster para restaurarlo en caso de que la actualización falle.

Pueden surgir los siguientes problemas con una actualización de OpenSearch Service:

  • Errores de comprobación antes de la actualización
  • El proceso de actualización tarda demasiado en completarse
  • La actualización se ha completado con problemas

Para obtener más información, consulte Actualización de dominios de Amazon OpenSearch Service.

Resolución

Comprobaciones antes de la actualización

El proceso de actualización es irreversible. No puede pausarse ni cancelarse. Durante una actualización, no puede realizar cambios de configuración en el dominio. Antes de iniciar una actualización, se recomienda comprobar si se cumplen los requisitos. Es posible que su dominio no cumpla los requisitos para una actualización o que no pueda actualizarse.

Para comprobar los problemas de actualización más comunes, consulte Solución de problemas de actualización.

Comprobar el estado de la instantánea

Antes de la migración, OpenSearch Service toma una instantánea automatizada del clúster cuando supera la prueba de aptitud. Durante una instantánea, el estado del progreso puede mostrar Null o 0 %. Después de que OpenSearch Service tome la instantánea, se actualiza el valor porcentual. El tiempo que se tarda en completar una instantánea puede variar según el espacio de almacenamiento. OpenSearch Service toma instantáneas de forma incremental. Si hay cambios importantes en los datos con respecto a la instantánea automatizada anterior, la instantánea puede tardar más en completarse.

La siguiente solicitud de _snapshot recupera todas las instantáneas que se están ejecutando actualmente, con información de estado detallada:

GET /_snapshot/_status

Para obtener más información sobre las API de instantáneas, consulte Supervisar una instantánea en el sitio web de Elasticsearch.

Recuperar todas las instantáneas del clúster y los ID de nodos

Para recuperar todas las instantáneas que se están ejecutando actualmente en el clúster, utilice el parámetro current:

GET /_snapshot/<snapshot-repository>/_current

Para obtener los ID de todos los nodos de datos, ejecute la API cat nodes:

GET _cat/nodes

Puede usar los ID de los nodos para identificar los nodos que son antiguos o nuevos. El aumento del número de particiones en los nuevos nodos indica una migración fluida. Finalmente, todas las particiones se mueven a los nodos nuevos y los nodos antiguos quedan vacíos.

Supervisar el proceso de despliegue azul-verde

Cuando el clúster entra en el proceso de despliegue azul-verde, aparecen los nuevos nodos en el entorno verde. Después, las particiones se migran desde los nodos antiguos del entorno azul. Una vez finalizada la migración de datos o la reasignación de particiones, se terminan los nodos antiguos.

Puede supervisar el proceso de despliegue azul-verde en sus tres etapas: nodos nuevos, migración de datos y eliminación de nodos antiguos.

Etapa 1: creación de nuevos nodos

Puede supervisar la métrica del clúster nodes en Amazon CloudWatch para obtener el recuento de nodos. O bien, puede usar la API cat nodes para enumerar todos los nodos de su clúster:

GET /_cat/nodes?v&pretty

Durante esta etapa del proceso de despliegue azul-verde, puede ver los nuevos nodos desde la salida de la API a medida que aumenta el número de nodos. 

Etapa 2: migración de datos

Tan pronto como se complete la primera etapa, comenzará la migración de particiones. Durante la migración de datos, el recuento de particiones de los nodos más antiguos disminuye y el recuento de particiones de los nodos más nuevos aumenta. Puede usar la API cat/allocation (del sitio web de OpenSearch) para obtener la cifra de particiones que se asignan a cada nodo: 

GET /_cat/allocation

Para obtener los estados de las particiones, Iniciadas, Reasignadas o Sin asignar, ejecute la siguiente API:

GET _cat/shards?h=index,shard,prirep,state,relocating.reason

Para comprobar el estado de recuperación (desde el sitio web de Elasticsearch) de las particiones del clúster, ejecute la siguiente API:

GET _cat/recovery?active_only=true

Durante esta etapa, es posible que la migración de datos tarde más en completarse debido a un clúster sobrecargado, a un desequilibrio de particiones o a problemas de backend.

Clúster sobrecargado

Asegúrese de actualizar la versión cuando el tráfico del clúster no sea elevado. Antes de comenzar la actualización, compruebe las métricas del clúster CPUUtilization y JVMMemoryPressure para asegurarse de que dichas métricas tienen valores óptimos.

Para obtener más información, consulte ¿Cómo soluciono los problemas de uso elevado de la CPU en mi clúster de Amazon OpenSearch Service?

Particiones desequilibradas

De forma predeterminada, OpenSearch Service tiene una estrategia de partición de 5:1, en la que cada índice se divide en cinco particiones principales. Defina el tamaño de su estrategia de partición para que cada una de las particiones tenga entre 10 y 30 GiB para las cargas de trabajo de búsqueda o entre 30 y 50 GiB para las cargas de trabajo de registros.

OpenSearch y Elasticsearch 7.x y versiones posteriores tienen un límite de 1000 particiones por nodo. Se recomienda no tener más de 25 particiones por GiB de montón de Java.

Para obtener más información, consulte ¿Cómo reequilibro la distribución desigual de particiones en mi clúster de Amazon OpenSearch Service?

Problemas de backend

Durante esta etapa, la migración de particiones puede estancarse debido a problemas de backend. Si la migración no avanza y el problema no se resuelve automáticamente, póngase en contacto con AWS Support.

Etapa 3: eliminación de nodos antiguos

Una vez que todas las particiones se hayan migrado a los nodos nuevos, los nodos más antiguos se eliminan del clúster. A continuación, el recuento de nodos vuelve al recuento de nodos original que se había configurado. En esta etapa, se han completado los procesos de despliegue azul-verde y actualización.

La actualización se ha completado con problemas

El mensaje «Se ha completado la actualización con problemas» aparece cuando el clúster bloquea las solicitudes de escritura entrantes. Compruebe la métrica ClusterIndexWritesBlocked de OpenSearch Service. Un valor de uno significa que el clúster bloquea las solicitudes de escritura. Para resolver este problema, añada más espacio en disco o escale su clúster.

Para obtener más información, consulte las prácticas recomendadas operativas para Amazon OpenSearch Service.

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 10 meses