Skip to main content

Customizable install with Helm

This Helm chart installs CassKop to create/configure/manage Cassandra clusters in a Kubernetes Namespace. It will use a Custom Ressource Definition(CRD): cassandraclusters.db.orange.com which implements a CassandraCluster object in Kubernetes.

Introduction

Configuration

The following tables lists the configurable parameters of the Cassandra Operator Helm chart and their default values.

ParameterDescriptionDefault
image.repositoryImageghcr.io/cscetbon/casskop
image.tagImage tagv2.0.1-release
image.pullPolicyImage pull policyAlways
image.imagePullSecrets.enabledEnable the use of secret for docker imagefalse
image.imagePullSecrets.nameName of the secret to connect to docker registry-
createCustomResourceIf true, create & deploy the CRDtrue
rbacEnableIf true, create & use RBAC resourcestrue
readinessProbe.timeouts.initialDelaySecondsSpecifies timeout before first probe attempt4
readinessProbe.timeouts.periodSecondsSpecifies probe interval10
readinessProbe.timeouts.failureThresholdWhen a probe fails, after time specified in this field Pod will be marked as Undready1
resourcesPod resource requests & limits{requests: {cpu: 10m, memory: 50Mi}, limits: {cpu: 1,memory: 512Mi}}
metricServicedeploy service for metricsfalse
debug.enabledactivate DEBUG log level and enable shareProcessNamespace (allowing ephemeral container usage)false

Specify each parameter using the --set key=value[,key=value] argument to helm install.

Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,

helm install casskop oci://ghcr.io/cscetbon/casskop-helm -f values.yaml

Installing the Chart

helm install --dry-run \
--debug.enabled oci://ghcr.io/cscetbon/casskop-helm \
--set debug.enabled=true \
--name casskop
helm install casskop oci://ghcr.io/cscetbon/casskop-helm

the -replace flag allow you to reuse a charts release name

Listing deployed charts

helm list

Get status for the helm deployment

helm status casskop

Install another version of the operator

To install another version of the operator use:

helm install --name=casskop --namespace=cassandra --set operator.image.tag=x.y.z oci://ghcr.io/cscetbon/casskop-helm`

where x.y.z is the version you want.

Uninstaling the Charts

If you want to delete the operator from your Kubernetes cluster, the operator deployment should be deleted.

helm uninstall casskop

The command removes all the Kubernetes components associated with the chart and deletes the helm release.

The CRDs created by the chart are not removed by default and should be manually cleaned up (if required)

Manually delete the CRDs:

kubectl delete crd cassandraclusters.db.orange.com
kubectl delete crd cassandrabackups.db.orange.com
kubectl delete crd cassandrarestores.db.orange.com
warning

If you delete the CRDs then it will delete ALL Clusters that has been created using these CRDs!!! Please never delete CRDs without very very good care

Troubleshooting

Install of the CRD

By default, the chart will install the Casskop CRDs if there are not yet installed. If you want to upgrade or downgrade to another charts version you will need to delete the CRDs BEFORE installing the new chart. If you don't want to install CRDs with the chart using Helm, you can skip this step by adding --skip-crds as described in Helm 3 official documentation.

helm install casskop oci://ghcr.io/cscetbon/casskop-helm --skip-crds