Nota:
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriversi a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Impostare i database primari e due in standby PostgreSQL utilizzando la console OCI e convalidare la replica dei dati
Introduzione
PostgreSQL è un sistema di gestione del database relazionale a oggetti open source. È altamente estensibile, altamente scalabile e ha molte caratteristiche. PostgreSQL supporta la replica dei dati in più data center.
I server che possono modificare i dati sono denominati server principali o principali. I server che tengono traccia delle modifiche nel database primario sono denominati server in standby. Un server in standby a cui non è possibile connettersi finché non viene promosso a un server primario viene chiamato server in standby caldo e uno che può accettare connessioni e gestire query di sola lettura viene chiamato server in standby a caldo.
Resource Manager è un servizio Oracle Cloud Infrastructure (OCI) che consente di automatizzare il processo di provisioning delle risorse OCI. Con Terraform, Resource Manager ti consente di installare, configurare e gestire le risorse attraverso il modello "Infrastructure-as-a-code".
Oracle Cloud Infrastructure è progettato per carichi di lavoro che richiedono prestazioni elevate coerenti, tra cui connessioni con stato ai database, elaborazione raw tramite CPU o GPU, milioni di IOPS di storage e GB/s di throughput. Inizia con un'architettura zero-trust. Nella progettazione di Oracle Cloud, volevamo un cloud che fosse eseguito meglio per ogni applicazione, ma che avesse anche un miglior rapporto prezzo/prestazioni.
Obiettivo
Configura 1 server primario e 2 server in standby a caldo utilizzando Terraform Code in Resource Manager OCI. Verrà distribuita su 3 istanze di computazione in 3 domini di disponibilità differenti.
Dopo la distribuzione, verificheremo la replica delle tabelle dal server primario al server in standby e ci connettermo ai database in standby a caldo per eseguire una query sui dati.
-
Utilizzando lo stack terraform, distribuiamo la rete, PostgreSQL server primari e 2 server in standby.
-
Verrà creata la tabella di esempio in Principale e inserito alcuni record nella tabella.
-
Verrà quindi verificato se la tabella e le righe di esempio sono state replicate in entrambi i server in standby.
Task 1: Creare lo stack
-
Aprire il collegamento seguente in un browser: Distribuisci in Oracle Cloud.
-
Se non si è già collegati, immettere le credenziali della tenancy e dell'utente.
-
Selezionare l'area in cui distribuire lo stack.
-
Nella pagina delle informazioni sullo stack selezionare la casella di controllo Ho preso visione e accetto le condizioni d'uso di Oracle. Nella sezione Informazioni stack vengono visualizzati i dettagli.
-
Fare clic su Next.
-
Nella pagina Configura variabili configurare le impostazioni riportate di seguito.
Nota: in questa esercitazione, la distribuzione di PostgreSQL versione 12 in una subnet pubblica viene eseguita.
-
Scegliere il dominio di disponibilità e la versione PostgreSQL richieste.
-
Deselezionare la casella di controllo Crea in subnet privata.
-
Selezionare la casella di controllo Mostra opzioni avanzate e specificare i dettagli relativi a rete, computazione, storage, standby e altre impostazioni.
-
Specificare il sistema operativo, il criterio di backup e altri dettagli richiesti.
-
Specificare i valori richiesti per OCPU e memoria.
-
Scegliere la forma del nodo primario e l'utente replicat.
-
Fornire i dettagli per Hotstandby1 (scelta AD-2).
-
Fornire i dettagli per Hotstandby2 (scelta di AD-3).
-
-
Fare clic su Next.
-
-
Verificare i dettagli nella pagina Revisione e assicurarsi che la casella di controllo Esegui applicazione sia selezionata per eseguire immediatamente il provisioning delle risorse.
-
Fare clic su Crea.
-
Monitorare il log del job dello stack (Vai a Developer Services, Resource Manager, Stacks) come mostrato negli screenshot riportati di seguito.
Nota: per l'impostazione del test utilizzata in questa esercitazione, lo stack è stato applicato e configurato correttamente le risorse in 11 minuti per le forme selezionate. Ciò può variare in base alle impostazioni di configurazione scelte.
Lo screenshot seguente mostra la configurazione completata del server primario e in standby.
Task 2: verificare la connettività e la replica
-
ssh al nodo primario come utente opc ed eseguire il comando seguente:
sudo su - postgres
-
Creare la tabella
order_details
nel nodo primario .CREATE TABLE order_details (order_detail_id integer CONSTRAINT order_details_pk PRIMARY KEY, order_id integer NOT NULL, order_date date, qty integer, ACCEPTED_QUANTITY integer);
-
Descrivere la tabella creata.
\dt order_details
-
Eseguire una query sui dati e restituire 0 righe:
select * from order_details;
-
Eseguire il login al server standby1 e verificare che la tabella
order_details
sia stata replicata. -
Eseguire il login al server standby2 e verificare che la tabella
order_details
sia stata replicata. -
Inserire 2 righe nella tabella del database primario
order_details
.BEGIN; INSERT INTO order_details (order_detail_id,order_id,order_date,qty,ACCEPTED_QUANTITY) values (101,1,'2022-07-14',10,5); INSERT INTO order_details (order_detail_id,order_id,order_date,qty,ACCEPTED_QUANTITY) values (102,2,'2022-07-14',100,100); COMMIT;
-
Verificare che le righe nel server standby1 siano state replicate.
-
Verificare che le righe nel server standby2 siano state replicate anche qui.
Collegamenti correlati
- Panoramica di Resource Manager
- Distribuire un database PostgreSQL
- Sito Web PostgreSQL
- Scarica il codice da GitHub
Approvazioni
- Autore - Bhushan Arora (Principal Cloud Architect)
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Explorer di Oracle Learning.
Per la documentazione sul prodotto, visitare il sito Oracle Help Center.
Set up PostgreSQL primary and two standby databases using OCI Console and validate data replication
F76214-01
January 2023
Copyright © 2023, Oracle and/or its affiliates.