Orange-OpenSource / casskop

This Kubernetes operator automates the Cassandra operations such as deploying a new rack aware cluster, adding/removing nodes, configuring the C* and JVM parameters, upgrading JVM and C* versions, and many more...
https://orange-opensource.github.io/casskop/
Apache License 2.0
183 stars 54 forks source link

Can operator be expanded to allow for ScyllaDB deployment? #109

Open iandebeer opened 5 years ago

iandebeer commented 5 years ago

ScyllaDB is a drop-in replacement for Cassandra. Does it require more on the operator side than just a few small changes?

cscetbon commented 5 years ago

Hey @iandebeer, we have a few parameters that are available in the docker image we built, and we use a Jolokia agent to interact with Cassandra nodes. As long as those variables and the Jolokia agent are available in the scyllaDB image it should not be a problem.

They are also working on a side car in Cassandra 4 which will led us to a replacement of our jolokia call. Could be a problem to support ScyllaDB in the futur. Or we'll need to implement different functions for the pod operations depending on the type of database used.

Take a look at https://github.com/Orange-OpenSource/cassandra-image/blob/master/files/run.sh.

I'm eager to see Cassandra official docker image being released to close that other project.

allamand commented 5 years ago

Hi @iandebeer,

We have changed our architectur and are now using InitContainers to bootstrap our Cassandra docker Image. I've tested it with Scylladb but we need to make use of dedicated bootstrap image i for scylla. This is the bootstrapImage we uses for Cassandra: https://github.com/Orange-OpenSource/cassandra-k8s-operator/tree/master/docker/bootstrap

If you like you can submit a PR for a ScyllaDB Bootstrap image :)