-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Description
CloudNativePG offers a standard plugin interface called CNPG-I, which enables the extension of the operator with custom functionality.
The objective of this project is to design and implement an open-source CNPG-I plugin that performs logical backups of PostgreSQL databases within a Cluster using pg_dump. The resulting backup artifacts will be stored in a tier-1 persistent volume.
The plugin should support both on-demand and scheduled logical backups. Additional key features to be addressed include:
- Compression and optional encryption of backups.
- Asynchronous offload of logical backups to an external object store (e.g., S3).
- Retention policies for both tier-1 and object storage.
- Restore support via
pg_restoreon an existing cluster.
The design must rigorously account for the architecture of CNPG, Kubernetes best practices, and operator lifecycle management. The outcome must align with CloudNativePG’s standards for production readiness, observability, and automation.
Expected Outcome
-A detailed design discussion documented in an upstream GitHub issue in the CloudNativePG repository, involving mentors, maintainers, and community contributors.
- A new GitHub project under the
cloudnative-pgorganization dedicated to this plugin. - A fully functional CNPG-I plugin for logical backups, including:
- Kubernetes Custom Resource Definitions (CRDs) for user interaction and control.
- Comprehensive documentation, including usage and integration guidance.
- Automated tests integrated into the CloudNativePG CI/CD pipelines.
Recommended Skills
- Go programming (operator development)
- Kubernetes and CRDs (Custom Resource Definitions)
- Git and GitHub workflows
- CloudNativePG
- Familiarity with PostgreSQL, SQL syntax, and
pg_dump/pg_restore
Metadata
Metadata
Assignees
Labels
Type
Projects
Status