This is a fairly high-level question which could end up going quite deep,
but below is a quick summary off the top of my head.

You can get a few advantages when running Cassandra in Kubernetes,
particularly:

   - Easy discovery and network connectivity with other services running on
   K8s
   - Reproducible, repeatable operations and deployments
   - A cloud-independent approach to container orchestration, that is
   supported by all major cloud providers.
   - Easy backups, deployments, scaling etc via statefulsets or an operator
   (see https://github.com/instaclustr/cassandra-operator).

There are also some rough edges with running Cassandra on Kubernetes:

   - Failure domain placement with statefulsets is still challenging (v1.12
   goes a long way to fixing this -
   
https://kubernetes.io/blog/2018/10/11/topology-aware-volume-provisioning-in-kubernetes/
   )
   - Getting resource constraints correct and working out scheduling in
   constrained environments can be maddening.
   - Only a few, small deployments (that I'm aware of) are running
   Cassandra in Kubernetes in production. So you will be breaking new ground
   and encounter problems that haven't been solved before.
   - The Cassandra examples in the official Kubernetes documentation is not
   something you want to take into production.

Cheers

Ben

On Thu, Oct 11, 2018 at 6:50 PM Goutham reddy <goutham.chiru...@gmail.com>
wrote:

> Hi,
> We are in the process of setting up Cassandra cluster with high
> availability. So the debate is installing Cassandra in Kubernetes cluster.
> Can someone  throw some light, what advantages can I get when created
> Cassandra cluster inside Kubernetes cluster. Any comments are highly
> appreciated:)
>
> Thanks and Regards,
> Goutham Reddy Aenugu.
> --
> Regards
> Goutham Reddy
>
-- 
Ben Bromhead
CTO | Instaclustr <https://www.instaclustr.com/>
+1 650 284 9692
Reliability at Scale
Cassandra, Spark, Elasticsearch on AWS, Azure, GCP and Softlayer

Reply via email to