postgres-operator VS cloudnative-pg

Compare postgres-operator vs cloudnative-pg and see what are their differences.

cloudnative-pg

CloudNativePG is a comprehensive platform designed to seamlessly manage PostgreSQL databases within Kubernetes environments, covering the entire operational lifecycle from initial deployment to ongoing maintenance (by cloudnative-pg)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
postgres-operator cloudnative-pg
36 10
3,961 3,342
2.7% 12.9%
8.6 9.8
4 days ago 2 days ago
Go Go
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

postgres-operator

Posts with mentions or reviews of postgres-operator. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-22.

cloudnative-pg

Posts with mentions or reviews of cloudnative-pg. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-02.
  • Homelab: Running Postgres on Kubernetes
    2 projects | news.ycombinator.com | 2 Jan 2024
    My holiday project was doing another pass at my Homelab Kubernetes cluster, part of which involved switching to a proper operator to manage Postgres. Coincidentally, I setup cloudnative-pg (https://github.com/cloudnative-pg/cloudnative-pg) yesterday.
  • PostgreSQL 16 Bi-Directional Logical Replication
    5 projects | news.ycombinator.com | 18 Dec 2023
    https://github.com/cloudnative-pg/cloudnative-pg/issues/13

    /? logical replication:

    https://www.google.com/search?q=logical+replication

    pgadmin docs > Publication Dialog; logical replication: https://www.pgadmin.org/docs/pgadmin4/development/publicatio...

    https://github.com/dalibo/pg_activity#faq ; pip install `pg_activity[psychopg]` :

    > FAQ: I can't see my queries only TPS is shown

    Only the TPS

    (How) Do any ~pg_top tools delineate logical replication activity?

    pgcenter > PostgreSQL statistics [virtual tables] (and also /proc)

  • Deploying Postgres on Kubernetes in production
    3 projects | /r/PostgreSQL | 19 Aug 2023
  • Kubernetes postgres backups
    4 projects | /r/kubernetes | 20 May 2023
    We already had backup and recovery using object storage, but we are working to support VolumeSnapshots taking care to properly shut down the instance first! This awesome PR is laying the foundation for it, it's adding a subcommand to our kubectl plugin to manually perform a backup using VolumeSnapshots and adding support for restoring a Cluster from it, next step will be adding it to the ScheduledBackup/Backup resources too!
  • Anyone using cloudnativePG operator knows if it's possible to save backups to a local dir or NFS?
    1 project | /r/kubernetes | 16 May 2023
    I'll ask in their slack channel later. I've also opened a discussion regarding this on github if you are interesed. https://github.com/cloudnative-pg/cloudnative-pg/discussions/2030
  • What are you using to run Postgres?
    3 projects | /r/kubernetes | 6 May 2023
    This has a bunch of side-effects that break usual expectations around scheduling. For instance, cluster scale-down (for maintenance etc.) is blocked unless a specific taint has been added to each database pod. In addition, if the underlying node does fail, your cluster will be stuck in fail-over state until you manually delete the underlying pods. I think there are definitely other gotchas around this decision to use a custom controller but I have only tested this on GKE.
  • Can you create a Postgres Deployment with multiple replicas consuming to the same PV?
    3 projects | /r/devops | 28 Nov 2022
    Another option would be https://github.com/cloudnative-pg/cloudnative-pg I got to see this talk at Kubecon last month that might be of use to you too -> https://www.youtube.com/watch?v=99uSJXkKpeI That talk is run in part by EDB, who are the company behind CloudNativePG, they are talking about their commercial offering, but the principle is the same.
  • How do people read CRDs?
    5 projects | /r/kubernetes | 17 Oct 2022
    Following another post on this sub, I was checking out the Github project and landed on this 2864 lined CRD https://github.com/cloudnative-pg/cloudnative-pg/blob/main/config/crd/bases/postgresql.cnpg.io_clusters.yaml. How are sane people reading these files?
  • Managing PostgreSQL databases as K8s resources
    3 projects | /r/kubernetes | 17 Oct 2022
    **NOTE**: I am a maintainer of CloudNativePG.
  • Pgo: The Postgres operator from crunchy data
    7 projects | news.ycombinator.com | 26 Jun 2022

What are some alternatives?

When comparing postgres-operator and cloudnative-pg you can also consider the following projects:

kubegres - Kubegres is a Kubernetes operator allowing to deploy one or many clusters of PostgreSql instances and manage databases replication, failover and backup.

postgres-operator - Production PostgreSQL for Kubernetes, from high availability Postgres clusters to full-scale database-as-a-service.

postgres - 🐘 Run PostgreSQL in Kubernetes

helm-charts - A curated set of Helm charts brought to you by codecentric

bank-vaults - A Vault swiss-army knife: A CLI tool to init, unseal and configure Vault (auth methods, secret engines).

percona-postgresql-operator - Percona Operator for PostgreSQL

postgres-operator - Postgres operator creates and manages PostgreSQL clusters running in Kubernetes

pgBackRest - Reliable PostgreSQL Backup & Restore

postgres - Unmodified Postgres with some useful plugins

crd-to-sample-yaml - Generate a sample YAML file from a CRD