Illustration Image

Cassandra.Link

The best knowledge base on Apache Cassandra®

Helping platform leaders, architects, engineers, and operators build scalable real time data platforms.

7/22/2019

Reading time:1 min

sky-uk/cassandra-operator

by John Doe

The Cassandra Operator is a Kubernetes operator that manages Cassandra clusters inside Kubernetes.The project is alpha status and can be used in development environments.It is not yet recommended for use in production environments.Main featuresrack awarenessscaling out (more racks, more pods per rack)scheduled backups with retention policyworks with official Cassandra Docker imagesdeployable per namespace with RBAC permissions limited to itdeployable cluster-widecustomisable Cassandra config (cassandra.yaml, jvm.options, extra libs)customisable liveness / readiness probesautomated rolling update of Cassandra cluster definition changescluster and node level metricsa comprehensive e2e test suiteHow to use it?Instructions on how to deploy the Cassandra Operator and provision Cassandra clusters can be found on the WIKIProject structureThis project is composed of several sub-modules that are either part of the Cassandra Operator or used by it:cassandra-bootstrapper: a component responsible for configuring the Cassandra node before it can be startedcassandra-operator: the Kubernetes operator that manages the Cassandra clusters lifecycle inside Kubernetescassandra-snapshot: a component responsible for taking and deleting snapshots given a schedule and retention policyfake-cassandra-docker: a fake Cassandra image used by the cassandra-operator and cassandra-snapshot to speed it up end-to-end testingtest-kubernetes-cluster: a Kubernetes Docker-in-Docker cluster used by the cassandra-operator and cassandra-snapshot to facilitate end-to-end testingDesignThe Cassandra Operator and the components it uses are described here: Cassandra Operator DesignSupported versionsWe test the Cassandra Operator against the following Kubernetes / Cassandra versions.Other Kubernetes versions are likely to work, but we do not actively test against them.Cassandra OperatorKubernetesCassandra0.70.1-alpha1.103.11Questions or Problems?If you have a general question about this project, please create an issue for it. The issue title should be thequestion itself, with any follow-up information in a comment. Add the "question" tag to the issue.If you think you have found a bug in this project, please create an issue for it. Use the issue title to summarisethe problems, and supply full steps to reproduce in a comment. Add the "bug" tag to the issue.ContributionsSee CONTRIBUTING.md

Illustration Image

The Cassandra Operator is a Kubernetes operator that manages Cassandra clusters inside Kubernetes.

The project is alpha status and can be used in development environments. It is not yet recommended for use in production environments.

Main features

  • rack awareness
  • scaling out (more racks, more pods per rack)
  • scheduled backups with retention policy
  • works with official Cassandra Docker images
  • deployable per namespace with RBAC permissions limited to it
  • deployable cluster-wide
  • customisable Cassandra config (cassandra.yaml, jvm.options, extra libs)
  • customisable liveness / readiness probes
  • automated rolling update of Cassandra cluster definition changes
  • cluster and node level metrics
  • a comprehensive e2e test suite

How to use it?

Instructions on how to deploy the Cassandra Operator and provision Cassandra clusters can be found on the WIKI

Project structure

This project is composed of several sub-modules that are either part of the Cassandra Operator or used by it:

Design

The Cassandra Operator and the components it uses are described here: Cassandra Operator Design

Supported versions

We test the Cassandra Operator against the following Kubernetes / Cassandra versions.

Other Kubernetes versions are likely to work, but we do not actively test against them.

Cassandra Operator Kubernetes Cassandra
0.70.1-alpha 1.10 3.11

Questions or Problems?

  • If you have a general question about this project, please create an issue for it. The issue title should be the question itself, with any follow-up information in a comment. Add the "question" tag to the issue.

  • If you think you have found a bug in this project, please create an issue for it. Use the issue title to summarise the problems, and supply full steps to reproduce in a comment. Add the "bug" tag to the issue.

Contributions

See CONTRIBUTING.md

Related Articles

migration
cassandra
kubernetes

How to Migrate Your Cassandra Database to Kubernetes with Zero Downtime

DataStax

11/15/2023

cassandra
kubernetes

Checkout Planet Cassandra

Claim Your Free Planet Cassandra Contributor T-shirt!

Make your contribution and score a FREE Planet Cassandra Contributor T-Shirt! 
We value our incredible Cassandra community, and we want to express our gratitude by sending an exclusive Planet Cassandra Contributor T-Shirt you can wear with pride.

Join Our Newsletter!

Sign up below to receive email updates and see what's going on with our company

Explore Related Topics

AllKafkaSparkScyllaSStableKubernetesApiGithubGraphQl

Explore Further

cassandra