Installation
To run PGHoard you need to install it, and configure PostgreSQL according
to the modes of backup and archiving you chose.
This section only describes how to install it using a package manager. See Building for other installation methods.
Installation from your distribution package manager
RHEL
FIXME: the RPM package seems to be available on yum.postgresql.org. Write a proper documentation for that.
Debian
FIXME: can the package be included in apt.postgresql.org ? doesn’t seem to be the case for now.
Installation from pip
You can also install it using pip:
pip install pghoard
FIXME: version of pghoard on pypi isn’t up to date.
PostgreSQL Configuration
PostgreSQL should be configured to allow replication connections, and have a
high enough wal_level.
wal_level
wal_level should be set to at least replica (or archive for
PostgreSQL versions prior to 9.6).
Note
Changing wal_level requires restarting PostgreSQL.
Replication connections
If you use the one of the non-local basebackup strategies (basic or
pipe), you will need to allow pg_basebackup to connect using a
replication connection.
Additionally, if you use a WAL-streaming archiving mode (pg_receivexlog or
walreceiver) you will need another replication connection for those.
The parameter max_wal_senders must then be setup accordingly to allow for
at least that number of connections. You should of course take into account the
other replication connections that you may need, for one or several replicas.
Example:
max_wal_senders = 4
Note
Changing max_wal_senders requires restrating PostgreSQL
You also need a PostgreSQL user account with the REPLICATION attribute,
using psql:
-- create the user
CREATE USER pghoard REPLICATION;
-- Setup a password for the pghoard user
\password pghoard
This user will need to be allowed to connect. For this you will need to edit
the pg_hba.conf file on your PostgreSQL cluster.
For example:
# TYPE DATABASE USER ADDRESS METHOD
host replication pghoard 127.0.0.1/32 md5
Note
See PostgreSQL documentation for more information
After editing, please reload the configuration with either:
SELECT pg_reload_conf();
or by using your distribution service manager (ex: systemctl reload
postgresql)
Now you can move on to Configuration for how to setup PGHoard.: