Salta al contenuto

Come posso risolvere i problemi di aggiornamento di Aurora compatibile con MySQL?

6 minuti di lettura
0

Desidero risolvere gli errori che si verificano quando utilizzo un'implementazione blu/verde per aggiornare il mio database Amazon Aurora compatibile con MySQL.

Breve descrizione

Se utilizzi un'implementazione blu/verde per aggiornare un database Aurora compatibile con MySQL, l'implementazione potrebbe mostrare "Invalid configuration" per lo stato dell'aggiornamento. Per ulteriori informazioni sul problema, controlla se è presente il seguente messaggio in Log ed eventi dell'istanza di scrittura:

"Failed to provision due to upgrade incompatibilities."

Per risolvere l'errore, completa i seguenti passaggi.

Risoluzione

Preparati all'implementazione blu/verde

Per ridurre i problemi relativi all'implementazione blu/verde, rispetta le seguenti best practice per prepararti all'implementazione:

  • Rivedi la matrice di compatibilità delle versioni di Aurora MySQL per assicurarti di poter aggiornare la versione attuale alla versione di destinazione con implementazione blu/verde. Per ulteriori informazioni, consulta Verifica dei numeri di versione di Aurora MySQL.
  • Valuta la capacità dell'applicazione di gestire brevi interruzioni durante la conversione. Puoi anche implementare la logica dei tentativi di connessione nel codice dell'applicazione per facilitare il processo di conversione. Per ulteriori informazioni, consulta Best practice generali per le implementazioni blu/verdi.
  • Rivedi tutte le impostazioni di configurazione per assicurarti che la versione attuale sia compatibile con la versione di destinazione.
  • Crea un backup del database corrente per assicurarti di poterlo ripristinare se necessario.

Esegui l'implementazione blu/verde

Durante l'implementazione, completa le seguenti attività:

  • Utilizza le metriche di Amazon CloudWatch, Amazon EventBridge e i log per monitorare l'avanzamento dell'aggiornamento.
  • Se esegui l'aggiornamento a una versione secondaria più recente all'interno della stessa versione principale, utilizza la funzionalità di aggiornamento locale (in-place) nel cluster verde. Questa funzionalità consente di accedere all'ultima versione della patch prima di completare il processo di conversione.
  • Dopo aver verificato che l'ambiente verde è pronto e che il cluster verde non presenta ritardi di replica, completa la conversione durante una finestra di manutenzione pianificata.

Se lo switchover si blocca o rallenta durante la conversione, controlla i log degli errori per individuare eventuali messaggi di errore o colli di bottiglia specifici. Puoi specificare un periodo di timeout dello switchover compreso tra 30 secondi e 3.600 secondi (1 ora). Se lo switchover richiede più tempo del periodo specificato, Aurora annulla le modifiche e non modifica nessuno dei due ambienti.

Nota: il periodo di timeout predefinito è 300 secondi (5 minuti).

Utilizza approcci di aggiornamento alternativi

Per alcuni aggiornamenti, ad esempio da Aurora serverless v1 ad Aurora serverless v2, non puoi utilizzare il processo di implementazione blu/verde. Utilizza uno dei seguenti metodi per risolvere il problema:

Utilizza repliche in lettura

Esegui queste azioni:

  1. Crea una replica in lettura del cluster Aurora serverless v1.
  2. Aggiorna la replica in lettura del cluster ad Aurora serverless v2.
  3. Aggiorna la replica in lettura in modo che diventi il cluster principale.

Per ulteriori informazioni, consulta Aggiornamento di un cluster da Aurora serverless v1 ad Aurora serverless v2.

Utilizza il ripristino da snapshot

Esegui queste azioni:

  1. Crea uno snapshot del cluster Aurora serverless v1.
  2. Ripristina lo snapshot su un nuovo cluster Aurora serverless v2.
  3. Aggiorna l'applicazione in modo che punti al nuovo cluster v2.

