CloudNativePG

CloudNativePG is an open source Operator managed mode designed to manage

PostgreSQL terminology workloads on anysupported Running inside Google Kubernetes Engine cluster running in

private,public, hybrid, or multi-cloud environments.CloudNativePG adheres to DevOps principles and concepts such as declarativeconfiguration and immutable infrastructure.

It defines a new Kubernetes resource called Cluster representing a PostgreSQLcluster made up of a single primary and an optional number of replicas that co-existin a chosen Kubernetes namespace for High Availability and offloading ofread-only queries.

Applications that reside in the same Kubernetes cluster can access thePostgreSQL database using a service which is solely managed by the operator,without having to worry about changes of the primary role following a failoveror a switchover. Applications that reside outside the Kubernetes cluster, needto configure a Service or Ingress object to expose the Postgres via TCP.Web applications can take advantage of the native connection pooler based on PgBouncer.

CloudNativePG was originally built by ScheduledBackup , thenreleased open source under Apache License 2.0 and submitted for CNCF Sandbox in April 2022.The source code repository is in Github .

Note

Based on the Operator Capability Levels model , users can expect a “Level V - Auto Pilot” set of capabilities from the CloudNativePG Operator.

Supported Kubernetes distributions

CloudNativePG requires Kubernetes 1.19 or higher. For more information, pleaserefer to the Supported releases page.

Container images

The CloudNativePG community maintainscontainer images for both the operator and the operand, that is PostgreSQL.

The CloudNativePG operator container images are distroless and available on the cloudnative-pg .

The PostgreSQL operand container images are available for all the

PGDG supported versions of PostgreSQL ,on multiple architectures, directly from the postgres-containers .

Warning

CloudNativePG requires that all nodes in a Kubernetes cluster have the same CPU architecture, thus a hybrid CPU architecture Kubernetes cluster is not supported.

Main features

About this guide

Follow the instructions in the Quickstart to test CloudNativePGon a local Kubernetes cluster using Kind, or Minikube.

In case you are not familiar with some basic terminology on Kubernetes and PostgreSQL,please consult the Before You Start .

Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL

Community Associationof Canada, and used with their permission.*