/scylla-operator

Kubernetes operator for Scylla

Primary LanguageGoApache License 2.0Apache-2.0

Scylla Operator

Kubernetes Operator for Scylla (Beta version ⚠️)

Scylla is a close-to-the-hardware rewrite of Cassandra in C++. It features a shared nothing architecture that enables true linear scaling and major hardware optimizations that achieve ultra-low latencies and extreme throughput. It is a drop-in replacement for Cassandra and uses the same interfaces.

Quickstart

To quickly deploy a Scylla cluster, choose one of the following options:

  • Generic: Follow this guide for the general way to use the operator.
  • GKE: An advanced guide for deploying Scylla with the best performance settings on Google Kubernetes Engine.

Description

Scylla Operator is in Beta status.

The scylla-operator is a Kubernetes Operator for managing Scylla clusters. Currently it supports:

  • Deploying multi-zone clusters
  • Scaling up or adding new racks
  • Scaling down
  • Monitoring with Prometheus and Grafana

Future additions include:

Top-Performance Setup

Scylla performs the best when it has fast disks and direct access to the CPU. To deploy Scylla with maximum performance, follow the guide for your environment:

Bugs

If you find a bug or need help running scylla, you can reach out in the following ways:

  • #kubernetes channel on Slack.
  • File an issue describing the problem and how to reproduce.

Building the project

You can easily build Scylla Operator in your environment:

  • Open the Makefile and change the IMG environment variable to a repository you have access to.
  • Run make publish and wait for the image to be built and uploaded in your repo.

Contributing

We would love you to contribute to Scylla Operator, help make it even better and learn together! Use these resources to help you get started:

Acknowledgements

This project is based on the Apache Cassandra Operator, a community effort started by yanniszark of Arrikto, as part of the Rook project.