CloudNativePG: A New Open-Source Kubernetes Operator for Postgres
enterprisedb.com
enterprisedb.com
Thanks for sharing the news!
The project is hosted on github.com/cloudnative-pg/cloudnative-pg and it is distributed under Apache License 2.0.
It manages PostgreSQL primary/standby architecture clusters, providing self-healing, high availability through automated failover, continuous backup, point-in-time recovery, native Prometheus exporter, JSON standard output logging, rolling updates, and so on.
It relies on the Kubernetes API server to keep the status of the cluster, detect issues/changes, and react.
It is production ready, originally created by EDB, which is one of the major contributors to the open source PostgreSQL project.
Disclaimer: I'm one of the maintainers.
However, what is important here though is that this is the first operator for Postgres whose IP is now owned by a vendor neutral and openly governed community - or at least aims to be based on the public GOVERNANCE policies. We look upon the CNCF for principles and values.
This is our commitment.
That’s probably something the CNCF community should define.
I agree this is something we could somehow work together as a standard kind of spec, but probably we are still at an early stage of the process. My 2 cents.
From a Postgres standpoint, IMO, it is also important the concept of cluster - as that's what applications connect too - the operator hides the underlying complexity of managing the single instances. And .. also important monitoring sets of clusters from an infrastructure management PoV.
I am just wondering if CNCF could provide signals that could help end users pick the right operator among the many out there. They could start with the projects they have in their landscape…
Operators are there to help in both cases, and this is the goal of our CloudNativePG operator.
IMO CNCF represents an opportunity for vendors of the same database engine to converge in a healthy community and provide the best operator for their platform. This is probably the first stage.
The second stage could be to study those operators (of different engines, like Postgres, MySQL, ...) and generalize commonalities in a sort of standard spec. Just an idea. Is this in line with what you are thinking?
Thanks!