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à.
Limitazioni e considerazioni per le distribuzioni blu/verdi di Amazon RDS
Le implementazioni blu/green in Amazon RDS richiedono un'attenta considerazione di fattori come gli slot di replica, la gestione delle risorse, il dimensionamento delle istanze e i potenziali impatti sulle prestazioni del database. Le sezioni seguenti forniscono indicazioni per aiutarti a ottimizzare la tua strategia di distribuzione per garantire tempi di inattività minimi, transizioni senza interruzioni e una gestione efficace dell'ambiente di database.
Limitazioni per le implementazioni blu/verde
Le seguenti limitazioni si applicano alle implementazioni blu/verde.
Argomenti
Limitazioni generali per le implementazioni blu/verde
Le seguenti limitazioni generali si applicano alle implementazioni blu/verde:
-
Le distribuzioni blu/verde non supportano la gestione delle password degli utenti principali con. AWS Secrets Manager
Se il volume di log dedicato (DLV) è abilitato sul database blu, deve essere abilitato su tutte le istanze DB, incluse le repliche di lettura.
-
Durante il passaggio, gli ambienti blu e verdi non possono avere integrazioni Zero-ETL con Amazon Redshift. Occorre prima eliminare l'integrazione ed eseguire il passaggio, quindi ricreare l'integrazione.
-
Il pianificatore eventi (parametro
event_scheduler
) deve essere disabilitato nell'ambiente verde quando si crea un'implementazione blu/verde. Ciò impedisce che si generino eventi nell'ambiente verde e conseguentemente incongruenze. -
Non è possibile modificare un'istanza decrittografato in un'istanza crittografato.
-
Non è possibile modificare un di istanze DB blu con una versione del motore superiore rispetto al corrispondente di istanze DB verde.
-
Le risorse nell'ambiente blu e nell'ambiente verde devono trovarsi nello stesso Account AWS.
-
Le implementazioni blu/verde non sono supportate per le seguenti funzionalità:
-
Server proxy per Amazon RDS
-
Repliche di lettura a cascata
-
Repliche di lettura tra regioni diverse
-
AWS CloudFormation
-
Implementazioni di cluster DB Multi-AZ
Le implementazioni blu/verde sono supportate per le implementazioni dell'istanza database Multi-AZ. Per ulteriori informazioni sulle implementazioni Multi-AZ, consulta Configurazione e gestione di una distribuzione Multi-AZ per Amazon RDS.
-
Limitazioni di per implementazioni blu/verdi
Le seguenti limitazioni si applicano alle implementazioni blu/verdi di :
-
Il di istanze DB blu non può essere una replica binlog esterna.
-
Se il database di origine è associato a un gruppo di opzioni personalizzato, non è possibile specificare un aggiornamento della versione principale quando si crea l'implementazione blu/verde.
In tal caso, è possibile creare un'implementazione blu/verde senza specificare un aggiornamento della versione principale. Quindi, puoi aggiornare il database nell'ambiente verde. Per ulteriori informazioni, consulta Aggiornamento della versione del motore di un'istanza database.
-
Le distribuzioni blu/green non supportano il driver AWS JDBC per MySQL. Per ulteriori informazioni, consulta Limitazioni note su.
GitHub
Limitazioni di RDS per PostgreSQL per implementazioni blu/green con replica fisica
Le seguenti limitazioni si applicano alle implementazioni di RDS per blue/green deployments that use physical replication. For an explanation of when blue/green PostgreSQL che utilizzano la replica fisica anziché la replica logica, vedere. Metodi di SQL replica Postgree per implementazioni blu/verdi
-
Dopo aver creato l'ambiente verde, non è possibile eseguire un aggiornamento manuale della versione principale.
-
Le distribuzioni blu/green che utilizzano la replica fisica non supportano le modifiche dello schema nell'ambiente verde, in quanto è strettamente di sola lettura.
-
L'istanza DB blu non può essere una fonte logica (editore) o una replica (sottoscrittore).
Limitazioni di per implementazioni blu/green con replica logica
Le seguenti limitazioni si applicano alle implementazioni blu/verdi di che utilizzano la replica logica. Per una spiegazione di quando le implementazioni blu/verdi utilizzano la replica logica anziché la replica fisica, vedi. Metodi di SQL replica Postgree per implementazioni blu/verdi
-
Le tabelle non registrate
non vengono replicate nell'ambiente verde a su tabelle non registrate. -
Il di istanze DB blu non può essere una fonte logica (editore) o una replica (sottoscrittore).
-
Se l'istanza database blu è configurata come server esterno di un'estensione FDW (Foreign Data Wrapper), è necessario utilizzare il nome dell'endpoint dell'istanza anziché gli indirizzi IP. Ciò consente alla configurazione di rimanere funzionale dopo lo switchover.
-
In una distribuzione blu/verde, ogni database richiede uno slot di replica logico. Con l'aumentare del numero di database, il sovraccarico di risorse aumenta e può potenzialmente causare ritardi nella replica, soprattutto se l'istanza non è sufficientemente scalata. L'impatto dipende da fattori quali il carico di lavoro del database e il numero di connessioni.
-
Il processo di applicazione della replica logica nell'ambiente verde è a thread singolo.
Se l'ambiente blu genera un volume elevato di traffico di scrittura, l'ambiente verde potrebbe non essere in grado di tenere il passo. Ciò può causare ritardi o errori di replica, in particolare per i carichi di lavoro che producono un throughput di scrittura continuo elevato. Assicurati di testare a fondo i tuoi carichi di lavoro. Per gli scenari che richiedono aggiornamenti di versione importanti e la gestione di carichi di lavoro di scrittura ad alto volume, prendi in considerazione approcci alternativi come l'utilizzo di AWS Database Migration Service (AWS DMS) la replica logica autogestita. -
Alle estensioni PostgreSQL si applicano le seguenti limitazioni:
-
L'
pg_partman
estensione deve essere disabilitata nell'ambiente blu quando si crea una distribuzione blu/verde. L'estensione esegue operazioni DDL comeCREATE TABLE
che interrompono la replica logica dall'ambiente blu all'ambiente verde. -
L'estensione
pg_cron
deve rimanere disabilitata su tutti i database verdi dopo la creazione dell'implementazione blu/verde. L'estensione dispone di worker in background che vengono eseguiti come superutente e aggirano l'impostazione di sola lettura dell'ambiente verde, il che potrebbe causare conflitti di replica. -
Le estensioni
pglogical
epgactive
devono essere disabilitate nell'ambiente blu quando si crea un'implementazione blu/verde. Dopo aver convertito l'ambiente verde nel nuovo ambiente di produzione, puoi abilitare nuovamente le estensioni. Inoltre, il database blu non può essere un abbonato logico di un'istanza esterna. -
Se utilizzi l'
pgAudit
estensione, deve rimanere nelle librerie condivise (shared_preload_libraries
) nei gruppi di parametri DB personalizzati sia per le istanze DB blu che per quelle verdi. Per ulteriori informazioni, consulta Configurazione dell' pgAudit estensione.
-
Limitazioni specifiche della replica logica per le distribuzioni blu/verdi
PostgreSQL presenta alcune restrizioni relative alla replica logica, che si traducono in limitazioni durante la creazione di implementazioni blu/verdi per le istanze database RDS per PostgreSQL.
La tabella seguente descrive le limitazioni della replica logica che si applicano alle implementazioni blu/verde per RDS per PostgreSQL. Per ulteriori informazioni, consulta Restrictions
Limitazione | Spiegazione |
---|---|
Le istruzioni DDL (Data Definition Language), come CREATE TABLE e CREATE SCHEMA , non vengono replicate dall'ambiente blu nell'ambiente verde. |
Se Amazon RDS rileva una modifica DDL nell'ambiente blu, i database verdi entrano nello stato di replica degradata. È necessario eliminare l'implementazione blu/verde e tutti i database verdi, quindi ricrearla. |
Le operazioni NEXTVAL sugli oggetti della sequenza non sono sincronizzate tra l'ambiente blu e l'ambiente verde. |
Durante lo switchover, Amazon RDS incrementa i valori di sequenza nell'ambiente verde in modo che corrispondano a quelli nell'ambiente blu. Se hai migliaia di sequenze, lo switchover può subire un ritardo. |
Gli oggetti di grandi dimensioni nell'ambiente blu non vengono replicati nell'ambiente verde. Ciò include sia gli oggetti di grandi dimensioni esistenti che tutti gli oggetti di grandi dimensioni appena creati o modificati durante il processo di distribuzione blu/verde. |
Se Amazon RDS rileva la creazione o la modifica di oggetti di grandi dimensioni nell'ambiente blu archiviati nella tabella di sistema |
Le viste materializzate non vengono aggiornate automaticamente nell'ambiente verde. |
L'aggiornamento delle viste materializzate nell'ambiente blu non le aggiorna nell'ambiente verde. Dopo il passaggio, è possibile aggiornarle manualmente utilizzando il comando REFRESH MATERIALIZED VIEW o pianificare un aggiornamento |
Le operazioni UPDATE e DELETE non sono consentite nelle tabelle che non dispongono di una chiave primaria. |
Prima di creare una distribuzione blu/verde, assicurati che tutte le tabelle abbiano una chiave o un utilizzo primari. |
Considerazioni sulle implementazioni blu/verde
Amazon RDS traccia le risorse nelle implementazioni blu/verde con DbiResourceId
di ciascuna risorsa. Questo ID di risorsa è un Regione AWS identificatore univoco e immutabile della risorsa.
Ciascuno è elencato nella configurazione del database nella console RDS.
Il nome (ID istanza) di una risorsa viene modificato quando effettui lo switchover a un'implementazione blu/verde, ma ogni risorsa mantiene lo stesso ID risorsa. Ad esempio, un identificatore di istanza database potrebbe essere mydb
nell'ambiente blu. Dopo lo switchover, la stessa istanza database potrebbe essere rinominata in mydb-old1
. Tuttavia, l'ID risorsa dell'istanza database non viene modificato durante lo switchover. Pertanto, quando si sostituiscono le risorse verdi con le nuove risorse di produzione, le relative risorse IDs non corrispondono alla risorsa blu IDs che era precedentemente in produzione.
Dopo il passaggio a una distribuzione blu/verde, valuta la possibilità di aggiornare la risorsa IDs con quelle delle risorse di produzione appena trasferite per funzionalità e servizi integrati utilizzati con le risorse di produzione. In particolare, considera i seguenti aggiornamenti:
-
Se esegui il filtraggio utilizzando l'API e la risorsa RDS IDs, modifica la risorsa IDs utilizzata nel filtraggio dopo il passaggio.
-
Se utilizzate risorse CloudTrail per il controllo, impostate i consumatori della risorsa in modo che tengano traccia della nuova risorsa dopo CloudTrail il passaggio. IDs Per ulteriori informazioni, consulta Monitoraggio delle in AWS CloudTrail.
-
Se utilizzi l'API Performance Insights, modifica la risorsa IDs nelle chiamate all'API dopo lo switchover. Per ulteriori informazioni, consulta Monitoraggio del carico DB con Performance Insights su Amazon RDS.
Dopo lo switchover è possibile monitorare un database con lo stesso nome, ma non contiene i dati precedenti allo lo switchover.
-
Se utilizzi una risorsa IDs nelle policy IAM, assicurati di aggiungere la risorsa IDs delle risorse appena trasferite quando necessario. Per ulteriori informazioni, consulta Gestione delle identità e degli accessi per Amazon RDS.
-
Se hai ruoli IAM associati all'istanza DB, assicurati di riassociarli dopo il passaggio. I ruoli allegati non vengono copiati automaticamente nell'ambiente verde.
-
Se si esegue l'autenticazione nell'istanza database utilizzando l'autenticazione del database IAM, assicurarsi che la policy IAM utilizzata per l'accesso al database contenga sia i database blu che quelli verdi elencati sotto l'elemento
Resource
della policy. Ciò è necessario per connettersi al database verde dopo il passaggio. Per ulteriori informazioni, consulta Creazione e utilizzo di una policy IAM per l'accesso al database IAM. -
Se lo utilizzi AWS Backup per gestire i backup automatici delle risorse in una distribuzione blu/verde, modifica la risorsa IDs utilizzata dopo lo switchover. AWS Backup Per ulteriori informazioni, consulta Utilizzo AWS Backup per gestire i backup automatici per Amazon RDS.
-
Se desideri ripristinare uno snapshot di database manuale o automatico per un'istanza database che faceva parte di un'implementazione blu/verde, assicurati di ripristinare lo snapshot di database corretto esaminando l'ora in cui è stato creato. Per ulteriori informazioni, consulta Ripristino su un'istanza DB.
-
Se desideri descrivere un backup automatico di un'istanza database dell'ambiente blu precedente o ripristinarlo a un determinato momento, utilizza l'ID risorsa per l'operazione.
Poiché il nome dell'istanza database viene modificato durante lo switchover, non è possibile utilizzare il nome precedente per le operazioni
DescribeDBInstanceAutomatedBackups
oRestoreDBInstanceToPointInTime
.Per ulteriori informazioni, consulta Ripristino di un'istanza DB a un'ora specificata per Amazon RDS.
-
Quando si aggiunge una replica di lettura a un'istanza database nell'ambiente verde di un'implementazione blu/verde, la nuova replica di lettura non sostituisce una replica di lettura dell'ambiente blu al momento dello switchover. Tuttavia, la nuova replica di lettura viene mantenuta nel nuovo ambiente di produzione dopo lo switchover.
-
Dopo il passaggio, le attività di replica AWS Database Migration Service (AWS DMS) non possono riprendere perché il checkpoint dall'ambiente blu non è valido nell'ambiente verde. È necessario ricreare l'attività DMS con un nuovo checkpoint per continuare la replica.
-
Quando si elimina un'istanza DB nell'ambiente verde di una distribuzione. blue/green deployment, you can't create a new DB instance to replace it in the blue/green
Se crei una nuova istanza database con lo stesso nome e nome della risorsa Amazon (ARN) dell'istanza database eliminata, ha un
DbiResourceId
diverso e quindi non fa parte dell'ambiente verde.Se elimini un'istanza database nell'ambiente verde, si verifica il seguente comportamento:
-
Se l'istanza database con lo stesso nome esiste nell'ambiente blu, non verrà eseguito lo switchover all'istanza database dell'ambiente verde. Questa istanza database non verrà rinominata aggiungendo
-old
al suo nome.n
-
Qualsiasi applicazione che punti all'istanza database nell'ambiente blu continua a utilizzare la stessa istanza database dopo lo switchover.
Lo stesso comportamento si applica alle istanze database e alle repliche di lettura.
-