Skip to content

canonical/pgbouncer-k8s-operator

Repository files navigation

PgBouncer Kubernetes Operator

Description

The PgBouncer Kubernetes Operator deploys and operates the PgBouncer lightweight connection pooler for PostgreSQL.

Usage

As this charm is not yet published, you need to follow the build and deploy instructions from CONTRIBUTING.md.

Relations

  • backend-database:postgresql-client
  • database:postgresql-client
    • Provides a relation to client applications.
    • Importantly, this relation doesn't handle scaling the same way others do. All PgBouncer nodes are read/writes, and they expose the read-only nodes of the backend database through the database name f"{dbname}_readonly".

The expected data presented in a relation interface is provided in the docstring at the top of the source files for each relation.

Legacy

These relations will be deprecated in future. When deploying these relations, please ensure the backend relation is completed first. Using legacy relations with normal relations is not extensively tested.

OCI Images

This charm uses the canonical pgbouncer-container docker image, available here, stored in dockerhub.

License

The Charmed PgBouncer Operator is free software, distributed under the Apache Software License, version 2.0. See LICENSE for more information.

Security

Security issues in the Charmed PgBouncer Operator can be reported through LaunchPad. Please do not file GitHub issues about security issues.

Contributing

Please see the Juju SDK docs for guidelines on enhancements to this charm following best practice guidelines, and CONTRIBUTING.md for developer guidance.