Not a usual choice as well, but can be explained by the fact that pgBarman, a backup tool for PostgreSQL, was developed by the 2nd Quadrant team which was acquired by EDB.Īpart from architecture decisions, there are some things that I found quite refreshing: Instead, they use Postgres instance manager. Patroni is a de-facto standard in the PostgreSQL community to build highly available clusters. Here PostgreSQL cluster is deployed with standalone Pods which are fully controlled by the Operator. Normally, you would see StatefulSets used for stateful workloads in Kubernetes. The architecture of the Operator is quite interesting: FeaturesĬloudNative PG comes with a wide range of regular operational capabilities: backups, scaling, and upgrades. There is also a helm chart available that can simplify the installation even more. io/ documentation/ 1.17/ samples/ cluster- example. Kubectl apply - f https :// cloudnative- pg. Using quickstart, here is how to install the Operator: The Enterprise version has some additional features, for example, support for Red Hat OpenShift. It is Apache-licensed and fully open source, and there is an EDB Postgres operator, which is a fork based on CloudNative PG. This operator was maturing in EnterpriseDB (EDB) to be finally open-sourced recently. This is an antipattern but still follows the declarative form. In the case of PGO, backups, and restores are managed through annotations. Usually, Operators come with a separate Custom Resource Definition for backups and restores. This is very handy for CICD pipelines and various automations. Create users and databases during cluster initialization. With PGO, you can easily add extensions for your cluster and configure them during bootstrap. PostgreSQL extensions expand the capabilities of the database. The following features are quite interesting: No need to go through the regular day-two operations, like backups and scaling. PGO operator is used in production by various companies, comes with management capabilities, and allows users to fine-tune PostgreSQL clusters. First, you need to fork the repository with examples: link. I was not able to find which version is ready for production, but I will use a quickstart installation from the GitHub page, which installs 5.2.0. DeploymentĪccording to the documentation, the latest version of the operator is 5.2.0, but the latest tag in Github is 4.7.7. This means that you cannot use the Operator with these images in production without the contract with Crunchy Data. Their PostgreSQL Operator (PGO) is fully open source (Apache 2.0 license), but at the same time container images used by the operator are shipped under Crunchy Data Developer Program. They provide a wide range of services and software solutions for PG. Crunchy Data PGOĬrunchy Data is a company well-known in the PostgreSQL community. The summary and comparison table can be found in our documentation. In this blog post, we are going to compare these solutions and review the pros and cons of each of them. With its popularity growth and the rising trend of Kubernetes, it is not a surprise that there are multiple solutions to run PostgreSQL on K8s. Right now it is the second most popular relational open source database according to DB-engines. PostgreSQL’s initial release was in 1996 when cloud-native was not even a term.
0 Comments
Leave a Reply. |