Creazione di una replica AWS RDS per MySql


Su questa pagina

  1. Di cosa parleremo?
  2. Note chiave relative alla replica di lettura
  3. Creazione di repliche di lettura dalla Console di gestione AWS
  4. Conclusioni

Amazon RDS è un servizio di database gestito da AWS facile da configurare. Amazon RDS supporta due tipi di funzionalità di replica: 1) Distribuzioni Multi-AZ 2) Repliche di lettura.

Nella distribuzione Multi-AZ, RDS archivia una replica del database in standby in un'altra zona di disponibilità. Qui gli aggiornamenti del database vengono applicati simultaneamente al nodo principale e al nodo di replica. Se si verifica un failover, RDS sposterà automaticamente le operazioni sul nodo di replica in standby senza ereditare alcuna interruzione nelle operazioni del database.

Nel caso di una replica di lettura, esiste anche una replica di standby, ma non è possibile accedere direttamente a questa replica prima di qualsiasi failover. Questo comportamento può essere utilizzato per il ridimensionamento elastico di un'istanza database. Per carichi di lavoro di database ad alta intensità di lettura, è possibile creare diverse repliche di un'istanza di database di origine all'interno della stessa regione AWS o in una regione AWS diversa.

A partire dall'11 gennaio 2018, le repliche di lettura di Amazon RDS per MySQL e i suoi database fork MariaDB sono ora disponibili con una funzione di distribuzione in zone a disponibilità multipla.

Gli aggiornamenti del database primario o master vengono trasferiti in modo asincrono alle repliche di lettura. Oltre a fornire scalabilità, le repliche di lettura possono essere utilizzate anche per il ripristino di emergenza. Per es. se l'istanza database primaria si guasta, la replica può essere richiesta come istanza autonoma e lavorare per conto del database primario.

Cosa copriremo?

In questa guida vedremo come creare una replica di lettura di un'istanza di database MySql RDS.

Note chiave sulla replica di lettura

Prima di procedere oltre, considera alcune delle note chiave relative alle repliche di lettura:

  1. È consigliabile configurare una replica di lettura nello stesso modo in cui è configurata un'istanza database master.
  2. Gli unici motori di database supportati per le repliche di lettura includono: MariaDB, Microsoft SQL Server, MySQL, Oracle e PostgreSQL.
  3. Il tipo di archiviazione predefinito di una replica di lettura è lo stesso dell'istanza database di origine. Il tipo di archiviazione può essere modificato anche durante la creazione della replica di lettura.
  4. Tieni presente che durante la modifica della dimensione di archiviazione assegnata a una replica di lettura, non puoi aumentarla di un valore inferiore al 10%.
  5. La replica circolare non è supportata da Amazon RDS.
  6. Le repliche di diversi motori di database presentano diverse differenze.
  7. Si verifica una breve sospensione di I/O durante la creazione di una replica di lettura.
  8. Per creare una replica di lettura, i backup automatici devono essere impostati su abilitati nell'istanza database di origine. Questo può essere fatto impostando il valore del periodo di conservazione del backup maggiore di '0'.

Creazione di repliche di lettura dalla Console di gestione AWS

Prima di procedere con la replica di lettura, avvia e avvia la tua istanza database. Ora vai alla console di gestione RDS, qui possiamo vedere la nostra istanza database database-1 basata su MySQL DB è in esecuzione:

Nota: per creare una replica di lettura possiamo utilizzare la console AWS, l'AWS CLI e l'API RDS.

La nostra configurazione del database primario è la seguente:

DB instance identifier: ‘database-1’
Database engine: MySql
Database version: 8.0.28
Master username: ‘Your-username’
Master password: ‘Your-password’
DB instance class: db.t2.micro (Free-tier)
Storage size: 20 GiB 
Public Access: ‘No’
Automated backups: ‘Enabled’


Con la precedente configurazione del DB ora continueremo con la replica di lettura:

Passaggio 1. Dalla console di gestione RDS, seleziona l'istanza database di destinazione. Ora fai clic sul menu a discesa Azione situato sopra e scegli l'opzione Crea replica di lettura:

Passaggio 2. Nella pagina successiva, alcune impostazioni sono già preselezionate in base all'approccio delle migliori pratiche. Qui ci atteniamo alle best practice, ma siamo liberi di cambiarle.

Passaggio 3. In Origine della replica, scegli l'istanza database di origine per la replica di lettura. Inserisci un nome per l'istanza database della replica di lettura (DBreplica nel nostro caso). Scegli anche una regione per l'avvio della replica di lettura. Abbiamo selezionato la stessa regione per la replica di lettura dell'istanza database.

Ci atteniamo alle impostazioni preselezionate per la classe di istanza database e i dettagli di archiviazione.

L'opzione di ridimensionamento automatico dell'archiviazione è già abilitata nella sezione Archiviazione.

Passaggio 4. Nella distribuzione Multi-AZ è possibile creare supporto di fallback o standby per la replica selezionando sì. Per ora stiamo saltando questa opzione:

Passaggio 5. La nostra replica di lettura non è accessibile pubblicamente poiché abbiamo scelto l'opzione Non accessibile pubblicamente. Anche l'autenticazione del database si basa sull'autenticazione tramite password.

Passaggio 6. Poiché non abbiamo abilitato l'opzione di crittografia per l'istanza database di origine, l'abbiamo saltata anche qui. Allo stesso modo il monitoraggio, l'opzione di registrazione e la protezione dall'eliminazione rimangono invariati.

Passaggio 7. All'interno dell'opzione di configurazione aggiuntiva del database, il valore della porta può essere modificato in un valore diverso da quello predefinito. Per copiare i tag negli snapshot, seleziona la casella di controllo Copia tag negli snapshot. L'autenticazione del database IAM può essere abilitata per la gestione del database tramite un utente IAM. Un'altra cosa facoltativa che puoi fare è abilitare gli aggiornamenti minori del database.

Passaggio 8. Ora fai clic sul pulsante Crea replica di lettura per avviare il processo di creazione della replica.

$ aws rds create-db-instance-read-replica --db-instance-identifier DBreplica --source-db-instance-identifier database-1 --max-allocated-storage 1000

Avvolgendo

In questa guida abbiamo visto come creare una replica di lettura per un database MySql. Le repliche di lettura forniscono una versione di sola lettura copiata in modo asincrono del database primario, fornendo così scalabilità e un database di ripristino in standby.