paradedb / charts

ParadeDB Helm Chart, based on the official CloudNativePG Helm Charts
https://paradedb.github.io/charts/
GNU Affero General Public License v3.0
3 stars 3 forks source link

ParadeDB

Postgres for Search and Analytics

WebsiteDocsCommunityBlogChangelog


Publish Helm Chart Artifact Hub Docker Pulls License Slack URL X URL

ParadeDB Helm Chart

The ParadeDB Helm Chart is based on the official CloudNativePG Helm Chart. CloudNativePG is a Kubernetes operator that manages the full lifecycle of a highly available PostgreSQL database cluster with a primary/standby architecture using Postgres streaming (physical) replication.

Kubernetes, and specifically the CloudNativePG operator, is the recommended approach for deploying ParadeDB in production, with high availability. ParadeDB also provides a Docker image and prebuilt binaries for Debian, Ubuntu and Red Hat Enterprise Linux.

The ParadeDB Helm Chart supports Postgres 13+ and ships with Postgres 17 by default.

The chart is also available on Artifact Hub.

Usage

ParadeDB Bring-Your-Own-Cloud (BYOC)

The most reliable way to run ParadeDB in production is with ParadeDB BYOC, an end-to-end managed solution that runs in the customer’s cloud account. It deploys on managed Kubernetes services and uses the ParadeDB Helm Chart.

ParadeDB BYOC includes built-in integration with managed PostgreSQL services, such as AWS RDS, via logical replication. It also provides monitoring, logging and alerting through Prometheus and Grafana. The ParadeDB team manages the underlying infrastructure and lifecycle of the cluster.

You can read more about the optimal architecture for running ParadeDB in production here and you can contact sales here.

Self-Hosted

First, install Helm. The following steps assume you have a Kubernetes cluster running v1.25+. If you are testing locally, we recommend using Minikube.

Monitoring

The ParadeDB Helm chart supports monitoring via Prometheus and Grafana. To enable monitoring, you need to have the Prometheus CRDs installed before installing the CloudNativePG operator. The Promotheus CRDs can be found here.

Installing the CloudNativePG Operator

Skip this step if the CloudNativePG operator is already installed in your cluster. For advanced CloudNativePG configuration and monitoring, please refer to the CloudNativePG Cluster Chart documentation.

helm repo add cnpg https://cloudnative-pg.github.io/charts
helm upgrade --atomic --install cnpg \
--create-namespace \
--namespace cnpg-system \
cnpg/cloudnative-pg

Setting up a ParadeDB CNPG Cluster

Create a values.yaml and configure it to your requirements. Here is a basic example:

type: paradedb
mode: standalone

cluster:
  instances: 3
  storage:
    size: 256Mi

Then, launch the ParadeDB cluster.

helm repo add paradedb https://paradedb.github.io/charts
helm upgrade --atomic --install paradedb \
--namespace paradedb \
--create-namespace \
--values values.yaml \
paradedb/paradedb

If --values values.yaml is omitted, the default values will be used. For advanced ParadeDB configuration and monitoring, please refer to the ParadeDB Chart documentation.

Connecting to a ParadeDB CNPG Cluster

You can launch a Bash shell inside a specific pod via:

kubectl exec --stdin --tty <pod-name> -n paradedb -- bash

The primary is called paradedb-1. The replicas are called paradedb-2 onwards depending on the number of replicas you configured. You can connect to the ParadeDB database with psql via:

psql -d paradedb

Development

To test changes to the Chart on a local Minikube cluster, follow the instructions from Self Hosted replacing the helm upgrade step by the path to the directory of the modified Chart.yaml.

helm upgrade --atomic --install paradedb --namespace paradedb --create-namespace ./charts/paradedb

License

ParadeDB is licensed under the GNU Affero General Public License v3.0 and as commercial software. For commercial licensing, please contact us at sales@paradedb.com.