SlideShare une entreprise Scribd logo
1  sur  94
Télécharger pour lire hors ligne
PostgreSQL, Haute Disponibilité 
Présentation de la 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
formation 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Plan 
• Présentation du formateur 
• Mes formations sur alphorm 
• Le plan de formation 
• Publics concernés 
• Connaissances requises 
• Liens utiles 
PostgreSQL, La haute disponibilité alphorm.com™©
Le formateur 
 Noureddine DRISSI 
 Expertise dans le domaine des bases de données 
 15 années d’expérience sur tous les SGBDR du marché (Langage SQL, Mysql, Oracle, 
SQL Server, Postgresql,DB2, MongoDB) 
 Issue de l’environnement bancaire 
• contact@valneo-xi.fr 
• Mon profil sur alphorm.com : http://www.alphorm.com/auteur/noureddine-drissi 
PostgreSQL, La haute disponibilité alphorm.com™©
Mes formations sur alphorm.com 
MySQL, Administration 
(1Z0-883) 
Oracle Database 11g DBA 1 
(1Z0-052) 
Le langage SQL 
MongoDB, 
administration 
Formation Administration 
Administration SQL Server PostgreSQL 
2012 (70-462) 
PostgreSQL, La haute disponibilité alphorm.com™©
Connaissances préalables 
 Connaissances en administration de PostgreSQL 
 Avoir suivi le cours PostgreSQL, administration 
Formation Administration 
PostgreSQL 
PostgreSQL, La haute disponibilité alphorm.com™©
A propos de ce cours 
 Objectifs : 
• Comprendre les mécanismes de haute disponibilité; 
• Mettre en oeuvre une solution opérationnelle de haute disponibilité; 
• Choisir la solution de haute disponibilité la plus adaptée; 
• Comprendre et maîtriser les différents modes de réplication. 
PostgreSQL, La haute disponibilité alphorm.com™©
Plan du cours 
Présentation de la formation 
Présentation des solutions de haute disponibilité 
Le Warm Standby ou Log Shipping 
Le Hot Standby 
Streaming Réplication 
pgPool-II 
La réplication avec Slony 
Conclusion 
PostgreSQL, La haute disponibilité alphorm.com™©
GO 
PostgreSQL, La haute disponibilité alphorm.com™©
PostgreSQL, Haute Disponibilité 
L’environnement 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Environnement 
 Architecture 
Internet 
IP: 192.168.1.171 
IP: 192.168.1.170 
Hostname: srvpgsql01 
OS: Linux Centos 6.3 
SGBDR: Postgresql 9.3 
Hostname: srvpgsql02 
OS: Linux Centos 6.3 
SGBDR: Postgresql 9.3 
IP: 192.168.1.172 
Hostname: srvpgsql03 
OS: Linux Centos 6.3 
PostgreSQL, La haute disponibilité alphorm.com™©
Présentation des solutions de haute 
disponibilité 
PostgreSQL, La haute disponibilité alphorm.com™©
Présentation des solutions de 
haute disponibilité 
Les solutions de haute 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
disponibilité 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Présenter les solutions de haute disponibilité sous PostgreSQL 
 Comprendre les principales caractéristiques de chaque solution 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Warm Standby ou Log Shipping 
 Utilisation des fichiers journaux 
 Nécessité d’être en mode ARCHIVELOG 
 Nécessite un réseau fiable 
 Le FAIL OVER doit être géré manuellement ou par script 
 Le serveur secondaire est en mode RESTORE 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Architecture Warm Standby ou Log Shipping 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Hot Standby 
 Utilisation des fichiers journaux 
 Nécessité d’être en mode ARCHIVELOG 
 Nécessite un réseau fiable 
 Le FAIL OVER doit être géré manuellement ou par script 
 Le serveur secondaire est ouvert en mode lecture seule 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Architecture Host Standby 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Streaming Replication 
 Consiste à rejouer les transactions par paquet du maître vers 
l’esclave 
 Transmission des transactions en groupe 
 Nécessite un réseau fiable 
 Le FAIL OVER doit être géré manuellement ou par script 
 Le serveur secondaire est ouvert en mode lecture seule 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Architecture Streaming Replication 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Slony 
 Système de réplication asynchrone pour un maître/plusieurs 
esclaves 
 Permet de répliquer des données entre plusieurs serveurs 
PostgreSQL 
 La réplication s’effectue au niveau table 
 Utilise le mécanisme de trigger 
 Possibilité de mettre les serveurs Esclave en cascade 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Architecture Slony 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 PgPool-II 
 Gestionnaire de connexion externe à PostgreSQL 
 Permet de s’insérer entre les logiciels clients et les serveurs 
PostgreSQL 
 Permet d’optimiser le nombre de connexions ouvertes sur un 
serveur PostgreSQL 
 Permet de faire de la réplication et de la répartition de charge 
PostgreSQL, La haute disponibilité alphorm.com™©
Les solutions de haute disponibilité 
 Architecture: PgPool-II 
PostgreSQL, La haute disponibilité alphorm.com™©
Le Warm Standby 
PostgreSQL, La haute disponibilité alphorm.com™©
Le Warm Standby ou Log 
Shipping 
Préparation de 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
l’environnement 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Préparer l’environnement pour la mise en place du Warm Standby 
 Installer PostgreSQL 9.3 
 Initialiser les instances PostgreSQL 
 Automatiser les échanges entre les deux serveurs avec ssh 
PostgreSQL, La haute disponibilité alphorm.com™©
Installation de PostgreSQL 9.3 
 Installation du dépôt PGDG 
 yum localinstall http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-centos93- 
9.3-1.noarch.rpm 
 Installation de PostgreSQL 
 yum install postgresql93-server 
PostgreSQL, La haute disponibilité alphorm.com™©
Initialisation des instances PostgreSQL 
 Utilisation du programme initdb 
 su - postgres 
• echo $PGDATA 
• initdb -D $PGDATA 
• pg_ctl -D $PGDATA start 
PostgreSQL, La haute disponibilité alphorm.com™©
Automatisation des échanges ssh 
 Génération du couple clés publique/privée 
 ssh-keygen -t rsa 
 Transfert d’une copie de la clé publique sur le serveur distant 
PostgreSQL, La haute disponibilité alphorm.com™©
Mise en oeuvre du mode 
ARCHIVELOG 
PostgreSQL, La haute disponibilité alphorm.com™©
Le Warm Standby ou Log 
Shipping 
Mise en oeuvre du mode 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
ARCHIVELOG 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectif 
 Configurer le mode ARCHIVELOG pour le Warm Standby 
PostgreSQL, La haute disponibilité alphorm.com™©
Les paramètres de configuration 
 Dans le fichier postgresql.conf du serveur primaire 
 archive_mode = on 
 wal_level = archive 
 archive_command = ‘scp %p 192.168.1.171:/u101/pgsql/wal_primaire/%f’ 
 archive_timeout = 60 
PostgreSQL, La haute disponibilité alphorm.com™©
Mise en oeuvre du mode de 
réplication Warm Standby 
PostgreSQL, La haute disponibilité alphorm.com™©
Le Warm Standby ou Log 
Shipping 
Mise en oeuvre de la 
réplication Warm Standby 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Connaître les caractéristiques d’une solution de réplication Warm 
Standby 
 Mettre en oeuvre une solution de réplication Warm Standby 
PostgreSQL, La haute disponibilité alphorm.com™©
Caractéristiques 
 Réplication d’un cluster PostgreSQL sur un serveur secondaire 
 Le serveur secondaire est identique au serveur primaire à un WAL près 
 Réplication au niveau du cluster (instance) et non au niveau bases 
 Intégré à PostgreSQL 
 Simple et robuste 
 Utilise l’outil pg_standby 
 Le serveur secondaire est en mode RESTORE 
PostgreSQL, La haute disponibilité alphorm.com™©
Fonctionnement 
 Un ou plusieurs serveurs de secours 
 Serveur principal : opère en mode d'archivage continu 
 Serveur de secours : opère en mode de récupération continue 
restore_command 
 Transfert de fichiers appelé transfert de journaux 
 Envoi des journaux asynchrone 
 Taille de la fenêtre des données perdues peut-être réduite avec 
archive_timeout 
 Serveur de secours non disponible car en mode récupération 
PostgreSQL, La haute disponibilité alphorm.com™©
Les étapes de mise en oeuvre 
1. Installer pg_standby sur les deux serveurs (postgresql93-contrib) 
2. Préparer la configuration du serveur primaire et secours (identique) 
3. Configurer l'archivage continu sur le serveur primaire 
4. Réaliser une sauvegarde de la racine de l’instance du serveur primaire 
5. Restaurer la sauvegarde sur le serveur de secours 
6. Commencer la récupération sur le serveur de secours à partir de 
l'archive WAL (recovery.conf) 
PostgreSQL, La haute disponibilité alphorm.com™©
FAILOVER 
 L'ancien serveur de secours devient serveur primaire 
 L'ancien serveur primaire est arrêté et peut le rester 
 Pour revenir au fonctionnement normal : il faut récréer intégralement 
un serveur de secours 
 Rédiger une procédure pour le mécanisme de FAILOVER 
PostgreSQL, La haute disponibilité alphorm.com™©
Le Hot Standby 
PostgreSQL, La haute disponibilité alphorm.com™©
Le Hot Standby 
Mise en oeuvre de la 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
réplication Hot Standby 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Connaître les caractéristiques d’une solution de réplication Hot Standby 
 Mettre en oeuvre une solution de réplication Hot Standby 
PostgreSQL, La haute disponibilité alphorm.com™©
Caractéristiques 
 Réplication d’un cluster PostgreSQL sur un serveur secondaire 
 Le serveur secondaire est identique au serveur primaire à un WAL près 
 Réplication au niveau du cluster (instance) et non au niveau bases 
 Intégré à PostgreSQL 
 Simple et robuste 
 Utilise l’outil pg_standby 
 Le serveur secondaire est en mode LECTURE SEULE 
PostgreSQL, La haute disponibilité alphorm.com™©
Fonctionnement 
 Un ou plusieurs serveurs de secours 
 Serveur principal : opère en mode d'archivage continu 
 Serveur de secours : opère en mode de récupération continue 
restore_command 
 Transfert de fichiers appelé transfert de journaux 
 Envoi des journaux asynchrone 
 Taille de la fenêtre des données perdues peut-être réduite avec 
archive_timeout 
 Serveur de secours disponible en LECTURE seule 
PostgreSQL, La haute disponibilité alphorm.com™©
Les étapes de mise en oeuvre 
1. Installer pg_standby sur les deux serveurs (postgresql93-contrib) 
2. Préparer la configuration du serveur primaire et secours (identique) 
3. Configurer l'archivage continu sur le serveur primaire (wal_level = 
hot_standby) 
4. Réaliser une sauvegarde de la racine de l’instance du serveur primaire 
5. Restaurer la sauvegarde sur le serveur de secours 
6. Instance secondaire en mode hot standby (hot_standby = on) 
7. Commencer la récupération sur le serveur de secours à partir de 
l'archive WAL (recovery.conf) 
PostgreSQL, La haute disponibilité alphorm.com™©
Fonctions utiles 
 pg_is_in_recovery() = savoir si le serveur est maitre ou standby 
 pg_last_xlog_receive_location() = indique l'emplacement du dernier 
enregistrement de transaction reçu 
 pg_last_xlog_replay_location() = précise l'emplacement du dernier 
enregistrement rejoué 
PostgreSQL, La haute disponibilité alphorm.com™©
FAILOVER 
 L'ancien serveur de secours devient serveur primaire 
 L'ancien serveur primaire est arrêté et peut le rester 
 Pour revenir au fonctionnement normal : il faut récréer intégralement 
un serveur de secours 
 Rédiger une procédure pour le mécanisme de FAILOVER 
PostgreSQL, La haute disponibilité alphorm.com™©
Streaming Replication 
PostgreSQL, La haute disponibilité alphorm.com™©
Streaming Replication 
Mise en oeuvre du 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
Streaming Replication 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Connaître les caractéristiques d’une solution de Streaming Replication 
 Mettre en oeuvre une solution de Streaming Replication 
PostgreSQL, La haute disponibilité alphorm.com™©
Caractéristiques 
 Réplication d’un cluster PostgreSQL sur un ou plusieurs serveurs 
secondaires 
 La réplication se fait au niveau transaction et non plus au niveau d’un 
fichier WAL (Write Ahead Log) 
 Réplication au niveau du cluster (instance) et non au niveau bases 
 Le serveur secondaire est en mode LECTURE SEULE 
PostgreSQL, La haute disponibilité alphorm.com™©
Fonctionnement 
 Un ou plusieurs serveurs de secours 
 Utilise deux processus 
 wal sender : envoi les enregistrements de journaux de transactions au 
processus wal receiver des serveurs secondaires 
 wal receiver: reçoit les transactions du wal sender et les applique 
 Serveur de secours disponible en LECTURE seule 
PostgreSQL, La haute disponibilité alphorm.com™©
Configuration du serveur primaire 
 Dans le fichier $PGDATA/postgresql.conf 
• wal_level = hot_standby 
• archive_mode = on 
• archive_command = 'cp %p /u103/pgsql/archives/%f‘ 
• max_wal_senders = 1 
• listen_addresses = '*‘ 
• wal_keep_segments = 10 
 Dans le fichier $PGDATA/pg_hba.conf 
• host replication admreplica 192.168.1.171/24 md5 
PostgreSQL, La haute disponibilité alphorm.com™©
Configuration du serveur secondaire 
 Dans le fichier $PGDATA/postgresql.conf 
• hot_standby = on 
• #max_wal_senders = 0 
 Dans le fichier $PGDATA/recovery.conf 
standby_mode = 'on' 
• • restore_command = 'cp /u101/pgsql/wal_primaire/%f %p' 
• primary_conninfo = 'host=192.168.1.170 port=5432 user=admreplica 
password=secret' 
• trigger_file = '/u101/pgsql/wal_primaire/stopstandby' 
PostgreSQL, La haute disponibilité alphorm.com™©
Fonctions utiles 
 pg_is_in_recovery() = savoir si le serveur est maitre ou standby 
 pg_last_xlog_receive_location() = indique l'emplacement du dernier 
enregistrement de transaction reçu 
 pg_last_xlog_replay_location() = précise l'emplacement du dernier 
enregistrement rejoué 
PostgreSQL, La haute disponibilité alphorm.com™©
FAILOVER 
 L'ancien serveur de secours devient serveur primaire 
 L'ancien serveur primaire est arrêté et peut le rester 
 Pour revenir au fonctionnement normal : il faut récréer intégralement 
un serveur de secours 
 Rédiger une procédure pour le mécanisme de FAILOVER 
PostgreSQL, La haute disponibilité alphorm.com™©
PgPool 
PostgreSQL, La haute disponibilité alphorm.com™©
pgPool-II 
Mise en oeuvre de la 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
réplication avec pgPool-II 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Connaître les caractéristiques d’une solution de réplication avec 
pgPool-II 
 Mettre en oeuvre une solution de réplication avec pgPool-II 
