Skip to main content
helm chart · cockroachdb

CockroachDB

Helm chart for deploying cockroachdb datastore

Latest version
v0.0.6
Chart type
Data source
Requires
Helm 3+

Install

Add the zop.dev chart repository, then install cockroachdb into your cluster.

helm repo add zopdev https://helm.zop.dev
helm repo update
helm install my-cockroachdb zopdev/cockroachdb --version v0.0.6

The CockroachDB Helm chart provides an easy way to deploy CockroachDB, a distributed SQL database built on a transactional and strongly-consistent key-value store. This chart allows you to manage CockroachDB instances on Kubernetes with customizable resource allocation, persistence, and scaling options.


Prerequisites

  • Kubernetes 1.19+
  • Helm 3+

Add Helm Repository

Before deploying the CockroachDB chart, add the Helm repository to your local setup:

Terminal window
helm repo add zopdev https://helm.zop.dev
helm repo update

For more details, refer to the Helm Repository Documentation.


Install Helm Chart

To install the CockroachDB Helm chart, use the following command:

Terminal window
helm install [RELEASE_NAME] zopdev/cockroachdb

Replace [RELEASE_NAME] with your desired release name. For example:

Terminal window
helm install my-cockroachdb zopdev/cockroachdb

To customize configurations, provide a values.yaml file or override values via the command line.

See Helm Install Documentation for more information.


Uninstall Helm Chart

To remove the CockroachDB deployment and all associated Kubernetes resources, use the following command:

Terminal window
helm uninstall [RELEASE_NAME]

For example:

Terminal window
helm uninstall my-cockroachdb

See Helm Uninstall Documentation for additional details.


Configuration

The CockroachDB Helm chart includes several configuration options to tailor the deployment to your needs. Below is a summary of the key configurations:

InputTypeDescriptionDefault
imagestringDocker image and tag for the Cassandra container.cockroachdb/cockroach:v25.1.2
resources.requests.memorystringMinimum memory resources required by the CockroachDB container."512Mi"
resources.requests.cpustringMinimum CPU resources required by the CockroachDB container."100m"
resources.limits.memorystringMaximum memory resources the CockroachDB container can use."512Mi"
resources.limits.cpustringMaximum CPU resources the CockroachDB container can use."100m"
diskSizestringSize of the persistent volume for storing CockroachDB data."10Gi"

You can override these values in a values.yaml file or via the command line during installation.


Example values.yaml File

Terminal window
resources:
limits:
cpu: 100m
memory: 512Mi
requests:
cpu: 100m
memory: 512Mi
diskSize : 10Gi
version: v25.1.2

To use this configuration, save it to a values.yaml file and apply it during installation:

Terminal window
helm install my-cockroachdb zopdev/cockroachdb -f values.yaml

Features

  • Distributed SQL Database: Deploy a scalable, distributed SQL database with strong consistency guarantees.
  • Persistent Storage: Keep CockroachDB data intact across pod restarts with configurable persistent volumes.
  • Customizable Resource Allocation: Tailor CPU and memory resources to match workload requirements.
  • Version Control: Specify the CockroachDB version to deploy.
  • Multi-Database Support: Configure multiple database services through the services configuration.
  • Easy Deployment: Simplified Helm chart for rapid deployment of CockroachDB in Kubernetes environments.

Pod Scheduling

nodeSelector, tolerations and affinity are passed straight through to the pod spec. All three are empty by default and render nothing, so leaving them unset changes nothing for an existing release.

They also apply to the cluster-init Job. A Job that could not tolerate the pool while the StatefulSet could would leave the cluster uninitialised, with the release still reporting deployed.

Together they place the workload on a dedicated node pool — the nodeSelector picks the pool, the toleration gets past its taint:

Terminal window
nodeSelector:
workload: stateful
tolerations:
- key: workload
operator: Equal
value: stateful
effect: NoSchedule

affinity takes a full Affinity object. Note that setting it replaces the chart’s default soft pod-anti-affinity (which spreads replicas across nodes) rather than merging with it — restate the anti-affinity alongside your own rules if you still want it.


Contributing

We welcome contributions to improve this Helm chart. Please refer to the CONTRIBUTING.md file for contribution guidelines.


Code of Conduct

To maintain a healthy and collaborative community, please adhere to our Code of Conduct.


License

This project is licensed under the LICENSE. Please review it for terms of use.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

472 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

472 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·