error al iniciar en postgresql

error al iniciar en postgresql

Instalé una base de datos postgresql en Redhat 7.1 y decidí mover la base de datos en un dispositivo ISCSI (LUN) dentro de un volumen lógico, montado al inicio de la máquina (formato xfs). El punto de montaje es /var/lib/pgsql

En el inicio del servidor, postgresql.service está en estado fallido.

En mensajes.log:

systemd: mounting /var/lib/pgsql
 starting PostgreSQL database server
 kernel sdv: unknown partition table
 sd 2:0:0:0: [sdb] attached SCSI disk
 xfs (dm-4): Mounting V4 Filesystem
 postgresql-check-db-dir: "/var/lib/pgsql/data" is missing or empty
 postgresql.service: control process exited, code=exited status=1
 Failed to start PostgreSQL database server.

Cuando inicio sesión en el servidor, si intento iniciar manualmente la base de datos: systemctl start postgresql--> OK (y no pierdo ningún dato, la base de datos está disponible)

Creo que es un problema de orden en el proceso de arranque: se debe iniciar el servicio de red, luego iscsi, luego lvm, etc.

Así que intenté forzar dependencias en /usr/lib/systemd/system/postgresql.service agregando "After=lvm-pgscan.service iscsi.service", etc... pero no cambia nada.

Algunas ideas ?

Respuesta1

Según la cadena de comentarios, parece que la edición /usr/lib/systemd/system/postgresql.servicesolucionó After=local-fs.targetla situación. La pista para mí fue el mensaje:

postgresql-check-db-dir: "/var/lib/pgsql/data" falta o está vacío

lo que implicaba que postgres estaba intentando iniciarse antes de que /varse montara. Agregar la afterrestricción obliga a systemd a esperar hasta que los sistemas de archivos locales estén montados antes de iniciar postgres.

información relacionada