Aggiornamento dei domini del servizio OpenSearch di Amazon - Amazon OpenSearch Service

Aggiornamento dei domini del servizio OpenSearch di Amazon

Nota

Gli aggiornamenti delle versioni di OpenSearch ed Elasticsearch servizio differiscono dagli aggiornamenti del software di servizio. Per ulteriori informazioni sull'aggiornamento del software del servizio per il dominio OpenSearch Service, consultare Aggiornamenti del software di assistenza nel servizio OpenSearch di Amazon.

Il servizio OpenSearch di Amazon offre aggiornamenti locali per domini che eseguono OpenSearch 1.0 o versioni successive oppure Elasticsearch 5.1 o versioni successive. Se si utilizzano servizi come Amazon Kinesis Data Firehose o Amazon CloudWatch Logs per lo streaming dei dati su OpenSearch Service, controllare che questi servizi supportino la versione più recente di OpenSearch prima di eseguire la migrazione.

Percorsi di aggiornamento supportati

Attualmente, OpenSearch Service supporta i seguenti percorsi di aggiornamento:

Dalla versione Alla versione
Opensearch 1.x Opensearch 1.x
Elasticsearch 7.x

Elasticsearch 7.x o OpenSearch 1.x

Importante

OpenSearch 1.x introduce numerose modifiche importanti. Per dettagli, consulta Servizio OpenSearch di Amazon - Riepilogo delle modifiche.

Elasticsearch 6.8

Elasticsearch 7.x o OpenSearch 1.x

Importante

Elasticsearch 7.0 e OpenSearch 1.0 includono numerose modifiche importanti. Prima di iniziare un aggiornamento locale, è preferibile acquisire uno snapshot manuale del dominio 6.x, ripristinarlo su un dominio di test 7.x o OpenSearch 1.x e utilizzare tale dominio per identificare potenziali problemi di aggiornamento. Per informazioni sulle modifiche importanti in OpenSearch 1.0, consulta Servizio OpenSearch di Amazon - Riepilogo delle modifiche.