PostgreSQL, La haute disponibilité alphorm.com™©
Caractéristiques 
 Gestionnaire de connexion Pgpool externe à PostgreSQL 
 Permet de s’insérer entre les logiciels clients et les serveurs PostgreSQL 
 Permet d’optimiser le nombre de connexions ouvertes sur un serveur 
PostgreSQL 
 Permet d’utiliser jusqu’à 128 serveur PostgreSQL 
 Peut être utilisé comme une solution de réplication 
 Permet de faire de la répartition de charge 
PostgreSQL, La haute disponibilité alphorm.com™©
Configuration de pgPool-II 
 Pour la réplication 
 Dans le fichier pgpool.conf 
• listen_addresses = '*' 
• port = 9999 
• replication_mode = true 
• backend_hostname0 = '192.168.1.170' 
• backend_port0 = 5432 
• backend_hostname1 = '192.168.1.171' 
• backend_port1 = 5432 
PostgreSQL, La haute disponibilité alphorm.com™©
Les étapes de mise en oeuvre 
 Configurer l’accès aux instances PostgreSQL (pg_hba.conf) 
 Installer pgPool-II 
 Configurer la réplication dans pgpool.conf 
 Réaliser un test 
PostgreSQL, La haute disponibilité alphorm.com™©
Rappel : environnement 
 Architecture 
Internet 
IP: 192.168.1.171 
IP: 192.168.1.170 
Hostname: srvpgsql01 
OS: Linux Centos 6.3 
SGBDR: Postgresql 9.3 
Hostname: srvpgsql02 
OS: Linux Centos 6.3 
SGBDR: Postgresql 9.3 
IP: 192.168.1.172 
Hostname: srvpgsql03 
OS: Linux Centos 6.3 
PostgreSQL, La haute disponibilité alphorm.com™©
Répartition de charge avec PgPool-II 
PostgreSQL, La haute disponibilité alphorm.com™©
pgPool-II 
Répartition de charge avec 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
pgPool-II 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectif 
 Mettre en oeuvre la répartition de charge avec pgPool-II 
PostgreSQL, La haute disponibilité alphorm.com™©
Configuration de pgPool-II 
 Dans le fichier pgpool.conf 
• load_balance_mode = true 
• backend_hostname0 = '192.168.1.170' 
• backend_port0 = 5432 
• backend_weight0 = 0.5 
• backend_hostname1 = '192.168.1.171' 
• backend_port1 = 5432 
• backend_weight1 = 0.5 
PostgreSQL, La haute disponibilité alphorm.com™©
Les limites de la réplication avec 
pgPool-II 
PostgreSQL, La haute disponibilité alphorm.com™©
pgPool-II 
Les limites de la 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
réplication avec pgPool-II 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectif 
 Connaître les limites de la réplication avec pgPool-II 
PostgreSQL, La haute disponibilité alphorm.com™©
La réplication avec Slony 
PostgreSQL, La haute disponibilité alphorm.com™©
La réplication avec Slony 
Présentation de Slony 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Connaître les caractéristiques techniques de fonctionnement de Slony 
 Connaître la terminologie utilisée par Slony 
PostgreSQL, La haute disponibilité alphorm.com™©
Caractéristiques techniques 
 Système de réplication asynchrone pour un maître/plusieurs esclaves 
 Utilise le mécanisme de trigger (réplication des changements de 
données) 
 Possibilité de mettre les serveurs Esclave en cascade 
 Les objets répliqués sont les tables et les séquences 
 Les serveurs esclaves sont en lecture seule 
 Les informations de réplication Slony sont stockés dans un schéma 
(nom du réplica) de la base de données à répliquée 
PostgreSQL, La haute disponibilité alphorm.com™©
Terminologie 
 Un cluster est une instance PostgreSQL 
 Un noeud est un serveur (maître/esclave) 
 Un set est un ensemble cohérent de tables et de séquences 
 L'abonnement permet à un noeud de s'abonner aux modifications des 
données réalisées pour un certain set 
 Un slon daemon est le démon Slony qui gère la réplication sur les 
noeuds 
PostgreSQL, La haute disponibilité alphorm.com™©
Architecture 
Noeud 
maître 
Noeud 
Cluster esclave 
TTaabblleess 
Cluster 
Slon 
deamon 
Slon 
Envoi des données deamon 
Triggers Triggers 
IP: 192.168.1.170 
IP: 192.168.1.171 
Set 1 
Abonnement 
Set 2 
Séquences 
PostgreSQL, La haute disponibilité alphorm.com™©
Les contraintes 
 Existence d’une clé primaire sur chaque table à répliquer 
 Ne pas utiliser l'ordre SQL TRUNCATE 
 Le schéma de la base de données répliquée ne doit pas être modifié 
fréquemment 
PostgreSQL, La haute disponibilité alphorm.com™©
Mise en oeuvre de la réplication avec 
Slony 
PostgreSQL, La haute disponibilité alphorm.com™©
La réplication avec Slony 
Mise en oeuvre de la 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
réplication avec Slony 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Identifier les différentes étapes de mise en oeuvre 
 Mettre en oeuvre une solution de réplication avec Slony 
PostgreSQL, La haute disponibilité alphorm.com™©
TP 
Noeud maître 
(repslony) 
Noeud 
Instance 
Instance esclave 
Postgresql 5432 
Tables 
clients Tables 
et 
emp 
Slon 
deamon 
Slon 
Postgresql 5432 
Envoi des données deamon 
IP: 192.168.1.170 
IP: 192.168.1.171 
Set 1 
Séquences 
Abonnement 
Séquences 
PostgreSQL, La haute disponibilité alphorm.com™©
Maintenance de la réplication avec 
Slony 
PostgreSQL, La haute disponibilité alphorm.com™©
La réplication avec Slony 
Maintenance de la 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
réplication avec Slony 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Objectifs 
 Connaître les éléments de surveillance de la réplication Slony 
 Réaliser une bascule du maître vers un esclave 
PostgreSQL, La haute disponibilité alphorm.com™©
Surveillance de la réplication 
 Les éléments à surveiller 
 La réplication des données 
• Schema _nom_replica dans la base de données répliquée 
- Vue _nom_replica.sl_status 
 Le changement du schéma 
• Utilisation de l’outil perl check_postgres.pl 
• Utilisation du script slonik_execute_script 
PostgreSQL, La haute disponibilité alphorm.com™©
Les principales actions de maintenance 
 Faire une bascule du maître 
 Ajouter un noeud à la réplication (slonik_add_node) 
 Supprimer un noeud de la réplication (slonik_drop_node) 
 Ajouter un set à un noeud (slonik_create_set) 
 Supprimer un set d’un noeud (slonik_drop_set) 
 Ajouter/Supprimer une table d’un set (slonik_drop_table) 
 Abonné un noeud à un set (slonik_subscribe_set) 
 ... 
PostgreSQL, La haute disponibilité alphorm.com™©
Switch Over 
 Bascule manuelle 
 Le noeud esclave devient le noeud maître 
 L’ancien noeud maître devient le noeud esclave (synchronisé) 
 Utilisation de l’outil slonik 
lock set (id = 1, origin = 1); 
move set (id = 1, old origin = 1, new origin = 2); 
PostgreSQL, La haute disponibilité alphorm.com™©
Fail Over 
 Bascule d’urgence 
 Le noeud esclave devient le noeud maître 
 L’ancien noeud maître est désynchronisé (necéssité de le reconstruire) 
 Utilisation de l’outil slonik 
failover (id = 1, backup node = 2); 
 Suppression de l’ancien noeud maître 
