IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration PostgreSQL Discussion :

archive_command en environnement docker [11]


Sujet :

Administration PostgreSQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut archive_command en environnement docker
    Aussitôt le achive_mode passé à on, nous avons les journaux (wal) qui déboulent dans $PGDATA/pg_wal
    Il convient donc de les copier ailleurs afin de les sauvegarder, et cela se fait habituellement grace au paramètre archive_command.

    En environnement dockerisé, cette façon de faire se corse un peu.

    Dans mon container docker, j'ai donc
    /var/lib/postgresql/data/pg_wal contenant mes wal

    J'ai externalisé mon PGDATA via mon fichier docker-compose, ainsi que le répertoire dans lequel je souhaite copier mes wal

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      volumes:
          - /DBData/iamictv:/var/lib/postgresql/data:Z
          - /DBData/wal:/var/lib/postgresql/wal:Z
    Si je passe le paramètre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    archive_command = 'cp %p /DBData/wal/MonInstance_%f'
    je vais logiquement me retrouver avec un message d'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    cp: cannot create regular file '/DBData/wal/inst1_000000010000000000000028': No such file or directory
    2020-05-06 10:44:16.983 CEST [29] LOG:  archive command failed with exit code 1
    Cela me semble assez logique car c'est Postgresql qui initie la commande cp depuis l'intérieur du container... et le container ne connais pas /DBData... C'et donc dans cette même logique que je modifie mon postgresql.conf de telle sorte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     archive_command = 'cp %p /var/lib/postgresql/wal/inst1_%f'
    ... et là, bizarre... le chemin semble être trouvé, mais avec un problème de permission
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    2020-05-06 10:46:04.538 CEST [30] DETAIL:  The failed archive command was: cp pg_wal/00000001000000000000002A /var/lib/postgresql/wal/inst_00000001000000000000002A
    cp: failed to access '/var/lib/postgresql/wal/iamictv_00000001000000000000002A': Permission denied
    si je me situe dans le container et que je joue l'ordre de copie, tout se passe pourtant bien (pas trop étonnant puisque je suis root)

    Pourtant, autant mon /DBData/wal semble avoir des droits suffisants
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    drw-rw-rw-.  2 systemd-bus-proxy root    46 May  6 10:39 wal
    autant il semble en être de même à l'intérieur du container
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    [root@postgresql-t01 inst1]# docker exec -it inst1 bash
    root@2cbfa089fb65:/# ls -l /var/lib/postgresql/
    total 4
    drwx------. 19 postgres root 4096 May  6 10:57 data
    drw-rw-rw-.  2 postgres root   46 May  6 10:39 wal
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut
    Trouvé !
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/02/2019, 15h14
  2. Réponses: 1
    Dernier message: 29/09/2017, 20h10
  3. Problème d'environnement de travail Laravel / Docker
    Par smvezoo dans le forum Mac OS X
    Réponses: 1
    Dernier message: 28/08/2017, 21h21
  4. Environnement de production pour DOCKER
    Par frantzsond dans le forum Docker
    Réponses: 2
    Dernier message: 18/05/2015, 15h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo