Testare un'istanza principale per l'alta disponibilità

AlloyDB per PostgreSQL offre tipi di istanze a livello di regione e di zona. Per garantire l'alta affidabilità (HA), ogni istanza AlloyDB principale a livello di regione ha sia un nodo attivo sia un nodo in standby, situati in due zone diverse. Se il nodo attivo non è disponibile per qualsiasi motivo, AlloyDB promuove automaticamente il nodo in standby a nuovo nodo attivo.

Puoi testare questa funzionalità di HA automatica utilizzando l'inserimento di errori per forzare improvvisamente lo stato offline del nodo attivo dell'istanza principale. AlloyDB attiva quindi la procedura di alta affidabilità di emergenza che controlla l'integrità dell'istanza principale e poi riassegna il nodo in standby al ruolo di nodo attivo.

L'inserimento di errori avvia anche un'operazione a lunga esecuzione che riporta online il nodo precedentemente attivo dopo un breve intervallo. Questo nodo diventa il nuovo nodo di standby dell'istanza principale.

Per un metodo più rapido di scambio dei ruoli attivo e in standby dei nodi dell'istanza principale, consulta Esegui il failover manuale di un'istanza principale.

Prima di iniziare

  • Il progetto Google Cloud che stai utilizzando deve essere stato abilitato per accedere ad AlloyDB.
  • Devi disporre di uno di questi ruoli IAM nel progetto Google Cloud che stai utilizzando:
    • roles/alloydb.admin (il ruolo IAM predefinito AlloyDB Admin)
    • roles/owner (il ruolo IAM di base Proprietario)
    • roles/editor (il ruolo IAM di base Editor)

    Se non disponi di nessuno di questi ruoli, contatta l'Amministratore organizzazione per richiedere l'accesso.

Simula un'interruzione del servizio con un fault injection

Per testare la resilienza ad alta affidabilità dell'istanza principale arrestando improvvisamente il suo nodo attivo, utilizza il comando gcloud alloydb instances inject-fault. Al termine di un'operazione a lunga esecuzione, AlloyDB reintegra il nodo.

gcloud alloydb instances inject-fault INSTANCE_ID \
    --fault-type=stop-vm \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID
  • INSTANCE_ID: l'ID dell'istanza.
  • REGION_ID: la regione in cui si trova l'istanza.
  • CLUSTER_ID: l'ID del cluster in cui si trova l'istanza.
  • PROJECT_ID: l'ID del progetto in cui si trova il cluster.