Esecuzione di un aggiornamento di versione minore - Amazon Aurora

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esecuzione di un aggiornamento di versione minore

Puoi utilizzare i seguenti metodi per aggiornare la versione secondaria di un cluster di database o per applicare le patch a un cluster di database:

Prima di eseguire un aggiornamento di una versione secondaria

Si consiglia di eseguire le seguenti azioni per ridurre i tempi di inattività durante l'aggiornamento di una versione secondaria:

Come eseguire aggiornamenti della versione secondaria e applicare patch

Gli aggiornamenti e le patch delle versioni minori sono disponibili solo dopo test rigorosi. Regioni AWS Prima di rilasciare aggiornamenti e patch, Aurora PostgreSQL esegue dei test per garantire che i problemi di sicurezza noti, i bug e altri problemi che emergono dopo il rilascio della versione comunitaria minore non compromettano la stabilità della flotta di Aurora PostgreSQL.

Se attivi Abilita l'aggiornamento automatico della versione secondaria, Aurora PostgreSQL aggiorna periodicamente il cluster DB durante la finestra di manutenzione specificata. Assicurati che l'opzione Abilita l'aggiornamento automatico della versione secondaria sia attivata per tutte le istanze del cluster Aurora PostgreSQL DB. Per informazioni su come impostare l'aggiornamento automatico delle versioni secondarie e su come funziona l'impostazione quando viene applicata a livello di cluster e istanza, consulta  Aggiornamenti automatici delle versioni secondarie per cluster DB Aurora.

Controlla il valore dell'opzione Abilita l'aggiornamento automatico della versione secondaria per tutti i cluster Aurora PostgreSQL DB utilizzando il comando seguente. describe-db-instances AWS CLI

aws rds describe-db-instances \ --query '*[].{DBClusterIdentifier:DBClusterIdentifier,DBInstanceIdentifier:DBInstanceIdentifier,AutoMinorVersionUpgrade:AutoMinorVersionUpgrade}'

Questa query restituisce un elenco di tutti i cluster database Aurora e delle relative istanze con un valore true o false per lo stato dell'impostazione AutoMinorVersionUpgrade. Il comando presuppone che tu abbia configurato come target AWS CLI quello predefinito. Regione AWS

Per ulteriori informazioni sull'opzione Aggiornamento automatico delle versioni minori (AmVU) e su come modificare il cluster database Aurora per utilizzarla, consulta Aggiornamenti automatici delle versioni secondarie per cluster DB Aurora.

Puoi aggiornare i cluster database Aurora PostgreSQL alle nuove versioni secondarie rispondendo alle attività di manutenzione o modificando il cluster per utilizzare la nuova versione.

Puoi identificare eventuali aggiornamenti o patch disponibili per i cluster database Aurora PostgreSQL utilizzando la console RDS e aprendo il menu Recommendations (Consigli). Qui è disponibile un elenco dei diversi problemi di manutenzione come Old minor versions (Versioni secondarie precedenti). A seconda dell'ambiente di produzione, puoi scegliere di pianificare l'aggiornamento o eseguire un'azione immediata, scegliendo Apply now (Applica ora) come mostrato di seguito.

Immagine della console che mostra la raccomandazione per eseguire l'aggiornamento a una versione secondaria più recente.

Per ulteriori informazioni su come gestire un cluster database Aurora, incluso come applicare manualmente le patch e gli aggiornamenti della versione secondaria, consulta Manutenzione di un cluster database Amazon Aurora.

Aggiornamenti della versione secondaria e applicazione di patch senza tempi di inattività

L'aggiornamento di un cluster database Aurora PostgreSQL comporta la possibilità di un'interruzione. Durante il processo di aggiornamento, il database viene arrestato. Se si avvia l'aggiornamento mentre il database è occupato, si perdono tutte le connessioni e le transazioni elaborate dal cluster database. Se si aspetta che il database sia inattivo per eseguire l'aggiornamento, potrebbe essere necessario attendere a lungo.

La funzione ZDP (applicazione delle patch senza tempi di inattività) migliora il processo di aggiornamento. Grazie a ZDP, è possibile applicare aggiornamenti della versione secondaria e patch con un impatto minimo sul cluster database Aurora PostgreSQL. ZDP viene utilizzato quando si applicano patch o aggiornamenti di versioni secondarie più recenti a versioni di Aurora PostgreSQL e altre versioni successive di queste versioni secondarie e le versioni principali più recenti. Ovvero, l'aggiornamento a nuove versioni secondarie da una qualsiasi di queste versioni in poi utilizza ZDP.

La tabella seguente mostra le versioni di Aurora PostgreSQL e le classi di istanze database in cui è disponibile ZDP:

Versione Classi di istanza db.r* Classi di istanza db.t* Classi di istanza db.x* Classe di istanza db.serverless
10.21 e versioni successive N/D
11.16 e versioni successive N/D
11.17 e versioni successive N/D
12.11 e versioni successive N/D
12.12 e versioni successive N/D
13.7 e versioni successive N/D
13.8 e versioni successive
14.3 e versioni successive N/D
14.4 e versioni successive N/D
14.5 e versioni successive
15.3 e versioni successive
16.1 e versioni successive

Durante il processo di aggiornamento tramite l'applicazione di patch senza tempi di inattività, il motore di database cerca un punto idoneo per sospendere tutte le nuove transazioni. Questa azione protegge il database durante le patch e gli aggiornamenti. Per assicurarsi che le applicazioni funzionino senza problemi con transazioni sospese, è consigliabile integrare la logica dell'esecuzione di nuovi tentativi nel codice. Questo approccio garantisce che il sistema sia in grado di gestire qualsiasi breve periodo di inattività senza errori e di riprovare le nuove transazioni dopo l'aggiornamento.

