Configurazione di un cluster attivo-attivo con nuove istanze DB - Amazon Relational Database Service

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à.

Configurazione di un cluster attivo-attivo con nuove istanze DB

Completa i seguenti passaggi per configurare un cluster attivo-attivo utilizzando nuove istanze Amazon RDS for My SQL DB.

Se stai configurando un cluster attivo-attivo con istanze DB in più di unoVPC, assicurati di completare i prerequisiti in. Preparazione per un cluster VPC cross-active-active

Passaggio 1: imposta i parametri del cluster attivo-attivo in uno o più gruppi di parametri personalizzati

Le istanze RDS for My SQL DB in un cluster attivo-attivo devono essere associate a un gruppo di parametri personalizzato con l'impostazione corretta per i parametri richiesti. Per informazioni sui parametri e sull'impostazione richiesta per ciascuno di essi, vedere. Impostazioni dei parametri obbligatorie per i cluster attivi-attivi

È possibile impostare questi parametri in nuovi gruppi di parametri o in gruppi di parametri esistenti. Tuttavia, per evitare di influire accidentalmente sulle istanze DB che non fanno parte del cluster active-active, ti consigliamo vivamente di creare un nuovo gruppo di parametri personalizzato. Le istanze DB in un cluster attivo-attivo possono essere associate allo stesso gruppo di parametri DB o a gruppi di parametri DB diversi.

È possibile utilizzare AWS Management Console o the AWS CLI per creare un nuovo gruppo di parametri personalizzato. Per ulteriori informazioni, consulta Creazione di un gruppo di parametri DB in Amazon RDS. L'esempio seguente esegue il create-db-parameter-group AWS CLI comando per creare un gruppo di parametri DB personalizzato denominato myactivepg My SQL 8.0: RDS

In Linux, macOS, oppure Unix:

aws rds create-db-parameter-group \ --db-parameter-group-name myactivepg \ --db-parameter-group-family mysql8.0 \ --description "Parameter group for active-active clusters"

In Windows:

aws rds create-db-parameter-group ^ --db-parameter-group-name myactivepg ^ --db-parameter-group-family mysql8.0 ^ --description "Parameter group for active-active clusters"

È inoltre possibile utilizzare il AWS Management Console o AWS CLI per impostare i parametri nel gruppo di parametri personalizzato. Per ulteriori informazioni, consulta .

L'esempio seguente esegue il modify-db-parameter-group AWS CLI comando per impostare i parametri RDS per My SQL 8.0. Per utilizzare questo esempio con RDS for My SQL 8.4, passare slave_preserve_commit_order a. replica_preserve_commit_order

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myactivepg \ --parameters "ParameterName='rds.group_replication_enabled',ParameterValue='1',ApplyMethod=pending-reboot" \ "ParameterName='rds.custom_dns_resolution',ParameterValue='1',ApplyMethod=pending-reboot" \ "ParameterName='enforce_gtid_consistency',ParameterValue='ON',ApplyMethod=pending-reboot" \ "ParameterName='gtid-mode',ParameterValue='ON',ApplyMethod=pending-reboot" \ "ParameterName='binlog_format',ParameterValue='ROW',ApplyMethod=immediate" \ "ParameterName='slave_preserve_commit_order',ParameterValue='ON',ApplyMethod=immediate" \ "ParameterName='group_replication_group_name',ParameterValue='11111111-2222-3333-4444-555555555555',ApplyMethod=pending-reboot"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myactivepg ^ --parameters "ParameterName='rds.group_replication_enabled',ParameterValue='1',ApplyMethod=pending-reboot" ^ "ParameterName='rds.custom_dns_resolution',ParameterValue='1',ApplyMethod=pending-reboot" ^ "ParameterName='enforce_gtid_consistency',ParameterValue='ON',ApplyMethod=pending-reboot" ^ "ParameterName='gtid-mode',ParameterValue='ON',ApplyMethod=pending-reboot" ^ "ParameterName='binlog_format',ParameterValue='ROW',ApplyMethod=immediate" ^ "ParameterName='slave_preserve_commit_order',ParameterValue='ON',ApplyMethod=immediate" ^ "ParameterName='group_replication_group_name',ParameterValue='11111111-2222-3333-4444-555555555555',ApplyMethod=pending-reboot"

Fase 2: Creare nuove RDS istanze di My SQL DB per il cluster active-active

I cluster attivi-active sono supportati per le seguenti versioni di For My DB istanze: RDS SQL

  • Tutte le versioni di My version 8.4 SQL

  • La mia SQL versione 8.0.35 e versioni secondarie successive

È possibile creare fino a nove nuove istanze DB per il cluster.

È possibile utilizzare AWS Management Console o the AWS CLI per creare nuove istanze DB. Per ulteriori informazioni sulla creazione di un'istanza database, consulta Creazione di un'istanza database Amazon RDS. Quando create l'istanza DB, associatela a un gruppo di parametri DB creato o modificato nel passaggio precedente.

Fase 3: Specificare le istanze DB nel cluster attivo-attivo

Nel gruppo di parametri DB associato a ciascuna istanza DB, imposta il group_replication_group_seeds parametro sugli endpoint delle istanze DB che desideri includere nel cluster.

È possibile utilizzare AWS Management Console o the AWS CLI per impostare il parametro. Non è necessario riavviare l'istanza DB dopo aver impostato questo parametro. Per informazioni sull'estensione dei parametri consulta .