Rivedi le configurazioni dopo l'aggiornamento

Dopo aver completato l'aggiornamento del cluster, verifica che tutte le funzioni del database, le procedure archiviate e le query delle applicazioni funzionino come previsto. Monitora le metriche delle prestazioni per 24-48 ore dopo l'aggiornamento, comprese le ore di picco, per assicurarti che non si producano effetti inaspettati sulle prestazioni.

Ulteriori passaggi per la risoluzione dei problemi

Errore di incompatibilità

Se la configurazione corrente del database utilizza impostazioni o funzionalità non compatibili con il database di destinazione, ricevi il seguente messaggio di errore:

"Failed to provision due to upgrade incompatibilities. See https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.mysql80-upgrade-procedure.html#AuroraMySQL.mysql80-upgrade-troubleshooting to resolve these issues, then delete and recreate this Blue/Green Deployment."

Per risolvere l'errore, completa i seguenti passaggi:

  1. Esamina il file upgrade-prechecks.log nel database Aurora compatibile con MySQL.
  2. Risolvi eventuali problemi di compatibilità identificati nel file di log. Per ulteriori informazioni, consulta Riepilogo dei controlli preliminari all'aggiornamento di Community MySQL e Riepilogo dei controlli preliminari all'aggiornamento di Aurora MySQL.
  3. Elimina l'implementazione blu/verde.
  4. Ricrea l'implementazione blu/verde.

Errore di compatibilità dei parametri

Se il cluster verde è in uno stato parametri incompatibili e non è Disponibile, i parametri del cluster o i valori dei parametri dell'istanza esistenti non sono compatibili con la versione di destinazione.

Per risolvere l'errore, completa i seguenti passaggi:

  1. Reimposta i gruppi di parametri del cluster e i valori dei parametri dell'istanza.

  2. Per promuovere il cluster verde a cluster autonomo, esegui il comando promote-read-replica-db-cluster:

    aws rds promote-read-replica-db-cluster --db-cluster-identifier <Green Cluster>
  3. Elimina il cluster e l'istanza.

  4. Verifica la compatibilità dei valori dei parametri del cluster esistente con la versione di destinazione. Oppure passa ai valori predefiniti nel cluster blu. Quindi modifica i valori dei parametri uno alla volta durante il passaggio al cluster verde.

  5. Dopo aver convalidato i parametri, crea un nuovo ambiente blu/verde.

Risolvi i problemi relativi a un aggiornamento bloccato

Il cluster verde potrebbe bloccarsi durante l'aggiornamento per i seguenti motivi:

  • Incompatibilità della versione di destinazione
  • Le transazioni di lunga durata nel cluster blu bloccano il processo di aggiornamento nel cluster verde

Per risolvere l'errore, completa le seguenti attività:

  1. Controlla se la versione aggiornata supporta la versione di destinazione per l'aggiornamento diretto.
  2. Se la versione non è supportata, ripristina le modifiche ed elimina l'implementazione blu/verde.
  3. Effettua l'aggiornamento alla versione intermedia consigliata. Infine, esegui l'aggiornamento alla versione finale.

Puoi anche monitorare il cluster blu per verificare se sono presenti transazioni che durano a lungo. Se sono presenti transazioni che durano a lungo, completale o terminale. Quindi ritenta il processo di aggiornamento.

Informazioni correlate

Come aggiornare il mio cluster di database Amazon Aurora MySQL a una nuova versione?

Upgrade to Amazon Aurora MySQL version 3 (with MySQL 8.0 compatibility) (Aggiornamento ad Amazon Aurora MySQL versione 3 (con compatibilità MySQL 8.0))

Performing major version upgrades for Amazon Aurora MySQL with minimum downtime (Esecuzione di aggiornamenti della versione principale per Amazon Aurora MySQL con tempi di inattività minimi)

Aggiornamento della versione principale di un cluster di database Amazon Aurora MySQL

AWS UFFICIALEAggiornata 3 mesi fa