|latest/stable||20||20||20 Sep 2022|
|latest/edge||32||32||17 Nov 2022|
juju deploy postgresql-k8s
Charm for Juju to deploy and manage PostgreSQL in a Kubernetes environment. Multiple units will provision a single master and remaining units as hot standby servers. Automatic failover will occur if a database goes down and there are enough remaining units for form a quorum, managed by repmgrd.
Provision a Juju environment and a k8s model on Juju 2.9-rc12 or later, per Juju documentation. Then to deploy 3 units (pods) using the default image, simply:
juju deploy -n3 postgresql-k8s
Client charms needing to connect with PostgreSQL should use the ops-lib-pgsql library to manage the relation.
Scale Out Usage
To horizontally scale, adding more read-only standbys:
juju add-unit postgresql-k8s
Note that this charm provides standard PostgreSQL, with a single read/write master node. Adding more nodes can only provide extra read-only capacity, and only to clients making use of the hot standby connection details (which will be load balanced over all available hot standby databases).
For more details, see here.