Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 Réplication » Conseille pour mise en place d'un CLUSTER » 22/03/2015 15:49:33
- totof68
- Réponses : 2
Bonjour,
Dans le cadre d'un projet, je dois mettre en place une base de donnée PostgreSQL.
J'ai déjà eu votre aide pour la configuration de la base de donnée, maintenant je vous sollicite pour la mise en place d'un cluster.
J'aimerais mettre en place 1 serveur Maître, et 1 serveur Esclave. Si le Maître tombe l'Esclave prends le relais.
J'ai lu sur le net à propos de PGpool II.
Est-ce que ce serais la meilleur solution ?
J'ai tester sa mise en place avec un serveur Maître en 192.168.1.201 et l'esclave en 192.168.1.202.
L'ip de PGPool II est 192.168.1.203
Cela à l'air de bien fonctionner à priori
psql -h 192.168.1.203 -p 9999 -U postgres
psql (9.4.1)
Saisissez « help » pour l'aide.
postgres=#
Création d'une base de donnée
create database VERIFICATION_CLUSTER1;
Vérification de la présence de cette base sur nos deux serveurs
Serveur 1
psql -h 192.168.1.201 -p 5432 -U postgres -l
Liste des bases de données
Nom | Propriétaire | Encodage | Collationnement | Type caract. | Droits d'accès
----------------------+--------------+----------+-----------------+--------------+-----------------------
postgres | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 |
template0 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
verification_cluster | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 |
(4 lignes)
Serveur 2
psql -h 192.168.1.202 -p 5432 -U postgres -l
Liste des bases de données
Nom | Propriétaire | Encodage | Collationnement | Type caract. | Droits d'accès
----------------------+--------------+----------+-----------------+--------------+-----------------------
postgres | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 |
template0 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
verification_cluster | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 |
(4 lignes)
Cependant, lorsque j'essaie de faire l'installation d'une application en lui donnant un pg_service tels que celui la
[s_workflow]
host=192.168.1.203
port=9000
dbname=db_test
user=u_test
password=p_test
( Je précise que la base de donnée et l'utilisateur sont bien crée )
Cela ne fonctionne pas vraiment, c'est très très long ( je ne sais même pas si il se passe quelque chose d'ailleurs )
Par contre si je mets le pg_service comme cela :
[s_workflow]
host=192.168.1.201
port=5432
dbname=db_test
user=u_test
password=p_test
Pas de soucis cela passe comme une lettre à la poste.
Quelqu'un aurais un petit conseil ?
Cordialement,
#2 Re : Installation » FATAL: authentification par mot de passe ?chou?e pour l'utilisateur » 12/02/2015 16:03:47
Je viens de refaire un test avec une nouvelle base de donnée, utilisateur & co, et cela fonctionne parfaitement.
Mon fichier de configuration pg_service devait avoir un soucis avec des tabulations je pense, car j'ai refais un service dedans avec les nouvelles info et l'installation s'est bien faite.
En tout cas merci pour votre aide
#3 Re : Installation » FATAL: authentification par mot de passe ?chou?e pour l'utilisateur » 12/02/2015 00:57:34
Bonsoir Gleu,
Le fichier pg_service.conf est dans le répertoire : cd /etc/postgresql-common/
Je penses que la variable PGSYSCONFDIR est bonne... enfin comme je disais j'arrive à me connecter a la base de donnée avec l'utilisateur de la base, cependant on dirait que lorsque je veux faire une connexion avec l'outil en php il ne se passe rien... car je ne vois pas de tentative échouer dans les log de posgresql alors du coup je ne sais pas d'ou cela peut provenir étant donnée que j'ai bien le php5-psql d'installer sur le serveur...
#4 Re : Installation » FATAL: authentification par mot de passe ?chou?e pour l'utilisateur » 11/02/2015 16:11:16
Le restart de postgresql est fait ( plusieurs fois même à fois que j'essaie de faire des modifications de config )
En faite pour dynacase, si je ne me trompe pas, on lui indique le nom du service, dans mon cas [s_ecliss] ( même si j'ai aussi essayer ecliss, db_ecliss etc...)
Dynacase va se connecter à la base de donnée en utilisant les valeurs qui se trouve dans pg_service donc :
[s_ecliss]
host=localhost
port=5432
dbname=db_ecliss
user=u_ecliss
password=p_ecliss
#5 Re : Installation » FATAL: authentification par mot de passe ?chou?e pour l'utilisateur » 11/02/2015 14:24:33
La base s'appel bien db_ecliss pour le test
Au niveau du fichier de conf j'ai bien ceci
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
listen_addresses = 'localhost' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost', '*' = all
# (change requires restart)
port = 5432 # (change requires restart)
max_connections = 100 # (change requires restart)
# Note: Increasing max_connections costs ~400 bytes of shared memory per
# connection slot, plus lock space (see max_locks_per_transaction).
#superuser_reserved_connections = 3 # (change requires restart)
unix_socket_directory = '/var/run/postgresql' # (change requires restart)
#unix_socket_group = '' # (change requires restart)
#unix_socket_permissions = 0777 # begin with 0 to use octal notation
# (change requires restart)
#bonjour = off # advertise server via Bonjour
# (change requires restart)
#bonjour_name = '' # defaults to the computer name
# (change requires restart)
J'ai passer listen_addresses = 'localhost' en listen_addresses = '*''
Et au niveau de netstat
netstat -natup | grep "post"
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 3031/postgres
tcp6 0 0 ::1:5432 :::* LISTEN 3031/postgres
udp6 0 0 ::1:36542 ::1:36542 ESTABLISHED 3031/postgres
Au niveau du pare-feu étant donnée que c'est un serveur virtuel tout est open
iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
#6 Re : Installation » FATAL: authentification par mot de passe ?chou?e pour l'utilisateur » 11/02/2015 13:36:20
D'accord, je viens de faire la modif dans le fichier pg_hba.conf,
Cependant avec la configuration de l'outil il me demande cela :
Je rentre donc les paramètres,
Voici le retour
Ce qui est étonnant c'est que je n'ai pas de log, concernant postgre pour l'authentification échoué
2015-02-11 12:29:03 CET LOG: a re?u une demande d'arr?t rapide
2015-02-11 12:29:03 CET LOG: annulation des transactions actives
2015-02-11 12:29:03 CET LOG: arr?t du processus autovacuum
2015-02-11 12:29:03 CET LOG: arr?t en cours
2015-02-11 12:29:03 CET LOG: le syst?me de base de donn?es est arr?t?
2015-02-11 12:29:04 CET LOG: le syst?me de bases de donn?es a ?t? arr?t? ? 2015-02-11 12:29:03 CET
2015-02-11 12:29:04 CET LOG: le syst?me de bases de donn?es est pr?t pour accepter les connexions
2015-02-11 12:29:04 CET LOG: lancement du processus autovacuum
2015-02-11 12:29:04 CET LOG: paquet de d?marrage incomplet
Je dirais qu'il me manque quelque chose pour qu'il y ai une liaison serveur web ==> postgresql ?
J'ai bien installer le php5-psql pourtant
Et concernant le fichier .pgpass si j'ai bien compris c'est un fichier que l'on met dans son home ? enfin le home de l'utilisateur postgres ?
#7 Re : Installation » FATAL: authentification par mot de passe ?chou?e pour l'utilisateur » 11/02/2015 13:06:26
Voici le contenu du fichier :
# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database superuser can access the database using some other method.
# Noninteractive access to all databases is required during automatic
# maintenance (custom daily cronjobs, replication, and similar tasks).
#
# Database administrative login by Unix domain socket
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres peer
#host replication postgres 127.0.0.1/32 md5
#host replication postgres ::1/128 md5
#8 Installation » FATAL: authentification par mot de passe ?chou?e pour l'utilisateur » 11/02/2015 12:43:16
- totof68
- Réponses : 12
Salut tout le monde,
Je ne sais pas si je suis dans la bonne section, mais je vous expose mon problème;
Je n'ai pas trop l'habitude de travailler avec postgresql, et dans le cadre de mon travail nous voulons mettre en place un outil qui s'appel Dynacase, je ne sais pas si vous connaissez ==> http://www.dynacase.org/
Enfin voila pour le context, j'ai donc mis en place posgresql,
netstat -natup | grep "post"
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 17482/postgres
tcp6 0 0 ::1:5432 :::* LISTEN 17482/postgres
udp6 0 0 ::1:43076 ::1:43076 ESTABLISHED 17482/postgres
Tout à l'air bon pour cette partie la.
Ensuite j'ai pris ces commandes pour crée une base, un user et mdp :
su postgres
psql
CREATE ROLE u_ecliss WITH LOGIN ENCRYPTED PASSWORD 'p_ecliss' SUPERUSER;
CREATE DATABASE db_ecliss OWNER u_ecliss;
\q
exit
Ensuite j'ai crée le fichier pg_service.conf
[s_ecliss]
host=127.0.0.1
port=5432
dbname=db_ecliss
user=u_ecliss
password=p_ecliss
Le soucis c'est que au niveau de l'inteferface php au niveau du service name cela n'a pas l'air de passer, de plus si j'essaie les commandes suivantes :
PGSERVICE=s_ecliss
psql
J'ai le résultat suivant :
psql: FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
Et au niveau des logs au cas ou
2015-02-11 11:29:09 CET LOG: a re?u une demande d'arr?t rapide
2015-02-11 11:29:09 CET LOG: annulation des transactions actives
2015-02-11 11:29:09 CET LOG: arr?t du processus autovacuum
2015-02-11 11:29:09 CET LOG: arr?t en cours
2015-02-11 11:29:09 CET LOG: le syst?me de base de donn?es est arr?t?
2015-02-11 11:29:10 CET LOG: le syst?me de bases de donn?es a ?t? arr?t? ? 2015-02-11 11:29:09 CET
2015-02-11 11:29:10 CET LOG: le syst?me de bases de donn?es est pr?t pour accepter les connexions
2015-02-11 11:29:10 CET LOG: lancement du processus autovacuum
2015-02-11 11:29:11 CET LOG: paquet de d?marrage incomplet
2015-02-11 11:29:44 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:29:44 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:30:31 CET LOG: a re?u SIGHUP, rechargement des fichiers de configuration
2015-02-11 11:30:33 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:30:33 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:31:31 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:31:31 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:32:13 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:32:13 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:32:44 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:32:44 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:41:32 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
2015-02-11 11:41:32 CET FATAL: authentification par mot de passe ?chou?e pour l'utilisateur << u_ecliss >>
EDIT :
Si j'utilise cette commande la, la connexion à la base de donnée se fait bien....
>psql db_ecliss -U u_ecliss -h localhost
Mot de passe pour l'utilisateur u_ecliss :
psql (9.1.15)
Connexion SSL (chiffrement : DHE-RSA-AES256-SHA, bits : 256)
Saisissez « help » pour l'aide.
db_ecliss=# exit
db_ecliss-# \q
Quelqu'un aurait une petite idée sur le sujet ?
Cordialement,
Totof
Pages : 1