L'esempio seguente esegue il modify-db-parameter-group AWS CLI comando per impostare i parametri:

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myactivepg \ --parameters "ParameterName='group_replication_group_seeds',ParameterValue='myactivedb1.123456789012.us-east-1.rds.amazonaws.com:3306,myactivedb2.123456789012.us-east-1.rds.amazonaws.com:3306,myactivedb3.123456789012.us-east-1.rds.amazonaws.com:3306',ApplyMethod=immediate"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myactivepg ^ --parameters "ParameterName='group_replication_group_seeds',ParameterValue='myactivedb1.123456789012.us-east-1.rds.amazonaws.com:3306,myactivedb2.123456789012.us-east-1.rds.amazonaws.com:3306,myactivedb3.123456789012.us-east-1.rds.amazonaws.com:3306',ApplyMethod=immediate"
Suggerimento

Assicurati di impostare il group_replication_group_seeds parametro in ogni gruppo di parametri DB associato a un'istanza DB nel cluster active-active.

Passaggio 4: inizializza il gruppo su un'istanza DB e avvia la replica

È possibile scegliere qualsiasi nuovo DB per inizializzare il gruppo e avviare la replica. Per fare ciò, completa la seguente procedura:

  1. Scegli un'istanza DB nel cluster active-active e connettiti a quell'istanza DB in un client. SQL Per ulteriori informazioni sulla connessione a un'istanza RDS for My SQL DB, consulta. Connessione alla tua istanza DB MySQL

  2. Nel SQL client, esegui le seguenti stored procedure e group_replication_user_password sostituiscile con la password dell'rdsgrprepladminutente. L'rdsgrprepladminutente è riservato alle connessioni di replica di gruppo in un cluster attivo-attivo. La password per questo utente deve essere la stessa su tutte le istanze DB di un cluster active-active.

    call mysql.rds_set_configuration('binlog retention hours', 168); -- 7 days binlog call mysql.rds_group_replication_create_user('group_replication_user_password'); call mysql.rds_group_replication_set_recovery_channel('group_replication_user_password'); call mysql.rds_group_replication_start(1);

    Questo esempio imposta il binlog retention hours valore su168, il che significa che i file di log binari vengono conservati per sette giorni sull'istanza DB. È possibile modificare questo valore in base alle proprie esigenze.

    Questo esempio specifica 1 nella mysql.rds_group_replication_start stored procedure l'inizializzazione di un nuovo gruppo con l'istanza DB corrente.

    Per ulteriori informazioni sulle stored procedure richiamate nell'esempio, vedere. Gestione di cluster attivi-attivi

Fase 5: Avviare la replica sulle altre istanze DB nel cluster active-active

Per ciascuna istanza DB del cluster active-active, utilizza un SQL client per connetterti all'istanza ed esegui le seguenti stored procedure. Sostituisci group_replication_user_password con la password per l'utente. rdsgrprepladmin

call mysql.rds_set_configuration('binlog retention hours', 168); -- 7 days binlog call mysql.rds_group_replication_create_user('group_replication_user_password'); call mysql.rds_group_replication_set_recovery_channel('group_replication_user_password'); call mysql.rds_group_replication_start(0);

Questo esempio imposta il binlog retention hours valore su168, il che significa che i file di log binari vengono conservati per sette giorni su ogni istanza DB. È possibile modificare questo valore in base alle proprie esigenze.

Questo esempio specifica 0 nella mysql.rds_group_replication_start stored procedure di aggiungere l'istanza DB corrente a un gruppo esistente.

Suggerimento

Assicurati di eseguire queste stored procedure su tutte le altre istanze DB del cluster active-active.

Passaggio 6: (consigliato) Verifica dello stato del cluster attivo-attivo

Per assicurarti che ogni membro del cluster sia configurato correttamente, controlla lo stato del cluster connettendoti a un'istanza DB nel cluster active-active ed eseguendo il seguente comando: SQL

SELECT * FROM performance_schema.replication_group_members;

L'output dovrebbe essere visualizzato ONLINE per ogni istanza DB, come nell'output di esempio seguente: MEMBER_STATE

+---------------------------+--------------------------------------+----------------+-------------+--------------+-------------+----------------+----------------------------+ | CHANNEL_NAME | MEMBER_ID | MEMBER_HOST | MEMBER_PORT | MEMBER_STATE | MEMBER_ROLE | MEMBER_VERSION | MEMBER_COMMUNICATION_STACK | +---------------------------+--------------------------------------+----------------+-------------+--------------+-------------+----------------+----------------------------+ | group_replication_applier | 9854d4a2-5d7f-11ee-b8ec-0ec88c43c251 | ip-10-15-3-137 | 3306 | ONLINE | PRIMARY | 8.0.35 | MySQL | | group_replication_applier | 9e2e9c28-5d7f-11ee-8039-0e5d58f05fef | ip-10-15-3-225 | 3306 | ONLINE | PRIMARY | 8.0.35 | MySQL | | group_replication_applier | a6ba332d-5d7f-11ee-a025-0a5c6971197d | ip-10-15-1-83 | 3306 | ONLINE | PRIMARY | 8.0.35 | MySQL | +---------------------------+--------------------------------------+----------------+-------------+--------------+-------------+----------------+----------------------------+ 3 rows in set (0.00 sec)

Per informazioni sui MEMBER_STATE valori possibili, consulta Group Replication Server States nella SQL documentazione personale.

Passaggio 7: (Facoltativo) Importazione dei dati in un'istanza DB nel cluster active-active

È possibile importare dati da un SQL database My in un'istanza DB nel cluster active-active. Dopo l'importazione dei dati, Group Replication li replica nelle altre istanze DB del cluster.

Per informazioni sull'importazione dei dati, vedere. Importazione di dati in un database Amazon RDS for MySQL con tempi di inattività ridotti