This is an automated email from the ASF dual-hosted git repository.
mck pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cassandra-website.git
The following commit(s) were added to refs/heads/master by this push:
new ecb519d Blog post about Cassandra & Kubernetes - SIG Update
ecb519d is described below
commit ecb519dc1cb84477d1be604a0d88628911807001
Author: Rahul Singh <[email protected]>
AuthorDate: Wed Aug 12 18:30:12 2020 -0400
Blog post about Cassandra & Kubernetes - SIG Update
patch by Rahul Singh; reviewed by Melissa Logan, John Sanda, Mick Semb
Wever, Christopher Bradford, Cyril Scetbon, Francisca Fanucchi, Jim Dickinson
for CASSANDRA-16046
---
...14-cassandra-and-kubernetes-sig-update.markdown | 67 +++++++++++++++++++++
.../.placeholder | 1 +
.../operator-capabilities.png | Bin 0 -> 48785 bytes
.../single-region-multi-datacenter.png | Bin 0 -> 156440 bytes
.../single-region-single-datacenter.png | Bin 0 -> 117544 bytes
5 files changed, 68 insertions(+)
diff --git a/src/_posts/2020-08-14-cassandra-and-kubernetes-sig-update.markdown
b/src/_posts/2020-08-14-cassandra-and-kubernetes-sig-update.markdown
new file mode 100644
index 0000000..992472b
--- /dev/null
+++ b/src/_posts/2020-08-14-cassandra-and-kubernetes-sig-update.markdown
@@ -0,0 +1,67 @@
+---
+layout: post
+title: "Cassandra and Kubernetes: SIG Update and Survey"
+date: 2020-08-14 05:00:00 +0200
+author: the Apache Cassandra Community
+categories: blog
+---
+
+Five operators for Apache Cassandra have been created that have made it easier
to run containerized Cassandra on Kubernetes. Recently the major contributors
to these operators came together to discuss the creation of a community-based
operator with the intent of making one that makes it easy to run C* on K8s. One
of the project’s organizational goals is that the end result will eventually
become part of the Apache Software Foundation or the Apache Cassandra project.
+
+The community created a special interest group (SIG) to set goals for what the
operator should do at different levels to find a path for creating a standard
community-based operator. The Operator Framework suggests five maturity levels
for [operator
capabilities](https://operatorframework.io/operator-capabilities/) starting
from basic installation to auto-pilot.
+
+
+
+(Source:
[OperatorFramework.io](https://operatorframework.io/operator-capabilities/))
+
+The five Cassandra Kubernetes operators all come from different backgrounds,
so the first major goal is to develop a common understanding as to what an
operator needs to do and at which level. This first step involves collaborating
on a Custom Resource Definition (CRD) that will set the syntax / schema which
will be used to create Cassandra clusters on Kubernetes. Once this is done, a
software extension can be developed in a variety of languages including Go,
Java, or using the Operator [...]
+
+We’re not starting from zero, as the creators of the five operators are
actively participating in the SIG. Hopefully much of the decided upon CRD will
have code fragments that can be leveraged from the other projects. The [major
operators out publicly
today](https://github.com/Anant/awesome-cassandra/blob/master/README.md#deploying-cassandra-on-kubernetes--kubernetized-cassandra)
are those by Sky UK, Orange Telecom, Instaclustr, Elassandra, and DataStax
(list sourced from the [awesome-ca [...]
+
+* [CassKop - Cassandra Kubernetes
Operator](https://github.com/Orange-OpenSource/cassandra-k8s-operator) - This
Kubernetes operator by Orange automates Cassandra operations such as deploying
a new rack aware cluster, adding/removing nodes, configuring the C and JVM
parameters, upgrading JVM and C versions. Written in Go. This one was also one
of the first ones out and is the only one that can support multiple Kubernetes
clusters using [Multi-CassKop](https://orange-opensource.github.io/c [...]
+* [Cassandra Operator](https://github.com/sky-uk/cassandra-operator) - A
Kubernetes operator by SkyUK that manages Cassandra clusters inside Kubernetes.
Well designed and organized. This was among the first operators to be released.
+* [Instaclustr - Kubernetes Operator for Cassandra
operator](https://github.com/instaclustr/cassandra-operator) - The Cassandra
operator by Instaclustr manages Cassandra clusters deployed to Kubernetes and
automates tasks related to operating an Cassandra cluster.
+* [Cass Operator](https://github.com/datastax/cass-operator) - DataStax's
Kubernetes Operator supports Apache Cassandra as well as DSE containers on
Kubernetes. Cassandra configuration is managed directly in the CRD, and
Cassandra nodes are managed via a RESTful management API.
+* [Elassandra Operator](https://github.com/strapdata/elassandra-operator) -
The Elassandra Kubernetes Operator automates the deployment and management of
Elassandra clusters deployed in multiple Kubernetes clusters.
+
+If you’re interested in catching up on what the SIG has been talking about,
you can watch the YouTube videos of the sessions and read up on the working
documents:
+
+<p>
+<iframe width="560" height="315"
src="https://www.youtube.com/embed/ODz9eEdspXE" frameborder="0"
allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen></iframe>
+</p>
+
+
+As with any Kubernetes operator, the goal is to create a robot which takes the
manual work of setting up complex configurations of containers in Kubernetes
easier. An operator can also be seen as a translator between the logical
concepts of the software and the concrete Kubernetes resources such as nodes,
pods, services. Combined with controllers, operators can abstract out
operations such that the human operators can focus on problems related to their
industry or domain. As mentioned a [...]
+
+When a platform needs Cassandra, it’s probably exhausted the other potential
datastores available because it needs high availability and fault tolerance, at
high speeds, around the world. Kubernetes is a technology that can match well
with Cassandra’s capabilities because it shares the features of being linearly
scalable, vendor neutral, and cloud agnostic. There is a healthy debate about
whether Cassandra belongs in Kubernetes — [and whether databases belong in
Kubernetes at all](https: [...]
+
+Most likely if someone is thinking about moving Cassandra workloads from
public cloud, on-premises VMs, or even on-premises bare metal servers to either
a public or private cloud hosted K8s, they’ll want to evaluate whether or not
the existing architecture could run and be performant.
+
+As part of the SIG, we’re also coming up with reference architectures on which
to test the operator. Here are some of the common and most basic reference
architectures that are likely candidates.
+
+* **Single Workload in Single Region**
+ - 1 DCs in 1 region, with 3 nodes (3 total)
+ - DC expands to 6 (6 total)
+ - DC contracts to 3 ( 3 total)
+
+
+
+* **Multi-Workload in Single Region**
+ - 2 DCs, both in the same region, with 3 nodes in each DC (6 total)
+ - Both DCs expand to 6 each (12 total)
+ - Both DCs contract to 3 each ( 6 total)
+ - Add a third DC in the same region with 3 nodes (9 nodes)
+ - Remove third DC
+
+
+
+* **Single Workload in Multi-Regions**
+ - 2 DCs, 1 in each region, with 3 nodes in each DC (6 total)
+ - Both DCs expand to 6 each (12 total)
+ - Both DCs contract to 3 each ( 6 total)
+ - Add a third DC in a 3rd region with 3 nodes (9 total)
+ - Remove third DC
+
+Although each organization is different, these scenarios or combinations of
these scenarios account for 80% of most pure Apache Cassandra use cases. The
SIG would love to know more about Cassandra users’ use cases for Kubernetes.
Please take [this short
survey](https://docs.google.com/forms/d/e/1FAIpQLScdoTCMxsDwRzt-U898fVmeksBlAf5fud2GVsGqC0T_IQz2Tg/viewform),
which will remain open through September 17, 2020.
+
+Join the [biweekly
meetings](https://cwiki.apache.org/confluence/display/CASSANDRA/Cassandra+Kubernetes+Operator+SIG)
to stay informed.
diff --git a/src/img/blog-post-cassandra-and-kubernetes-sig-update/.placeholder
b/src/img/blog-post-cassandra-and-kubernetes-sig-update/.placeholder
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/src/img/blog-post-cassandra-and-kubernetes-sig-update/.placeholder
@@ -0,0 +1 @@
+
diff --git
a/src/img/blog-post-cassandra-and-kubernetes-sig-update/operator-capabilities.png
b/src/img/blog-post-cassandra-and-kubernetes-sig-update/operator-capabilities.png
new file mode 100644
index 0000000..20e297f
Binary files /dev/null and
b/src/img/blog-post-cassandra-and-kubernetes-sig-update/operator-capabilities.png
differ
diff --git
a/src/img/blog-post-cassandra-and-kubernetes-sig-update/single-region-multi-datacenter.png
b/src/img/blog-post-cassandra-and-kubernetes-sig-update/single-region-multi-datacenter.png
new file mode 100644
index 0000000..b63caa3
Binary files /dev/null and
b/src/img/blog-post-cassandra-and-kubernetes-sig-update/single-region-multi-datacenter.png
differ
diff --git
a/src/img/blog-post-cassandra-and-kubernetes-sig-update/single-region-single-datacenter.png
b/src/img/blog-post-cassandra-and-kubernetes-sig-update/single-region-single-datacenter.png
new file mode 100644
index 0000000..d62e462
Binary files /dev/null and
b/src/img/blog-post-cassandra-and-kubernetes-sig-update/single-region-single-datacenter.png
differ
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]