PostgreSQL, La haute disponibilité alphorm.com™©
Conclusion 
PostgreSQL, La haute disponibilité alphorm.com™©
Conclusion 
Le mot de la fin 
Site : http://www.alphorm.com 
Blog : http://www.alphorm.com/blog 
Forum : http://www.alphorm.com/forum 
Noureddine DRISSI 
Expert consultant bases de 
données 
PostgreSQL, La haute disponibilité alphorm.com™©
Conclusion 
 Rappel des objectifs de la formation 
• Ce que vous devez savoir faire 
- Mettre en oeuvre la réplication asynchrone Warm Standby; 
- Mettre en oeuvre la réplication asynchrone Hot Standby; 
- Mettre en oeuvre la réplication asynchrone Streaming 
Replication; 
- Mettre en oeuvre la réplication asynchrone avec Slony. 
PostgreSQL, La haute disponibilité alphorm.com™©
Conlusion 
 A venir: 
 SQL Server Business Intelligence 
 La modélisation au sens MERISE 
PostgreSQL, La haute disponibilité alphorm.com™©
Conclusion 
FIN 
Merci pour votre attention 
PostgreSQL, La haute disponibilité alphorm.com™©

Contenu connexe

Tendances

alphorm.com - Formation Veeam Backup & Replication 6.5
alphorm.com - Formation Veeam Backup & Replication 6.5alphorm.com - Formation Veeam Backup & Replication 6.5
alphorm.com - Formation Veeam Backup & Replication 6.5Alphorm
 
Alphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm
 
Alphorm.com Formation KVM
Alphorm.com Formation KVMAlphorm.com Formation KVM
Alphorm.com Formation KVMAlphorm
 
Alphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft HyperconvergenceAlphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft HyperconvergenceAlphorm
 
Alphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQLAlphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQLAlphorm
 
alphorm.com - Citrix XenServer 6 Administration (A20)
alphorm.com - Citrix XenServer 6 Administration (A20)alphorm.com - Citrix XenServer 6 Administration (A20)
alphorm.com - Citrix XenServer 6 Administration (A20)Alphorm
 
Tutoriel Vmware
Tutoriel VmwareTutoriel Vmware
Tutoriel Vmwareelharrab
 
Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...
Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...
Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...Alphorm
 
Alphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et ConfigurationAlphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et ConfigurationAlphorm
 
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...Alphorm
 
Alphorm.com-Formation Windows Server 2012 R2 (70-411)
Alphorm.com-Formation Windows Server 2012 R2 (70-411)Alphorm.com-Formation Windows Server 2012 R2 (70-411)
Alphorm.com-Formation Windows Server 2012 R2 (70-411)Alphorm
 
Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm
 
alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)Alphorm
 
Alphorm.com Formation VirtualBox
Alphorm.com Formation VirtualBoxAlphorm.com Formation VirtualBox
Alphorm.com Formation VirtualBoxAlphorm
 
Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2
Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2 Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2
Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2 Alphorm
 
Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...
Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...
Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...Alphorm
 
alphorm.com - Formation Microsoft Hyper-V 2012
alphorm.com - Formation Microsoft Hyper-V 2012alphorm.com - Formation Microsoft Hyper-V 2012
alphorm.com - Formation Microsoft Hyper-V 2012Alphorm
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm
 
Alphorm.com Formation Veeam Backup & Replication 9.5
Alphorm.com Formation Veeam Backup & Replication 9.5Alphorm.com Formation Veeam Backup & Replication 9.5
Alphorm.com Formation Veeam Backup & Replication 9.5Alphorm
 
Alphorm.com Support de la formation Citrix NetScaler11
Alphorm.com Support de la formation Citrix NetScaler11Alphorm.com Support de la formation Citrix NetScaler11
Alphorm.com Support de la formation Citrix NetScaler11Alphorm
 

Tendances (20)

alphorm.com - Formation Veeam Backup & Replication 6.5
alphorm.com - Formation Veeam Backup & Replication 6.5alphorm.com - Formation Veeam Backup & Replication 6.5
alphorm.com - Formation Veeam Backup & Replication 6.5
 
Alphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB Administration
 
Alphorm.com Formation KVM
Alphorm.com Formation KVMAlphorm.com Formation KVM
Alphorm.com Formation KVM
 
Alphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft HyperconvergenceAlphorm.com Formation Microsoft Hyperconvergence
Alphorm.com Formation Microsoft Hyperconvergence
 
Alphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQLAlphorm.com Support de la Formation PHP MySQL
Alphorm.com Support de la Formation PHP MySQL
 
alphorm.com - Citrix XenServer 6 Administration (A20)
alphorm.com - Citrix XenServer 6 Administration (A20)alphorm.com - Citrix XenServer 6 Administration (A20)
alphorm.com - Citrix XenServer 6 Administration (A20)
 
Tutoriel Vmware
Tutoriel VmwareTutoriel Vmware
Tutoriel Vmware
 
Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...
Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...
Alphorm.com Formation Citrix Virtual Apps et Desktops 7.1x : Configuration et...
 
Alphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et ConfigurationAlphorm.com Formation Windows Server 2016 : Installation et Configuration
Alphorm.com Formation Windows Server 2016 : Installation et Configuration
 
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...
Alphorm.com Formation Windows Server 2019 : Installation et Configuration de ...
 
Alphorm.com-Formation Windows Server 2012 R2 (70-411)
Alphorm.com-Formation Windows Server 2012 R2 (70-411)Alphorm.com-Formation Windows Server 2012 R2 (70-411)
Alphorm.com-Formation Windows Server 2012 R2 (70-411)
 
Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux
 
alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)
 
Alphorm.com Formation VirtualBox
Alphorm.com Formation VirtualBoxAlphorm.com Formation VirtualBox
Alphorm.com Formation VirtualBox
 
Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2
Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2 Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2
Alphorm.com Formation Implémenter une PKI avec ADCS 2012 R2
 
Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...
Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...
Alphorm.com Formation VMware vSphere 7 : What's New (1of2) (MàJ des connaissa...
 
alphorm.com - Formation Microsoft Hyper-V 2012
alphorm.com - Formation Microsoft Hyper-V 2012alphorm.com - Formation Microsoft Hyper-V 2012
alphorm.com - Formation Microsoft Hyper-V 2012
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0
 
Alphorm.com Formation Veeam Backup & Replication 9.5
Alphorm.com Formation Veeam Backup & Replication 9.5Alphorm.com Formation Veeam Backup & Replication 9.5
Alphorm.com Formation Veeam Backup & Replication 9.5
 
Alphorm.com Support de la formation Citrix NetScaler11
Alphorm.com Support de la formation Citrix NetScaler11Alphorm.com Support de la formation Citrix NetScaler11
Alphorm.com Support de la formation Citrix NetScaler11
 

En vedette

Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm
 
Alphorm.com Formation RDS Windows Server 2008 R2 - Guide du consultant
Alphorm.com Formation  RDS Windows Server 2008 R2 - Guide du consultantAlphorm.com Formation  RDS Windows Server 2008 R2 - Guide du consultant
Alphorm.com Formation RDS Windows Server 2008 R2 - Guide du consultantAlphorm
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQLAlphorm
 
alphorm.com - Formation PostgreSQL administration
alphorm.com - Formation PostgreSQL administrationalphorm.com - Formation PostgreSQL administration
alphorm.com - Formation PostgreSQL administrationAlphorm
 
alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)Alphorm
 
Alphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm
 
Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)
Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)
Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)Alphorm
 
Alphorm.com Formation MySQL Administration(1Z0-883)
Alphorm.com   Formation MySQL Administration(1Z0-883)Alphorm.com   Formation MySQL Administration(1Z0-883)
Alphorm.com Formation MySQL Administration(1Z0-883)Alphorm
 
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentauxAlphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentauxAlphorm
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratiqueAbdelouahed Abdou
 
Introduction aux Triggers avec MySQL
Introduction aux Triggers avec MySQLIntroduction aux Triggers avec MySQL
Introduction aux Triggers avec MySQLRouff Joseph
 
[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosql[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosqlGUSS
 
Les bases fondamentales du langage transact sql
Les bases fondamentales du langage transact sqlLes bases fondamentales du langage transact sql
Les bases fondamentales du langage transact sqlZineb Meryem
 
Petit Déjeuner Talend/SQLI
Petit Déjeuner Talend/SQLIPetit Déjeuner Talend/SQLI
Petit Déjeuner Talend/SQLICedric CARBONE
 
Présentation Talend Open Studio
Présentation Talend Open StudioPrésentation Talend Open Studio
Présentation Talend Open Studiohoracio lassey
 
[French] Matinale du Big Data Talend
[French] Matinale du Big Data Talend[French] Matinale du Big Data Talend
[French] Matinale du Big Data TalendJean-Michel Franco
 

En vedette (20)

Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3
 
Alphorm.com Formation RDS Windows Server 2008 R2 - Guide du consultant
Alphorm.com Formation  RDS Windows Server 2008 R2 - Guide du consultantAlphorm.com Formation  RDS Windows Server 2008 R2 - Guide du consultant
Alphorm.com Formation RDS Windows Server 2008 R2 - Guide du consultant
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQL
 
alphorm.com - Formation PostgreSQL administration
alphorm.com - Formation PostgreSQL administrationalphorm.com - Formation PostgreSQL administration
alphorm.com - Formation PostgreSQL administration
 
alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)alphorm.com - Formation SQL Server 2012 (70-462)
alphorm.com - Formation SQL Server 2012 (70-462)
 
Alphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQL
 
Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)
Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)
Alphorm.com Formation Microsoft SQL Server 2016 Business Intelligence (SSIS)
 
Alphorm.com Formation MySQL Administration(1Z0-883)
Alphorm.com   Formation MySQL Administration(1Z0-883)Alphorm.com   Formation MySQL Administration(1Z0-883)
Alphorm.com Formation MySQL Administration(1Z0-883)
 
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentauxAlphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
 
Bases de données réparties par la pratique
Bases de données réparties par la pratiqueBases de données réparties par la pratique
Bases de données réparties par la pratique
 
TRIGGERS
TRIGGERSTRIGGERS
TRIGGERS
 
Triggers ppt
Triggers pptTriggers ppt
Triggers ppt
 
Introduction aux Triggers avec MySQL
Introduction aux Triggers avec MySQLIntroduction aux Triggers avec MySQL
Introduction aux Triggers avec MySQL
 
