2

I installed a postgresql database on Redhat 7.1 and I decided to move the database on an ISCSI device (LUN) inside a logical volume, mounted at starting of the machine (xfs formatted). The mounting point is /var/lib/pgsql

At the boot of the server, postgresql.service is in failed status.

In messages.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. 

When I'm logged on the server, if it try to start manually the database : systemctl start postgresql --> OK (and I don't lose any data, database is available)

I think it's a problem of order in the boot process : network service must be started, then iscsi, then lvm etc... So I tried to force dependencies on the /usr/lib/systemd/system/postgresql.service adding "After=lvm-pgscan.service iscsi.service" etc... but the result is the same :

failure in starting postgresql systemd: Starting Remote File Systems (Pre) systemd: Reached Remote File Systems (Pre) systemd: mounting /var/lib/pgsql systemd: starting PostgreSQL database server kernel sdb: unknown partition table postgresql-check-db-dir: "/var/lib/pgsql/data" is missing or empty kernel: xfs (dm-4): Mounting V4 Filesystem postgresql.service: control process exited, code=exited status=1 Failed to start PostgreSQL database server. Unit postgresql.service entered failed state sd 2:0:0:0: [sdb] attached SCSI disk starting LVM2 PV scan on device 8:16 kernel: xfs (dm-3): Ending clean mount systemd: Mounted /var/lib/pgsql Starting Remote File Systems Reached target Remote File Systems 

Any ideas?

1
  • First update your system. If that doesn't solve the problem, open a case with Red Hat. Commented Feb 18, 2016 at 16:04

2 Answers 2

1

To make sure PostgreSQL starts after iSCSI volume are mounted, do the following:

cat >/etc/systemd/system/postgresql.service <<EOF .include /lib/systemd/system/postgresql.service [Unit] After=remote-fs.target EOF 

This works with an arbitrary service (MongoDB, MySQL...) and any kind of remote access (NFS, Samba...).

0

I have solved it on my server (RHEL 7.2) by editing /usr/lib/systemd/system/postgresql-9.5.service and adding After=remote-fs.target

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.