Les sections suivantes décrivent les étapes à suivre pour configurer votre serveur principal AlloyDB Omni pour la réplication, configurer le serveur répliqué et vérifier l'état de la réplication sur le serveur principal.
Avant de commencer
Avant de continuer, installez et configurez AlloyDB Omni à l'aide du package RPM. Pour en savoir plus, consultez Installer AlloyDB Omni pour Linux.
Configurer votre serveur principal pour la réplication
Mettez à jour les paramètres réseau ou de pare-feu de l'hôte de votre serveur principal afin qu'il autorise le trafic entrant depuis l'hôte du serveur répliqué via le port Postgres du serveur principal.
Créez un utilisateur de réplication :
psql -h localhost -U postgres -c "create user REPLICA_USER with replication password 'PASSWORD'; grant pg_read_all_settings to REPLICA_USER;"Ajoutez les lignes suivantes dans le fichier
/DATA_DIR/pg_hba.confdu serveur principal avanthost all all all scram-sha-256qui existe dans le fichier :host alloydbmetadata alloydbmetadata IP_RANGE trust host replication REPLICA_USER IP_RANGE scram-sha-256Remplacez les éléments suivants :
IP_RANGE: plage d'adresses IP, au format CIDR, du sous-réseau dans lequel se trouve votre machine répliquée. Exemple :203.0.113.0/24.DATA_DIR: chemin d'accès au répertoire de données du serveur principal.
Redémarrez votre serveur principal :
sudo systemctl restart alloydbomniPG_VERSION
Créer et configurer le serveur répliqué
Pour créer et configurer un serveur réplica AlloyDB Omni, procédez comme suit :
Assurez-vous que l'instance répliquée dispose d'une connectivité réseau au serveur principal :
ping SOURCE_IPRemplacez
SOURCE_IPpar l'adresse IP de l'instance AlloyDB Omni principale à partir de laquelle effectuer la réplication.Assurez-vous que l'instance répliquée peut se connecter au serveur principal :
psql "host=SOURCE_IP user=REPLICA_USER replication=1" -c "IDENTIFY_SYSTEM;"Le résultat doit ressembler à ce qui suit :
systemid | timeline | xlogpos | dbname ---------------------+----------+-----------+-------- 7376500460465963036 | 1 | 0/454B670 | (1 row)La réplique doit disposer d'un emplacement de stockage persistant sur le disque :
pg_basebackup \ --pgdata=DATA_DIR \ --checkpoint=fast \ --host="SOURCE_IP" \ --port="SOURCE_PORT" \ --username=REPLICA_USER \ --create-slot \ --write-recovery-conf \ --slot="SLOT_NAME"Remplacez les éléments suivants :
SOURCE_PORT: port TCP de l'instance AlloyDB Omni principale à partir de laquelle effectuer la réplication. Si vous ne fournissez pas cette valeur, AlloyDB Omni applique la valeur par défaut5432.SLOT_NAME: libellé du nom de l'emplacement de réplication.DATA_DIR: chemin d'accès au répertoire de données du serveur de réplique.
Démarrez votre instance répliquée :
sudo systemctl start alloydbomniPG_VERSION
Vérifier l'état de la réplication sur le serveur principal
Pour vérifier que la réplication est correctement configurée, exécutez la commande suivante sur l'hôte du serveur principal :
psql -h localhost -U postgres -c "select * from pg_stat_replication"La table de sortie contient une ligne pour chaque réplica connecté à votre serveur de base de données principal.
Une fois la réplication configurée, toutes les insertions, mises à jour et suppressions de lignes sur votre serveur de base de données principal deviennent lisibles sur votre instance répliquée en quelques secondes.