Perché il dominio del servizio OpenSearch di Amazon è bloccato nello stato "Elaborazione"?

7 minuti di lettura
0

Il mio cluster del servizio OpenSearch di Amazon è bloccato nello stato "Elaborazione".

Breve descrizione

Il cluster del servizio OpenSearch entra nello stato "Elaborazione" mentre è in corso una modifica della configurazione. Il cluster può rimanere bloccato nello stato "Elaborazione" se si verifica una delle seguenti condizioni:

  • Un controllo di convalida ha dato esito negativo e ha restituito errori.
  • È impossibile avviare un nuovo set di risorse.
  • La migrazione della partizione al nuovo set di nodi di dati non è completa.
  • Il vecchio set di risorse non è riuscito a terminare.

Quando si avvia una modifica alla configurazione, lo stato del dominio passa a "Elaborazione" mentre il servizio OpenSearch crea un nuovo ambiente. Nel nuovo ambiente, il servizio OpenSearch lancia un nuovo set di nodi applicabili, come nodi di dati, nodi primari dedicati o nodi UltraWarm. Al termine della migrazione, i nodi più vecchi vengono terminati.

È possibile visualizzare lo stato di avanzamento della modifica della configurazione nella console, alla sezione Stato del dominio. Puoi anche monitorare lo stato di avanzamento di una modifica alla configurazione utilizzando l'API DescribeDomainChangeProgress. Per ulteriori informazioni, consulta Fasi di una modifica della configurazione.

Risoluzione

Un controllo di convalida ha dato esito negativo e ha restituito errori

Quando si avvia una modifica alla configurazione o si esegue un aggiornamento della versione del dominio del servizio OpenSearch, quest'ultimo esegue prima una serie di controlli di convalida. I controlli di convalida assicurano che il tuo dominio sia idoneo per l’aggiornamento. Un dominio può rimanere bloccato nello stato "Elaborazione" quando i controlli di convalida danno esito negativo e restituiscono errori. Esistono diversi motivi per cui un controllo di convalida può dare esito negativo. Per risolvere questo problema, consulta Risoluzione degli errori di convalida. Segui i passaggi di risoluzione dei problemi associati agli errori di convalida e prova di nuovo a modificare la configurazione.

È impossibile avviare un nuovo set di risorse

Quando si inviano modifiche alla configurazione simultanee al cluster prima del completamento della prima modifica alla configurazione, il cluster può rimanere bloccato. Quando invii una nuova modifica alla configurazione, attendi che sia completata prima di inviarne un'altra.

I controlli di convalida per il tuo dominio nella fase di Convalida rimangono validi per tutta la durata della modifica della configurazione. Se la configurazione supera la fase di Convalida, evita di modificare le risorse da cui dipende il dominio. Ad esempio, non disattivare la chiave del Servizio di gestione delle chiavi AWS (AWS KMS) utilizzata per la crittografia.

Il tuo dominio può bloccarsi anche se rileva un errore ClusterBlockException. Ciò può accadere a causa della mancanza di spazio di archiviazione disponibile o dell'elevata pressione di memoria JVM. Per ulteriori informazioni e per suggerimenti sulla risoluzione dei problemi, consulta ClusterBlockException.
Nota: puoi controllare i parametri FreeStorageSpace, MasterCPUUtilization e MasterJVMMemoryPressure in Amazon CloudWatch.

La migrazione della partizione al nuovo set di nodi di dati non è completa

Dopo la creazione delle nuove risorse da parte del servizio OpenSearch, inizia la migrazione della partizione dal vecchio set di nodi di dati a quello nuovo. Questa fase può richiedere da alcuni minuti a diverse ore, a seconda del carico e delle dimensioni del cluster.

Per monitorare l'attuale migrazione delle partizioni tra i vecchi e i nuovi nodi, esegui la seguente chiamata API:

GET /<DOMAIN_ENDPOINT>/_cat/recovery?active_only=true

La migrazione della partizione potrebbe non riuscire per i seguenti motivi:

  • Il cluster del servizio OpenSearch è attualmente allo stato di integrità rosso. Se il cluster è allo stato di integrità rosso, risolvi i problemi che causano lo stato rosso del cluster per consentire allo stesso di passare a uno stato integro. Per ulteriori informazioni, consulta Perché il mio cluster Amazon OpenSearch Service è rosso o giallo?
  • Il cluster è sovraccarico e non può allocare risorse per gestire la migrazione della partizione. Un cluster con una pressione elevata di CPU e JVM potrebbe sovraccaricarsi. Monitora i parametri di CloudWatch JVMMemoryPressure e di utilizzo della CPU. Per ulteriori informazioni, consulta Visualizzazione delle metriche in CloudWatch.
  • Il nuovo set di nodi non ha uno spazio di archiviazione libero sufficiente. Questo problema si verifica quando sono presenti nuovi dati che entrano nel cluster durante un processo di implementazione blu/verde. Questo problema può verificarsi anche quando i vecchi nodi hanno partizioni di grandi dimensioni che non possono essere allocate ai nuovi nodi.

Per vedere le dimensioni delle tue partizioni, usa l'API cat shards sul sito web di Elasticsearch.
Per vedere il numero di partizioni assegnate a ciascun nodo, utilizza l'API cat allocation sul sito web di Elasticsearch.
Per capire perché alcune partizioni non possono essere assegnate ai nuovi nodi, utilizza l'API cluster allocation explain sul sito web di Elasticsearch.
Se disponi di vecchi indici che non ti servono più, puoi utilizzare l'API delete index sul sito web di Elasticsearch per liberare spazio di archiviazione.

Se la tua partizione non può essere assegnata a un nodo perché ha superato il numero massimo di tentativi, puoi riprovare l'allocazione. Aumenta l'impostazione dell'indice "index.allocation.max_retries"index associata a quella partizione utilizzando la seguente chiamata API:

PUT <INDEX_NAME>/_settings
{
    "index.allocation.max_retries" : 10
}

Nota: per impostazione predefinita, il cluster tenta di allocare una partizione per un massimo di 5 volte consecutive.

  • A causa di problemi hardware interni, le partizioni sui vecchi nodi di dati possono rimanere bloccate durante una migrazione.
    Nota: a seconda del problema hardware, il servizio OpenSearch esegue script di riparazione automatica per riportare i nodi a uno stato integro.
  • Un trasferimento di partizioni bloccato causato da partizioni bloccate su un set di nodi precedente. Per assicurarti che le partizioni non siano bloccate su nessun nodo, controlla le impostazioni dell'indice. In alternativa, controlla se il tuo cluster presenta un errore ClusterBlockException.

Per identificare le partizioni che non possono essere allocate ai nuovi nodi e le impostazioni dell'indice corrispondenti, utilizza i seguenti comandi:

GET /<DOMAIN_ENDPOINT>/_cluster/allocation/explain?pretty
GET /<DOMAIN_ENDPOINT>/<INDEX_NAME>/_settings?pretty

Utilizzando l'API get index settings sul sito web di Elasticsearch, controlla se viene visualizzata una di queste impostazioni:

{
    "index.routing.allocation.require._name": "NODE_NAME" (OR)
    "index.blocks.write": true
}

Se trovi "index.routing.allocation.require._name": "<NODE_NAME>" nelle impostazioni dell'indice, ripristina tale impostazione utilizzando la seguente chiamata API:

PUT /<DOMAIN_ENDPOINT>/<INDEX_NAME>/_settings
{
    "index.routing.allocation.require._name": null
}

Per ulteriori informazioni, consulta Index-level shard allocation filtering sul sito web di Elasticsearch.

Se osservi "index.blocks.write": true nelle impostazioni dell'indice, significa che l'indice ha un blocco di scrittura. Il problema del blocco di scrittura potrebbe essere causato da un errore ClusterBlockException. Per ulteriori informazioni, consulta Come faccio a risolvere l'errore 403 "index_create_block_exception" o "cluster_block_exception" in OpenSearch Service?

Best practice

Per evitare che il cluster del servizio OpenSearch rimanga bloccato nello stato "Elaborazione", segui queste best practice:

  • Assicurati che il tuo cluster sia in grado di supportare il processo di implementazione blu/verde prima di inviare una modifica alla configurazione.
  • Invia una versione dry run delle modifiche prima di inviarle alla configurazione.
  • Assicurati che il cluster non sia sovraccarico.
  • Evita di inviare più modifiche alla configurazione contemporaneamente.
  • Valuta la possibilità di inviare una modifica alla configurazione durante le ore di traffico ridotto.
  • Monitora lo stato di avanzamento della modifica alla configurazione.

**Nota:**Contatta il Supporto AWS se si verifica una delle seguenti situazioni:

  • Il cluster rimane bloccato nello stato "Elaborazione" per più di 24 ore.
  • Il tuo dominio è bloccato nella fase "Eliminazione di risorse precedenti".
AWS UFFICIALE
AWS UFFICIALEAggiornata 4 mesi fa