[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosql[JSS2015] - Document db et nosql
[JSS2015] - Document db et nosql
 
Les bases fondamentales du langage transact sql
Les bases fondamentales du langage transact sqlLes bases fondamentales du langage transact sql
Les bases fondamentales du langage transact sql
 
Certificate Talend
Certificate TalendCertificate Talend
Certificate Talend
 
Petit Déjeuner Talend/SQLI
Petit Déjeuner Talend/SQLIPetit Déjeuner Talend/SQLI
Petit Déjeuner Talend/SQLI
 
Présentation Talend Open Studio
Présentation Talend Open StudioPrésentation Talend Open Studio
Présentation Talend Open Studio
 
Talend
TalendTalend
Talend
 
[French] Matinale du Big Data Talend
[French] Matinale du Big Data Talend[French] Matinale du Big Data Talend
[French] Matinale du Big Data Talend
 

Similaire à Alphorm.com Formation PostgreSQL, la Haute Disponibilité

PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linuxKhalid ALLILI
 
Installation d'openerp 6.1 rc1
Installation d'openerp 6.1 rc1Installation d'openerp 6.1 rc1
Installation d'openerp 6.1 rc1easyopenerp
 
Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Olivier Gutknecht
 
Réplication de base de données oracle avec Golden Gate
Réplication de base de données oracle avec Golden GateRéplication de base de données oracle avec Golden Gate
Réplication de base de données oracle avec Golden GateMor THIAM
 
08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur web08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur webNoël
 
PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linuxKhalid ALLILI
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm
 
[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrême[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrêmeOVHcloud
 
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Steven VAN POECK
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesChristophe Furmaniak
 
Drupal 8, symfony
Drupal 8, symfonyDrupal 8, symfony
Drupal 8, symfonyjeUXdiCode
 
Les containers docker vu par un chef cuisinier et un mécanicien
Les containers docker vu par un chef cuisinier et un mécanicienLes containers docker vu par un chef cuisinier et un mécanicien
Les containers docker vu par un chef cuisinier et un mécanicienRachid Zarouali
 
Apache server configuration & sécurisation -
Apache server configuration & sécurisation  -Apache server configuration & sécurisation  -
Apache server configuration & sécurisation -achraf_ing
 
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôleAlphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôleAlphorm
 
Alphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm
 
Mysql Apche PHP sous linux
Mysql Apche PHP sous linuxMysql Apche PHP sous linux
Mysql Apche PHP sous linuxKhalid ALLILI
 

Similaire à Alphorm.com Formation PostgreSQL, la Haute Disponibilité (20)

PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linux
 
Installation d'openerp 6.1 rc1
Installation d'openerp 6.1 rc1Installation d'openerp 6.1 rc1
Installation d'openerp 6.1 rc1
 
Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09Chef - Paris BlockCamp - Nov 09
Chef - Paris BlockCamp - Nov 09
 
Réplication de base de données oracle avec Golden Gate
Réplication de base de données oracle avec Golden GateRéplication de base de données oracle avec Golden Gate
Réplication de base de données oracle avec Golden Gate
 
08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur web08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur web
 
PostgreSQL sous linux
PostgreSQL sous linuxPostgreSQL sous linux
PostgreSQL sous linux
 
Installation open erp
Installation open erpInstallation open erp
Installation open erp
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.x
 
[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrême[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrême
 
Cours 8 squid.pdf
Cours 8 squid.pdfCours 8 squid.pdf
Cours 8 squid.pdf
 
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?
 
Rex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantesRex docker en production meeutp-docker-nantes
Rex docker en production meeutp-docker-nantes
 
Drupal 8, symfony
Drupal 8, symfonyDrupal 8, symfony
Drupal 8, symfony
 
Les containers docker vu par un chef cuisinier et un mécanicien
Les containers docker vu par un chef cuisinier et un mécanicienLes containers docker vu par un chef cuisinier et un mécanicien
Les containers docker vu par un chef cuisinier et un mécanicien
 
Apache server configuration & sécurisation -
Apache server configuration & sécurisation  -Apache server configuration & sécurisation  -
Apache server configuration & sécurisation -
 
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôleAlphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
Alphorm.com Formation PCSoft(version20) GDS et Centres de contrôle
 
Alphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration AvancéeAlphorm.com Formation Exchange 2016, Configuration Avancée
Alphorm.com Formation Exchange 2016, Configuration Avancée
 
Ocs
OcsOcs
Ocs
 
Mysql Apche PHP sous linux
Mysql Apche PHP sous linuxMysql Apche PHP sous linux
Mysql Apche PHP sous linux
 

Plus de Alphorm

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm
 
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm
 
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm
 

Plus de Alphorm (20)

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
 
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion Commerciale
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
 
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POO
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
 

Alphorm.com Formation PostgreSQL, la Haute Disponibilité

  • 1. PostgreSQL, Haute Disponibilité Présentation de la Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum formation Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 2. Plan • Présentation du formateur • Mes formations sur alphorm • Le plan de formation • Publics concernés • Connaissances requises • Liens utiles PostgreSQL, La haute disponibilité alphorm.com™©
  • 3. Le formateur Noureddine DRISSI Expertise dans le domaine des bases de données 15 années d’expérience sur tous les SGBDR du marché (Langage SQL, Mysql, Oracle, SQL Server, Postgresql,DB2, MongoDB) Issue de l’environnement bancaire • contact@valneo-xi.fr • Mon profil sur alphorm.com : http://www.alphorm.com/auteur/noureddine-drissi PostgreSQL, La haute disponibilité alphorm.com™©
  • 4. Mes formations sur alphorm.com MySQL, Administration (1Z0-883) Oracle Database 11g DBA 1 (1Z0-052) Le langage SQL MongoDB, administration Formation Administration Administration SQL Server PostgreSQL 2012 (70-462) PostgreSQL, La haute disponibilité alphorm.com™©
  • 5. Connaissances préalables Connaissances en administration de PostgreSQL Avoir suivi le cours PostgreSQL, administration Formation Administration PostgreSQL PostgreSQL, La haute disponibilité alphorm.com™©
  • 6. A propos de ce cours Objectifs : • Comprendre les mécanismes de haute disponibilité; • Mettre en oeuvre une solution opérationnelle de haute disponibilité; • Choisir la solution de haute disponibilité la plus adaptée; • Comprendre et maîtriser les différents modes de réplication. PostgreSQL, La haute disponibilité alphorm.com™©
  • 7. Plan du cours Présentation de la formation Présentation des solutions de haute disponibilité Le Warm Standby ou Log Shipping Le Hot Standby Streaming Réplication pgPool-II La réplication avec Slony Conclusion PostgreSQL, La haute disponibilité alphorm.com™©
  • 8. GO PostgreSQL, La haute disponibilité alphorm.com™©
  • 9. PostgreSQL, Haute Disponibilité L’environnement Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 10. Environnement Architecture Internet IP: 192.168.1.171 IP: 192.168.1.170 Hostname: srvpgsql01 OS: Linux Centos 6.3 SGBDR: Postgresql 9.3 Hostname: srvpgsql02 OS: Linux Centos 6.3 SGBDR: Postgresql 9.3 IP: 192.168.1.172 Hostname: srvpgsql03 OS: Linux Centos 6.3 PostgreSQL, La haute disponibilité alphorm.com™©
  • 11. Présentation des solutions de haute disponibilité PostgreSQL, La haute disponibilité alphorm.com™©
  • 12. Présentation des solutions de haute disponibilité Les solutions de haute Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum disponibilité Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 13. Objectifs Présenter les solutions de haute disponibilité sous PostgreSQL Comprendre les principales caractéristiques de chaque solution PostgreSQL, La haute disponibilité alphorm.com™©
  • 14. Les solutions de haute disponibilité Warm Standby ou Log Shipping Utilisation des fichiers journaux Nécessité d’être en mode ARCHIVELOG Nécessite un réseau fiable Le FAIL OVER doit être géré manuellement ou par script Le serveur secondaire est en mode RESTORE PostgreSQL, La haute disponibilité alphorm.com™©
  • 15. Les solutions de haute disponibilité Architecture Warm Standby ou Log Shipping PostgreSQL, La haute disponibilité alphorm.com™©
  • 16. Les solutions de haute disponibilité Hot Standby Utilisation des fichiers journaux Nécessité d’être en mode ARCHIVELOG Nécessite un réseau fiable Le FAIL OVER doit être géré manuellement ou par script Le serveur secondaire est ouvert en mode lecture seule PostgreSQL, La haute disponibilité alphorm.com™©
  • 17. Les solutions de haute disponibilité Architecture Host Standby PostgreSQL, La haute disponibilité alphorm.com™©
  • 18. Les solutions de haute disponibilité Streaming Replication Consiste à rejouer les transactions par paquet du maître vers l’esclave Transmission des transactions en groupe Nécessite un réseau fiable Le FAIL OVER doit être géré manuellement ou par script Le serveur secondaire est ouvert en mode lecture seule PostgreSQL, La haute disponibilité alphorm.com™©
  • 19. Les solutions de haute disponibilité Architecture Streaming Replication PostgreSQL, La haute disponibilité alphorm.com™©
  • 20. Les solutions de haute disponibilité Slony Système de réplication asynchrone pour un maître/plusieurs esclaves Permet de répliquer des données entre plusieurs serveurs PostgreSQL La réplication s’effectue au niveau table Utilise le mécanisme de trigger Possibilité de mettre les serveurs Esclave en cascade PostgreSQL, La haute disponibilité alphorm.com™©
  • 21. Les solutions de haute disponibilité Architecture Slony PostgreSQL, La haute disponibilité alphorm.com™©
  • 22. Les solutions de haute disponibilité PgPool-II Gestionnaire de connexion externe à PostgreSQL Permet de s’insérer entre les logiciels clients et les serveurs PostgreSQL Permet d’optimiser le nombre de connexions ouvertes sur un serveur PostgreSQL Permet de faire de la réplication et de la répartition de charge PostgreSQL, La haute disponibilité alphorm.com™©
  • 23. Les solutions de haute disponibilité Architecture: PgPool-II PostgreSQL, La haute disponibilité alphorm.com™©
  • 24. Le Warm Standby PostgreSQL, La haute disponibilité alphorm.com™©
  • 25. Le Warm Standby ou Log Shipping Préparation de Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum l’environnement Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 26. Objectifs Préparer l’environnement pour la mise en place du Warm Standby Installer PostgreSQL 9.3 Initialiser les instances PostgreSQL Automatiser les échanges entre les deux serveurs avec ssh PostgreSQL, La haute disponibilité alphorm.com™©
  • 27. Installation de PostgreSQL 9.3 Installation du dépôt PGDG yum localinstall http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-centos93- 9.3-1.noarch.rpm Installation de PostgreSQL yum install postgresql93-server PostgreSQL, La haute disponibilité alphorm.com™©
  • 28. Initialisation des instances PostgreSQL Utilisation du programme initdb su - postgres • echo $PGDATA • initdb -D $PGDATA • pg_ctl -D $PGDATA start PostgreSQL, La haute disponibilité alphorm.com™©
  • 29. Automatisation des échanges ssh Génération du couple clés publique/privée ssh-keygen -t rsa Transfert d’une copie de la clé publique sur le serveur distant PostgreSQL, La haute disponibilité alphorm.com™©
  • 30. Mise en oeuvre du mode ARCHIVELOG PostgreSQL, La haute disponibilité alphorm.com™©
  • 31. Le Warm Standby ou Log Shipping Mise en oeuvre du mode Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum ARCHIVELOG Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 32. Objectif Configurer le mode ARCHIVELOG pour le Warm Standby PostgreSQL, La haute disponibilité alphorm.com™©
  • 33. Les paramètres de configuration Dans le fichier postgresql.conf du serveur primaire archive_mode = on wal_level = archive archive_command = ‘scp %p 192.168.1.171:/u101/pgsql/wal_primaire/%f’ archive_timeout = 60 PostgreSQL, La haute disponibilité alphorm.com™©
  • 34. Mise en oeuvre du mode de réplication Warm Standby PostgreSQL, La haute disponibilité alphorm.com™©
  • 35. Le Warm Standby ou Log Shipping Mise en oeuvre de la réplication Warm Standby Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 36. Objectifs Connaître les caractéristiques d’une solution de réplication Warm Standby Mettre en oeuvre une solution de réplication Warm Standby PostgreSQL, La haute disponibilité alphorm.com™©
  • 37. Caractéristiques Réplication d’un cluster PostgreSQL sur un serveur secondaire Le serveur secondaire est identique au serveur primaire à un WAL près Réplication au niveau du cluster (instance) et non au niveau bases Intégré à PostgreSQL Simple et robuste Utilise l’outil pg_standby Le serveur secondaire est en mode RESTORE PostgreSQL, La haute disponibilité alphorm.com™©
  • 38. Fonctionnement Un ou plusieurs serveurs de secours Serveur principal : opère en mode d'archivage continu Serveur de secours : opère en mode de récupération continue restore_command Transfert de fichiers appelé transfert de journaux Envoi des journaux asynchrone Taille de la fenêtre des données perdues peut-être réduite avec archive_timeout Serveur de secours non disponible car en mode récupération PostgreSQL, La haute disponibilité alphorm.com™©
  • 39. Les étapes de mise en oeuvre 1. Installer pg_standby sur les deux serveurs (postgresql93-contrib) 2. Préparer la configuration du serveur primaire et secours (identique) 3. Configurer l'archivage continu sur le serveur primaire 4. Réaliser une sauvegarde de la racine de l’instance du serveur primaire 5. Restaurer la sauvegarde sur le serveur de secours 6. Commencer la récupération sur le serveur de secours à partir de l'archive WAL (recovery.conf) PostgreSQL, La haute disponibilité alphorm.com™©
  • 40. FAILOVER L'ancien serveur de secours devient serveur primaire L'ancien serveur primaire est arrêté et peut le rester Pour revenir au fonctionnement normal : il faut récréer intégralement un serveur de secours Rédiger une procédure pour le mécanisme de FAILOVER PostgreSQL, La haute disponibilité alphorm.com™©
  • 41. Le Hot Standby PostgreSQL, La haute disponibilité alphorm.com™©
  • 42. Le Hot Standby Mise en oeuvre de la Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum réplication Hot Standby Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 43. Objectifs Connaître les caractéristiques d’une solution de réplication Hot Standby Mettre en oeuvre une solution de réplication Hot Standby PostgreSQL, La haute disponibilité alphorm.com™©
  • 44. Caractéristiques Réplication d’un cluster PostgreSQL sur un serveur secondaire Le serveur secondaire est identique au serveur primaire à un WAL près Réplication au niveau du cluster (instance) et non au niveau bases Intégré à PostgreSQL Simple et robuste Utilise l’outil pg_standby Le serveur secondaire est en mode LECTURE SEULE PostgreSQL, La haute disponibilité alphorm.com™©
  • 45. Fonctionnement Un ou plusieurs serveurs de secours Serveur principal : opère en mode d'archivage continu Serveur de secours : opère en mode de récupération continue restore_command Transfert de fichiers appelé transfert de journaux Envoi des journaux asynchrone Taille de la fenêtre des données perdues peut-être réduite avec archive_timeout Serveur de secours disponible en LECTURE seule PostgreSQL, La haute disponibilité alphorm.com™©
  • 46. Les étapes de mise en oeuvre 1. Installer pg_standby sur les deux serveurs (postgresql93-contrib) 2. Préparer la configuration du serveur primaire et secours (identique) 3. Configurer l'archivage continu sur le serveur primaire (wal_level = hot_standby) 4. Réaliser une sauvegarde de la racine de l’instance du serveur primaire 5. Restaurer la sauvegarde sur le serveur de secours 6. Instance secondaire en mode hot standby (hot_standby = on) 7. Commencer la récupération sur le serveur de secours à partir de l'archive WAL (recovery.conf) PostgreSQL, La haute disponibilité alphorm.com™©
  • 47. Fonctions utiles pg_is_in_recovery() = savoir si le serveur est maitre ou standby pg_last_xlog_receive_location() = indique l'emplacement du dernier enregistrement de transaction reçu pg_last_xlog_replay_location() = précise l'emplacement du dernier enregistrement rejoué PostgreSQL, La haute disponibilité alphorm.com™©
  • 48. FAILOVER L'ancien serveur de secours devient serveur primaire L'ancien serveur primaire est arrêté et peut le rester Pour revenir au fonctionnement normal : il faut récréer intégralement un serveur de secours Rédiger une procédure pour le mécanisme de FAILOVER PostgreSQL, La haute disponibilité alphorm.com™©
  • 49. Streaming Replication PostgreSQL, La haute disponibilité alphorm.com™©
  • 50. Streaming Replication Mise en oeuvre du Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Streaming Replication Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 51. Objectifs Connaître les caractéristiques d’une solution de Streaming Replication Mettre en oeuvre une solution de Streaming Replication PostgreSQL, La haute disponibilité alphorm.com™©
  • 52. Caractéristiques Réplication d’un cluster PostgreSQL sur un ou plusieurs serveurs secondaires La réplication se fait au niveau transaction et non plus au niveau d’un fichier WAL (Write Ahead Log) Réplication au niveau du cluster (instance) et non au niveau bases Le serveur secondaire est en mode LECTURE SEULE PostgreSQL, La haute disponibilité alphorm.com™©
  • 53. Fonctionnement Un ou plusieurs serveurs de secours Utilise deux processus wal sender : envoi les enregistrements de journaux de transactions au processus wal receiver des serveurs secondaires wal receiver: reçoit les transactions du wal sender et les applique Serveur de secours disponible en LECTURE seule PostgreSQL, La haute disponibilité alphorm.com™©
  • 54. Configuration du serveur primaire Dans le fichier $PGDATA/postgresql.conf • wal_level = hot_standby • archive_mode = on • archive_command = 'cp %p /u103/pgsql/archives/%f‘ • max_wal_senders = 1 • listen_addresses = '*‘ • wal_keep_segments = 10 Dans le fichier $PGDATA/pg_hba.conf • host replication admreplica 192.168.1.171/24 md5 PostgreSQL, La haute disponibilité alphorm.com™©
  • 55. Configuration du serveur secondaire Dans le fichier $PGDATA/postgresql.conf • hot_standby = on • #max_wal_senders = 0 Dans le fichier $PGDATA/recovery.conf standby_mode = 'on' • • restore_command = 'cp /u101/pgsql/wal_primaire/%f %p' • primary_conninfo = 'host=192.168.1.170 port=5432 user=admreplica password=secret' • trigger_file = '/u101/pgsql/wal_primaire/stopstandby' PostgreSQL, La haute disponibilité alphorm.com™©
  • 56. Fonctions utiles pg_is_in_recovery() = savoir si le serveur est maitre ou standby pg_last_xlog_receive_location() = indique l'emplacement du dernier enregistrement de transaction reçu pg_last_xlog_replay_location() = précise l'emplacement du dernier enregistrement rejoué PostgreSQL, La haute disponibilité alphorm.com™©
  • 57. FAILOVER L'ancien serveur de secours devient serveur primaire L'ancien serveur primaire est arrêté et peut le rester Pour revenir au fonctionnement normal : il faut récréer intégralement un serveur de secours Rédiger une procédure pour le mécanisme de FAILOVER PostgreSQL, La haute disponibilité alphorm.com™©
  • 58. PgPool PostgreSQL, La haute disponibilité alphorm.com™©
  • 59. pgPool-II Mise en oeuvre de la Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum réplication avec pgPool-II Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 60. Objectifs Connaître les caractéristiques d’une solution de réplication avec pgPool-II Mettre en oeuvre une solution de réplication avec pgPool-II PostgreSQL, La haute disponibilité alphorm.com™©
  • 61. Caractéristiques Gestionnaire de connexion Pgpool externe à PostgreSQL Permet de s’insérer entre les logiciels clients et les serveurs PostgreSQL Permet d’optimiser le nombre de connexions ouvertes sur un serveur PostgreSQL Permet d’utiliser jusqu’à 128 serveur PostgreSQL Peut être utilisé comme une solution de réplication Permet de faire de la répartition de charge PostgreSQL, La haute disponibilité alphorm.com™©
  • 62. Configuration de pgPool-II Pour la réplication Dans le fichier pgpool.conf • listen_addresses = '*' • port = 9999 • replication_mode = true • backend_hostname0 = '192.168.1.170' • backend_port0 = 5432 • backend_hostname1 = '192.168.1.171' • backend_port1 = 5432 PostgreSQL, La haute disponibilité alphorm.com™©
  • 63. Les étapes de mise en oeuvre Configurer l’accès aux instances PostgreSQL (pg_hba.conf) Installer pgPool-II Configurer la réplication dans pgpool.conf Réaliser un test PostgreSQL, La haute disponibilité alphorm.com™©
  • 64. Rappel : environnement Architecture Internet IP: 192.168.1.171 IP: 192.168.1.170 Hostname: srvpgsql01 OS: Linux Centos 6.3 SGBDR: Postgresql 9.3 Hostname: srvpgsql02 OS: Linux Centos 6.3 SGBDR: Postgresql 9.3 IP: 192.168.1.172 Hostname: srvpgsql03 OS: Linux Centos 6.3 PostgreSQL, La haute disponibilité alphorm.com™©
  • 65. Répartition de charge avec PgPool-II PostgreSQL, La haute disponibilité alphorm.com™©
  • 66. pgPool-II Répartition de charge avec Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum pgPool-II Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 67. Objectif Mettre en oeuvre la répartition de charge avec pgPool-II PostgreSQL, La haute disponibilité alphorm.com™©
  • 68. Configuration de pgPool-II Dans le fichier pgpool.conf • load_balance_mode = true • backend_hostname0 = '192.168.1.170' • backend_port0 = 5432 • backend_weight0 = 0.5 • backend_hostname1 = '192.168.1.171' • backend_port1 = 5432 • backend_weight1 = 0.5 PostgreSQL, La haute disponibilité alphorm.com™©
  • 69. Les limites de la réplication avec pgPool-II PostgreSQL, La haute disponibilité alphorm.com™©
  • 70. pgPool-II Les limites de la Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum réplication avec pgPool-II Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 71. Objectif Connaître les limites de la réplication avec pgPool-II PostgreSQL, La haute disponibilité alphorm.com™©
  • 72. La réplication avec Slony PostgreSQL, La haute disponibilité alphorm.com™©
  • 73. La réplication avec Slony Présentation de Slony Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 74. Objectifs Connaître les caractéristiques techniques de fonctionnement de Slony Connaître la terminologie utilisée par Slony PostgreSQL, La haute disponibilité alphorm.com™©
  • 75. Caractéristiques techniques Système de réplication asynchrone pour un maître/plusieurs esclaves Utilise le mécanisme de trigger (réplication des changements de données) Possibilité de mettre les serveurs Esclave en cascade Les objets répliqués sont les tables et les séquences Les serveurs esclaves sont en lecture seule Les informations de réplication Slony sont stockés dans un schéma (nom du réplica) de la base de données à répliquée PostgreSQL, La haute disponibilité alphorm.com™©
  • 76. Terminologie Un cluster est une instance PostgreSQL Un noeud est un serveur (maître/esclave) Un set est un ensemble cohérent de tables et de séquences L'abonnement permet à un noeud de s'abonner aux modifications des données réalisées pour un certain set Un slon daemon est le démon Slony qui gère la réplication sur les noeuds PostgreSQL, La haute disponibilité alphorm.com™©
  • 77. Architecture Noeud maître Noeud Cluster esclave TTaabblleess Cluster Slon deamon Slon Envoi des données deamon Triggers Triggers IP: 192.168.1.170 IP: 192.168.1.171 Set 1 Abonnement Set 2 Séquences PostgreSQL, La haute disponibilité alphorm.com™©
  • 78. Les contraintes Existence d’une clé primaire sur chaque table à répliquer Ne pas utiliser l'ordre SQL TRUNCATE Le schéma de la base de données répliquée ne doit pas être modifié fréquemment PostgreSQL, La haute disponibilité alphorm.com™©
  • 79. Mise en oeuvre de la réplication avec Slony PostgreSQL, La haute disponibilité alphorm.com™©
  • 80. La réplication avec Slony Mise en oeuvre de la Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum réplication avec Slony Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 81. Objectifs Identifier les différentes étapes de mise en oeuvre Mettre en oeuvre une solution de réplication avec Slony PostgreSQL, La haute disponibilité alphorm.com™©
  • 82. TP Noeud maître (repslony) Noeud Instance Instance esclave Postgresql 5432 Tables clients Tables et emp Slon deamon Slon Postgresql 5432 Envoi des données deamon IP: 192.168.1.170 IP: 192.168.1.171 Set 1 Séquences Abonnement Séquences PostgreSQL, La haute disponibilité alphorm.com™©
  • 83. Maintenance de la réplication avec Slony PostgreSQL, La haute disponibilité alphorm.com™©
  • 84. La réplication avec Slony Maintenance de la Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum réplication avec Slony Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 85. Objectifs Connaître les éléments de surveillance de la réplication Slony Réaliser une bascule du maître vers un esclave PostgreSQL, La haute disponibilité alphorm.com™©
  • 86. Surveillance de la réplication Les éléments à surveiller La réplication des données • Schema _nom_replica dans la base de données répliquée - Vue _nom_replica.sl_status Le changement du schéma • Utilisation de l’outil perl check_postgres.pl • Utilisation du script slonik_execute_script PostgreSQL, La haute disponibilité alphorm.com™©
  • 87. Les principales actions de maintenance Faire une bascule du maître Ajouter un noeud à la réplication (slonik_add_node) Supprimer un noeud de la réplication (slonik_drop_node) Ajouter un set à un noeud (slonik_create_set) Supprimer un set d’un noeud (slonik_drop_set) Ajouter/Supprimer une table d’un set (slonik_drop_table) Abonné un noeud à un set (slonik_subscribe_set) ... PostgreSQL, La haute disponibilité alphorm.com™©
  • 88. Switch Over Bascule manuelle Le noeud esclave devient le noeud maître L’ancien noeud maître devient le noeud esclave (synchronisé) Utilisation de l’outil slonik lock set (id = 1, origin = 1); move set (id = 1, old origin = 1, new origin = 2); PostgreSQL, La haute disponibilité alphorm.com™©
  • 89. Fail Over Bascule d’urgence Le noeud esclave devient le noeud maître L’ancien noeud maître est désynchronisé (necéssité de le reconstruire) Utilisation de l’outil slonik failover (id = 1, backup node = 2); Suppression de l’ancien noeud maître PostgreSQL, La haute disponibilité alphorm.com™©
  • 90. Conclusion PostgreSQL, La haute disponibilité alphorm.com™©
  • 91. Conclusion Le mot de la fin Site : http://www.alphorm.com Blog : http://www.alphorm.com/blog Forum : http://www.alphorm.com/forum Noureddine DRISSI Expert consultant bases de données PostgreSQL, La haute disponibilité alphorm.com™©
  • 92. Conclusion Rappel des objectifs de la formation • Ce que vous devez savoir faire - Mettre en oeuvre la réplication asynchrone Warm Standby; - Mettre en oeuvre la réplication asynchrone Hot Standby; - Mettre en oeuvre la réplication asynchrone Streaming Replication; - Mettre en oeuvre la réplication asynchrone avec Slony. PostgreSQL, La haute disponibilité alphorm.com™©
  • 93. Conlusion A venir: SQL Server Business Intelligence La modélisation au sens MERISE PostgreSQL, La haute disponibilité alphorm.com™©
  • 94. Conclusion FIN Merci pour votre attention PostgreSQL, La haute disponibilité alphorm.com™©