Perché l'aggiornamento del mio dominio Amazon OpenSearch Service impiega così tanto tempo?

Ultimo aggiornamento: 30/07/2021

Sto cercando di aggiornare il mio cluster Amazon OpenSearch Service (successore di Amazon Elasticsearch Service), ma l'aggiornamento sta impiegando molto tempo. Perché succede e come posso monitorare meglio lo stato di aggiornamento del cluster in OpenSearch Service?

Breve descrizione

Quando apporti una modifica alla configurazione in OpenSearch Service, viene utilizzato un processo di implementazione blu/verde. In un'implementazione blu/verde, vengono eseguiti due ambienti di produzione (uno è attivo, l'altro è inattivo). I due ambienti di produzione vengono quindi commutati in base agli aggiornamenti software. Per OpenSearch Service, viene creato un nuovo ambiente durante gli aggiornamenti del dominio e gli utenti vengono indirizzati al nuovo ambiente di produzione al termine degli aggiornamenti. Questo comportamento riduce al minimo i tempi di inattività e mantiene l'ambiente originale nel caso in cui un'implementazione non abbia esito positivo.

Per monitorare meglio lo stato di aggiornamento del cluster in OpenSearch Service, monitora il processo di implementazione blu/verde in ogni fase:

  • Creazione di nuovi nodi
  • Migrazione dei dati
  • Rimozione di vecchi nodi

Risoluzione

Recupero di tutti gli snapshot del cluster e degli ID dei nodi

Prima di una migrazione, OpenSearch Service acquisisce uno snapshot automatico del cluster quando supera il test di idoneità. Durante uno snapshot, lo stato di avanzamento potrebbe mostrare "null" o 0%. Dopo l'acquisizione dello snapshot, il valore percentuale viene aggiornato. Il tempo necessario per completare uno snapshot può variare a seconda dello spazio di archiviazione. Poiché gli snapshot vengono acquisiti in modo incrementale, il loro completamento può richiedere più tempo in caso di modifiche significative nei dati rispetto al precedente snapshot automatico.

La seguente richiesta _snapshot recupera tutti gli snapshot attualmente in esecuzione con informazioni dettagliate sullo stato:

GET /_snapshot/_status

Per ulteriori informazioni sulle API snapshot, consulta Monitora lo snapshot e ripristina l'avanzamento sul sito Web di Elasticsearch.

Per recuperare tutti gli snapshot attualmente in esecuzione nel cluster, utilizza il parametro current:

GET /_snapshot/<snapshot-repository>/_current

Per ottenere gli ID di tutti i nodi di dati, utilizza l'API cat nodes:

GET _cat/nodes

Puoi utilizzare gli ID del nodo per identificare quali nodi sono vecchi e quali nuovi. Un numero crescente di partizioni sui nuovi nodi indica una migrazione fluida. Alla fine, tutte le partizioni si sposteranno nei nuovi nodi e i vecchi nodi saranno vuoti.

Monitoraggio del processo di implementazione blu/verde

Quando il cluster entra nel processo di implementazione blu/verde, vengono visualizzati i nuovi nodi (nell'ambiente verde). Le partizioni vengono quindi migrate dai vecchi nodi (nell'ambiente blu). Una volta completata la migrazione dei dati o la riallocazione delle partizioni, il vecchio cluster viene demolito.

Puoi monitorare il processo di implementazione blu/verde nelle sue tre fasi: nuovi nodi, migrazione dei dati e rimozione dei vecchi nodi.

Fase 1: creazione di nuovi nodi

Puoi monitorare i parametri del cluster dei nodi in Amazon CloudWatch per ottenere il numero dei nodi. In alternativa, puoi utilizzare l'API cat nodes per elencare tutti i nodi nel cluster:

GET /_cat/nodes?v&pretty

Poiché stai solo aggiornando la versione del cluster, non appena il numero dei nodi (vecchi nodi e nuovi nodi) aumenta, il processo è completo. Successivamente, potresti vedere il tuo dominio OpenSearch Service tornare a uno stato "Attivo" (dopo essere stato nello stato "Elaborazione"). Per i cluster con nodi dedicati, puoi vedere che il numero di nodi aumenta fino alla somma dei nodi vecchi e nuovi. I nodi leader della configurazione precedente verranno chiusi e il numero di nodi diminuirà del numero di nodi leader. Ad esempio, un cluster OpenSearch Service con tre nodi leader dedicati diminuirà di tre nodi.

Fase 2: migrazione dei dati

Non appena la prima fase è completata, inizia la migrazione delle partizioni. Durante la migrazione dei dati, il numero di partizioni per i nodi più vecchi diminuisce e il numero di partizioni per i nodi più recenti aumenta. Puoi utilizzare l'API cat allocation per vedere quante partizioni sono allocate per ciascun nodo:

GET /_cat/allocation?v&pretty

Per ulteriori informazioni, consulta cat allocation sul sito Web di Elasticsearch.

Fase 3: rimozione di vecchi nodi

Dopo che tutte le partizioni sono state migrate nei nuovi nodi, i nodi più vecchi vengono rimossi dal cluster. Il numero dei nodi ritorna quindi al numero di nodi originale configurato. In questa fase, il processo di implementazione e aggiornamento blu/verde è completo.


Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?