Skip to main content

HTTP server to check postgresql server status

Project description

HTTP daemon to check postgresql server status for haproxy

This repository implements a permanent HTTP daemon to monitor postgresql database state and to decide which server in configuration is active master.

Response from tool is used by haproxy to redirect traffic to writable postgres master server, to readonly slave servers and to detect unavailable postgres servers.

Configuration files

Configuration path is ~/.config/pgstatus.conf. Configuration file is required if you want to monitor a postgres server that is not localhost:5432 as user postgres and not using postgres as database to check.

See example configuration file in examples directory.

See example configuration for haproxy in examples/haproxy.conf.

Running the service

There is example systemd service unit available in examples/pgstatus-daemon.service, configured by default to run as postgres user (so normally no user and password needs to be configured for default postgres).

To install:

cp examples/pgstatus-daemon.service /etc/systemd/system/ systemctl daemon-reload systemctl enable pgstatus-daemon systemctl start pgstatus-daemon

Credits

The basic idea is based on website

https://severalnines.com/blog/postgresql-load-balancing-using-haproxy-keepalived

Instead of xinetd and shell script, this implements the check as a systemd controlled permanent daemon.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pgstatus-1.1.3.tar.gz (3.9 kB view details)

Uploaded Source

File details

Details for the file pgstatus-1.1.3.tar.gz.

File metadata

  • Download URL: pgstatus-1.1.3.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.30.0 CPython/3.7.2

File hashes

Hashes for pgstatus-1.1.3.tar.gz
Algorithm Hash digest
SHA256 7adb3c5ed4e7b3004755b4e4e5f7ab3e3cdfb39b523f450d827797f3a52004d4
MD5 64e1c311cba22a5c24297cbf1cd9e81a
BLAKE2b-256 095e641683b1526804645276cf23ec658ad19f0113558cbd9e1763c341dd08dd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page