Quando l'applicazione di patch senza tempi di inattività è completata, le sessioni dell'applicazione vengono conservate, ad eccezione di quelle con connessioni eliminate; il motore di database viene riavviato mentre l'aggiornamento è ancora in corso. Il riavvio del motore di database può causare una riduzione temporanea della velocità di trasmissione effettiva, che dura in genere alcuni secondi o al massimo circa un minuto.

In alcuni casi, l'applicazione di patch senza tempi di inattività (ZDP) potrebbe non avere esito positivo. Ad esempio, le modifiche ai parametri che si trovano nello stato pending sul cluster di database Aurora PostgreSQL o le sue istanze possono interferire con l'applicazione di patch senza tempi di inattività.

Puoi trovare parametri ed eventi per le operazioni ZDP nella pagina Events (Eventi) nella console. Gli eventi includono l'avvio dell'aggiornamento ZDP e il completamento dell'aggiornamento. In questo caso puoi individuare il tempo richiesto dal processo e il numero di connessioni conservate e interrotte che si sono verificate durante il riavvio. Puoi individuare i dettagli nel registro degli errori del database.

Limitazioni dell'applicazione di patch senza tempi di inattività

Le seguenti limitazioni si applicano alle patch senza tempi di inattività:

  • ZDP cerca di preservare le connessioni client correnti all'istanza di Aurora PostgreSQL writer durante tutto il processo di aggiornamento di Aurora PostgreSQL. Tuttavia, nei seguenti casi, le connessioni verranno interrotte per l'applicazione di patch senza tempi di inattività:

    • Sono in esecuzione query o transazioni di lunga durata.

    • Sono in esecuzione istruzioni DDL (Data Definition Language).

    • Si utilizzando blocchi di tabelle o tabelle temporanee.

    • Vengono ascoltate tutte le sessioni sui canali di notifica.

    • È in uso un cursore nello stato "WITH HOLD".

    • TLSv1.1 le connessioni sono in uso. A partire dalle versioni di Aurora PostgreSQL successive alla 16.1, 15.3, 14.8, 13.11, 12.15 e 11.20, ZDP è supportato con connessioni 1.3. TLSv1

  • ZDP non è supportato nei seguenti casi:

    • Quando i cluster Aurora PostgreSQL DB sono configurati come Aurora Serverless v1.

    • Durante l'aggiornamento di qualsiasi istanza del lettore Aurora.

    • Durante l'aggiornamento di qualsiasi istanza di lettore Aurora che fa parte di un cluster Aurora Global Database in una regione secondaria.

    • Durante le patch e gli aggiornamenti del sistema operativo.

Aggiornamento del motore Aurora PostgreSQL a una nuova versione secondaria

Puoi aggiornare il cluster Aurora PostgreSQL DB a una nuova versione secondaria utilizzando la console, l'o l'API RDS. AWS CLI Prima di eseguire l'aggiornamento, si consiglia di seguire le stesse best practice consigliate per gli aggiornamenti della versione principale. Come per le nuove versioni principali, anche le nuove versioni secondarie possono contenere miglioramenti all'ottimizzatore, ad esempio correzioni, che possono causare regressioni del piano di query. Per garantire la stabilità del piano, si consiglia di utilizzare l'estensione Query Plan Management (QPM) come descritto in Garantire la stabilità del piano dopo un aggiornamento di versione principale.

Aggiornare la versione del motore del cluster database Aurora PostgreSQL
  1. Accedi a AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegliere Databases (Database) quindi selezionare il cluster di database da aggiornare.

  3. Scegliere Modify (Modifica). Viene visualizzata la pagina Modify DB cluster (Modifica cluster di database).

  4. In Engine version (Versione motore) scegliere la nuova versione.

  5. Scegliere Continue (Continua) e controllare il riepilogo delle modifiche.

  6. Per applicare immediatamente le modifiche, scegliere Apply immediately (Applica immediatamente). In alcuni casi, la chiusura di questa opzione può causare un'interruzione. Per ulteriori informazioni, consulta Modifica di un cluster database Amazon Aurora.

  7. Nella pagina di conferma esaminare le modifiche. Se sono corrette, selezionare Modify Cluster (Modifica cluster) per salvare le modifiche.

    Oppure scegliere Back (Indietro) per cambiare le modifiche o Cancel (Annulla) per annullare le modifiche.

Per aggiornare la versione del motore di un cluster DB, usa il modify-db-cluster AWS CLI comando con i seguenti parametri:

  • --db-cluster-identifier – Nome del cluster database Aurora PostgreSQL.

  • --engine-version – Numero di versione del motore di database a cui effettuare l'aggiornamento. Per informazioni sulle versioni valide del motore, utilizzate il AWS CLI describe-db-engine-versionscomando.

  • --no-apply-immediately – Applica le modifiche durante la finestra di manutenzione successiva. Per applicare immediatamente le modifiche, utilizza invece --apply-immediately.

In Linux, macOS, oppure Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --engine-version new_version \ --no-apply-immediately

In Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --engine-version new_version ^ --no-apply-immediately

Per aggiornare la versione del motore di un cluster DB, utilizzare l'DBClusteroperazione Modifica. Specifica i seguenti parametri:

  • DBClusterIdentifier – Nome del cluster database, ad esempio mydbcluster.

  • EngineVersion – Numero di versione del motore di database a cui effettuare l'aggiornamento. Per informazioni sulle versioni valide del motore, utilizzate l'operazione Descrivi DBEngine le versioni.

  • ApplyImmediately – Indica se applicare le modifiche immediatamente o durante la finestra di manutenzione successiva. Per applicare le modifiche immediatamente, imposta il valore su true. Per applicare le modifiche durante la finestra di manutenzione successiva imposta il valore su false.