Skip to content

percona/percona-postgresql-operator

Repository files navigation

Percona Operator for PostgreSQL

Percona Kubernetes Operators

License Docker Pulls Docker Image Size (tag) GitHub tag (latest by SemVer) GitHub go.mod Go version Go Report Card

Introduction

Percona Operator for PostgreSQL automates and simplifies deploying and managing open source PostgreSQL clusters on Kubernetes. It is based on Postgres Operator developed by Crunchy Data.

Whether you need to get a simple PostgreSQL cluster up and running, need to deploy a high availability, fault tolerant cluster in production, or are running your own database-as-a-service, the Operator provides the essential features you need to keep your clusters healthy:

  • PostgreSQL cluster provisioning
  • High availability and disaster recovery
  • Automated user management with password rotation
  • Automated updates
  • Support for both asynchronous and synchronous replication
  • Scheduled and manual backups
  • Integrated monitoring with Percona Monitoring and Management

While the Percona Operator is primarily managed through the command line, you can also use Percona Everest for a web-based user interface. This open-source tool provides a streamlined experience for provisioning and managing your databases, simplifying day-to-day tasks and reducing administrative overhead. Learn more about Percona Everest in the documentation or jump right in with the quickstart guide.

Architecture

Percona Operators are based on the Operator SDK and leverage Kubernetes primitives to follow best CNCF practices.

Learn more about architecture and design decisions.

Documentation

To learn more about the Operator, check the Percona Operator for PostgreSQL documentation.

Quickstart installation

Ready to try out the Operator? Check the Quickstart tutorial for easy-to follow steps.

Below is one of the ways to deploy the Operator using kubectl.

kubectl

  1. Deploy the operator from deploy/bundle.yaml
kubectl apply --server-side -f https://raw.githubusercontent.com/percona/percona-postgresql-operator/main/deploy/bundle.yaml
  1. Deploy the database cluster itself from deploy/cr.yaml
kubectl apply -f https://raw.githubusercontent.com/percona/percona-postgresql-operator/main/deploy/cr.yaml

Need help?

Commercial Support Community Support

Enterprise-grade assistance for your mission-critical PostgreSQL deployments with the Percona Operator for PostgreSQL. Get expert guidance for complex tasks like multi-cloud replication, database migration and building platforms.


Connect with our engineers and fellow users for general questions, troubleshooting, and sharing feedback and ideas.

Get Percona Support Visit our Forum

Contributing

Percona welcomes and encourages community contributions to help improve Percona Operator for PostgreSQL.

See the Contribution Guide on how you can contribute.

Roadmap

We have a public roadmap which can be found here. Please feel free to contribute and propose new features by following the roadmap guidelines.

Submitting Bug Reports

If you find a bug in Percona Docker Images or in one of the related projects, please submit a report to that project's JIRA issue tracker or create a GitHub issue in this repository.

Learn more about submitting bugs, new features ideas and improvements in the Contribution Guide.