Come Elasticsearch 6.x, gli indici possono contenere un solo tipo di mappatura, ma tale tipo ora deve essere denominato _doc. Di conseguenza, alcune API non richiedono più un tipo di mappatura nel corpo della richiesta (ad esempio l'API _bulk).

Per i nuovi indici, Elasticsearch 7.x e OpenSearch 1.x auto-ospitati, il numero di partizioni predefinito è uno. I domini OpenSearch Service su Elasticsearch 7.x e versioni successive mantengono il valore di default precedente pari a cinque.

Elasticsearch 6.x

Elasticsearch 6.x

Elasticsearch 5.6

Elasticsearch 6.x

Importante

Gli indici creati nella versione 6.x non supportano più tipi di mappatura diversi. Gli indici creati nella versione 5.x supportano ancora tipi di mappatura diversi quando sono ripristinati in un cluster 6.x. Controllare che il codice cliente crei un solo tipo di mappatura per indice.

Per ridurre al minimo il tempo di inattività durante l'aggiornamento da Elasticsearch 5.6 a 6.x, OpenSearch Service reindicizza l'indice .kibana su .kibana-6, elimina .kibana, crea un alias denominato .kibana e associa il nuovo indice al nuovo alias.

Elasticsearch 5.x Elasticsearch 5.x

Il processo di aggiornamento è costituito da tre fasi:

  1. Controlli pre-aggiornamento: OpenSearch Service esegue una serie di controlli per individuare problemi che possono bloccare un aggiornamento e non procede al passaggio successivo a meno che questi controlli non abbiano esito positivo.

  2. Snapshot: il servizio OpenSearch acquisisce uno snapshot del cluster OpenSearch o Elasticsearch e non procede al passaggio successivo a meno che lo snapshot non riesca. Se l'aggiornamento non riesce, il servizio OpenSearch utilizza questo snapshot per ripristinare lo stato originario del cluster. Per ulteriori informazioni su questo snapshot, consulta Impossibile eseguire il downgrade dopo l'aggiornamento.

  3. Aggiornamento: OpenSearch Service avvia l'aggiornamento, il cui completamento può richiedere da 15 minuti a diverse ore. OpenSearch Dashboards potrebbe non essere disponibile durante una parte o tutto l'aggiornamento.

Avvio di un aggiornamento

Il processo di aggiornamento è irreversibile e non può essere sospeso né annullato. Durante un aggiornamento, non è possibile apportare modifiche di configurazione al dominio. Prima di avviare un aggiornamento, controllare attentamente che si desidera continuare. Puoi usare queste stesse fasi per eseguire il controllo di pre-aggiornamento senza di fatto avviare un aggiornamento.

Se il cluster include nodi principali dedicati, gli aggiornamenti di OpenSearch vengono completati senza tempi di inattività. In caso contrario, il cluster potrebbe non rispondere per alcuni secondi dopo l'aggiornamento mentre elegge un nodo master.

Come eseguire l'aggiornamento di un dominio a una versione successiva di OpenSearch o Elasticsearch (console)

  1. Acquisire uno snapshot manuale del dominio. Questo snapshot funge da backup che è possibile ripristinare su un nuovo dominio per tornare a utilizzare la versione precedente di OpenSearch.

  2. Passare all'indirizzo https://aws.amazon.com e scegliere Sign In to the Console (Accedi alla console).

  3. In Analisi, scegliere Amazon OpenSearch Service.

  4. Nel riquadro di navigazione, scegli il dominio da aggiornare in Domains (Domini).

  5. Scegli Operazioni, quindi Aggiorna.

  6. Scegli la versione a cui eseguire l'aggiornamento. Se si sta eseguendo l'aggiornamento da una versione di Elasticsearch OSS, viene visualizzata l'opzione Abilita modalità di compatibilità. Se si attiva questa impostazione, OpenSearch riporta la sua versione come 7.10 per consentire ai client Elasticsearch OSS e ai plug-in come Logstash di continuare a lavorare con Amazon OpenSearch Service. Puoi disattivare questa operazione in un secondo momento

  7. Seleziona Upgrade (Aggiorna).

  8. Controlla il campo Stato dominio nel pannello di controllo del dominio per monitorare lo stato dell'aggiornamento.

Per aggiornare un dominio a una versione successiva di OpenSearch o Elasticsearch (AWS CLI e SDK)

È possibile utilizzare le seguenti operazioni per identificare la versione esatta di OpenSearch o Elasticsearch per il dominio, avviare un aggiornamento locale, eseguire il controllo pre-aggiornamento e visualizzare l'avanzamento:

  • get-compatible-versions (GetCompatibleVersions)

  • upgrade-domain (UpgradeDomain)

  • get-upgrade-status (GetUpgradeStatus)

  • get-upgrade-history (GetUpgradeHistory)

Per ulteriori informazioni, consultare Riferimento ai comandi AWS CLI e Riferimento dell'API di configurazione per il servizio OpenSearch di Amazon.

Risoluzione dei problemi relativi all'aggiornamento

Aggiornamenti locali richiedono domini sani. Il dominio potrebbe essere non idoneo per un aggiornamento o non completare l'aggiornamento per diversi motivi. La tabella riportata di seguito mostra i problemi più comuni.

Problema Descrizione
Troppe partizioni per nodo OpenSearch, così come le versioni 7.x di Elasticsearch hanno un'impostazione predefinita per non più di 1.000 partizioni per nodo. Se un nodo nel cluster corrente supera questa impostazione, OpenSearch Service non consente di eseguire l'aggiornamento. Consulta Limite massimo di partizioni superato per le opzioni di risoluzione dei problemi.
Dominio in elaborazione Il dominio è nel mezzo di una modifica di configurazione. Controlla l'idoneità dell'aggiornamento al termine dell'operazione.
Cluster in stato rosso Uno o più indici nel cluster sono in stato rosso. Per la risoluzione dei problemi, consulta Cluster in stato rosso.
Elevata percentuale di errori Il cluster restituisce un numero elevato di errori 5xx durante il tentativo di elaborazione delle richieste. Questo problema è in genere il risultato di un numero eccessivo di richieste di lettura o scrittura simultanee. Valuta la possibilità di ridurre il traffico verso il cluster o di eseguire il dimensionamento del dominio.
Split brain Split brain significa che il cluster contiene più nodi principali ed è stato diviso in due cluster che non verranno mai riuniti in modo autonomo. Puoi evitare lo split brain utilizzando il numero consigliato di nodi master dedicati. Per risolvere un problema di split brain, contatta AWS Support.
Impossibile trovare nodo master OpenSearch Service non è in grado di trovare il nodo principale del cluster. Se il dominio utilizza il Multi-AZ, un errore nella zona di disponibilità potrebbe aver causato la perdita del quorum da parte del cluster e la conseguente incapacità di eleggere un nuovo nodo master. Se il problema non si risolve automaticamente, contatta AWS Support.
Troppe attività in sospeso Il nodo master si trova in condizioni di carico elevato e presenta numerose attività in sospeso. Valuta la possibilità di ridurre il traffico verso il cluster o di eseguire il dimensionamento del dominio.
Volume di archiviazione compromesso Il volume del disco di uno o più nodi non funziona correttamente. Questo problema si verifica spesso insieme ad altri problemi, come un'elevata percentuale di errori o troppe attività in sospeso. Se si verifica in isolamento e non si risolve automaticamente, contatta AWS Support.
Problema chiave KMS La chiave KMS utilizzata per crittografare il dominio non è accessibile o manca. Per ulteriori informazioni, consultare Monitoraggio dei domini che crittografano dati a riposo.
Snapshot in corso Il dominio sta attualmente acquisendo una snapshot. Controlla l'idoneità dell'aggiornamento al termine della snapshot. Verifica anche che puoi elencare repository snapshot manuali, elencare snapshot all'interno di tali repository e acquisire snapshot manuali. Se OpenSearch Service non è in grado di controllare se uno snapshot è in corso, gli aggiornamenti possono non riuscire.
Timeout o errore snapshot Il pre-aggiornamento snapshot richiede troppo tempo o non è riuscito. Verifica l'integrità del cluster e riprova. Se il problema persiste, contatta AWS Support.
Indici incompatibili Uno o più indici sono incompatibili con la versione di destinazione. Questo problema può verificarsi se gli indici sono stati migrati da una versione precedente di OpenSearch ed Elasticsearch. Reindicizzare gli indici e riprovare.
Elevato utilizzo del disco L'utilizzo del disco per il cluster supera il 90%. Elimina i dati o ricalibra il dominio e riprova.
Elevato utilizzo JVM L'utilizzo della memoria JVM è superiore al 75%. Riduci il traffico verso il cluster o ricalibra il dominio e riprova.
Problema con l'alias di OpenSearch Dashboards .kibana è già configurato come un alias ed è mappato a un indice incompatibile, probabilmente uno di una versione precedente di OpenSearch Dashboards. Reindicizza e riprova.
Stato rosso di Dashboards Lo stato di OpenSearch Dashboards è rosso. Provare a usare Dashboards al termine dell'aggiornamento. Se lo stato rosso persiste, risolvilo manualmente e riprova.
Compatibilità tra cluster

È possibile eseguire l'aggiornamento solo se viene mantenuta la compatibilità tra cluster tra i domini di origine e di destinazione dopo l'aggiornamento. Durante il processo di aggiornamento, vengono identificate tutte le connessioni non compatibili. Per procedere, aggiornare il dominio remoto o eliminare le connessioni non compatibili. Tenere presente che se la replica è attiva sul dominio, non è possibile riprenderla dopo aver eliminato la connessione.

Altro problema del servizio di OpenSearch Service I problemi con OpenSearch Service stesso possono fare sì che il dominio venga visualizzato come non idoneo per un aggiornamento. Se nessuna delle condizioni precedenti si applica al dominio e il problema persiste per più di un giorno, contatta AWS Support.

Utilizzo di uno snapshot per migrare i dati

Gli aggiornamenti locali sono il modo più semplice, rapido e attendibile per aggiornare un dominio a una versione successiva di OpenSearch o Elasticsearch. Gli snapshot sono un'ottima opzione se occorre migrare da una versione precedente alla 5.1 di Elasticsearch o si desidera migrare a un cluster completamente nuovo.

Nella seguente tabella viene mostrato come utilizzare gli snapshot per migrare i dati in un dominio che utilizza una versione diversa di OpenSearch o Elasticsearch. Per informazioni su come acquisire e ripristinare gli snapshot, consulta Creazione di snapshot di indici in Amazon OpenSearch Service.

Dalla versione Alla versione Processo di migrazione
Elasticsearch 6.x o 7.x Opensearch 1.x
  1. Esaminare le modifiche importanti in OpenSearch 1.0 per vedere se è necessario adeguare gli indici o le applicazioni. Per altre considerazioni, consulta la tabella in Aggiornamento dei domini del servizio OpenSearch di Amazon.

  2. Creare uno snapshot manuale del dominio Elasticsearch 7.x o 6.x.

  3. Creare un dominio OpenSearch 1.x.

  4. Ripristinare lo snapshot dal dominio Elasticsearch al dominio OpenSearch. Durante l'operazione, è probabile che sia necessario ripristinare l'indice .kibana con un nuovo nome:

    POST _snapshot/<repository-name>/<snapshot-name>/_restore { "indices": "*", "ignore_unavailable": true, "rename_pattern": ".kibana", "rename_replacement": ".backup-kibana" }

    Quindi è possibile reindicizzare .backup-kibana sul nuovo dominio e configurarlo come alias su .kibana.

  5. Se non si ha più bisogno del dominio originale, eliminarlo. In caso contrario, verranno addebitati i costi per il dominio.

Elasticsearch 6.x Elasticsearch 7.x
  1. Esaminare le modifiche importanti in 7.0 per vedere se è necessario adeguare gli indici o le applicazioni. Per altre considerazioni, consulta la tabella in Aggiornamento dei domini del servizio OpenSearch di Amazon.

  2. Creare una snapshot manuale del dominio 6.x.

  3. Creare un dominio 7.x.

  4. Ripristinare la snapshot dal dominio originale al dominio 7.x. Durante l'operazione, è probabile che sia necessario ripristinare l'indice .kibana con un nuovo nome:

    POST _snapshot/<repository-name>/<snapshot-name>/_restore { "indices": "*", "ignore_unavailable": true, "rename_pattern": ".kibana", "rename_replacement": ".backup-kibana" }

    Quindi è possibile reindicizzare .backup-kibana sul nuovo dominio e configurarlo come alias su .kibana.

  5. Se non si ha più bisogno del dominio originale, eliminarlo. In caso contrario, verranno addebitati i costi per il dominio.

Elasticsearch 6.x Elasticsearch 6.8
  1. Creare una snapshot manuale del dominio 6.x.

  2. Creare un dominio 6.8.

  3. Ripristinare lo snapshot dal dominio originale nel dominio 6.8.

  4. Se non si ha più bisogno del dominio originale, eliminarlo. In caso contrario, verranno addebitati i costi per il dominio.

Elasticsearch 5.x Elasticsearch 6.x
  1. Esaminare le modifiche importanti in 6.0 per vedere se è necessario adeguare gli indici o le applicazioni. Per altre considerazioni, consulta la tabella in Aggiornamento dei domini del servizio OpenSearch di Amazon.

  2. Creare una snapshot manuale del dominio 5.x.

  3. Creare un dominio 6.x.

  4. Ripristinare la snapshot dal dominio originale al dominio 6.x.

  5. Se non si ha più bisogno del dominio 5.x, eliminarlo. In caso contrario, verranno addebitati i costi per il dominio.

Elasticsearch 5.x Elasticsearch 5.6
  1. Creare una snapshot manuale del dominio 5.x.

  2. Creare un dominio 5.6.

  3. Ripristinare la snapshot dal dominio originale al dominio 5.6.

  4. Se non si ha più bisogno del dominio originale, eliminarlo. In caso contrario, verranno addebitati i costi per il dominio.

Elasticsearch 2.3 Elasticsearch 6.x

Gli snapshot di Elasticsearch 2.3 non sono compatibili con la versione 6.x. Per migrare i dati direttamente da 2.3 a 6.x, è necessario ricreare manualmente gli indici nel nuovo dominio.

In alternativa, è possibile seguire i passaggi da 2.3 a 5.x in questa tabella, eseguire le operazioni _reindex nel nuovo dominio 5.x per convertire gli indici 2.3 negli indici 5.x e seguire i passaggi da 5.x a 6.x.

Elasticsearch 2.3 Elasticsearch 5.x
  1. Esaminare le modifiche importanti in 5.0 per vedere se è necessario adeguare gli indici o le applicazioni.

  2. Creare una snapshot manuale del dominio 2.3.

  3. Creare un dominio 5.x.

  4. Ripristinare la snapshot dal dominio 2.3 al dominio 5.x.

  5. Se non si ha più bisogno del dominio 2.3, eliminarlo. In caso contrario, verranno addebitati i costi per il dominio.

Elasticsearch 1.5 Elasticsearch 5.x

Gli snapshot di Elasticsearch 1.5 non sono compatibili con la versione 5.x. Per migrare i dati da 1.5 a 5.x, è necessario ricreare manualmente gli indici nel nuovo dominio.

Importante

Gli snapshot 1.5 sono compatibili con la versione 2.3, ma i domini di OpenSearch Service 2.3 non supportano l'operazione _reindex. Poiché non è possibile reindicizzarli, gli indici originati in un dominio 1.5 non riescono a effettuare il ripristino dalle snapshot 2.3 a domini 5.x.

Elasticsearch 1.5 Elasticsearch 2.3
  1. Utilizzare il plugin di migrazione per scoprire se è possibile effettuare direttamente l'upgrade alla versione 2.3. Potrebbe essere necessario modificare i dati prima della migrazione.

    1. In un browser Web, aprire http://domain-endpoint/_plugin/migration/.

    2. Scegliere Run checks now (Esegui controlli).

    3. Esaminare i risultati e, se necessario, seguire le istruzioni per modificare i dati.

  2. Creare una snapshot manuale del dominio 1.5.

  3. Creare un dominio 2.3.

  4. Ripristinare la snapshot dal dominio 1.5 al dominio 2.3.

  5. Se non si ha più bisogno del dominio 1.5, eliminarlo. In caso contrario, verranno addebitati i costi per il dominio.