agsandrew - Fotolia
An increasingly common deployment model for databases is a cloud-native approach, using the open source Kubernetes container orchestration platform. Deploying to Kubernetes, however, can be complicated, and in the coronavirus pandemic environment, with strained remote resources, that challenge has only grown.
On Tuesday, database vendor DataStax, based in Santa Clara, Calif., released a new open source Kubernetes Operator to help build a broader community effort for easing Cassandra deployment on Kubernetes.
A Kubernetes Operator is a manifest that automates deployment of an application or service into a Kubernetes cluster. Multiple vendors have built their own operators for Kubernetes, including Instaclustr.
While DataStax and Instaclustr clearly have overlapping offerings, their focus is different, said Jason Bloomberg, president at analyst and advisory firm Intellyx.
"DataStax's sweet spot is hybrid IT and multi-cloud scenarios, while Instaclustr focuses on supporting a range of open source data infrastructure products in public cloud and multi-cloud environments," Bloomberg said.
Bloomberg said he doesn't see a direct link between the coronavirus pandemic and demand for a Cassandra operator, though there is an indirect one.
Jason BloombergPresident, Intellyx
"We do believe that IT generally is the backbone of the coronavirus economy -- the part of today's enterprises that people depend on during these turbulent times," Bloomberg said. "Resilient, scalable infrastructure is a mission-critical part of this backbone, including Cassandra support in Kubernetes."
DataStax growing COVID-19 support efforts
The notion that IT infrastructure and Apache Cassandra in particular is critical during the COVID-19 crisis is something that DataStax is also emphasizing.
DataStax on March24 announced its "Keep Calm and Cassandra On" campaign, which makes site reliability engineers (SREs) free to Cassandra users who have questions.
"Data infrastructures are under tremendous pressure because suddenly, whatever you could have done in person, you have to do online," said Sam Ramji, chief strategy officer at DataStax.
Having an SRE available for users is helpful, along with the new Kubernetes Operator and management API that DataStax is also making available as open source, Ramji said.
"The Management API sidecar and Kubernetes Operators are going to make Cassandra a heck of a lot easier to operate, because right now with that, it's a lot of manual adjustments and a lot of expertise is required," he said.
Goal is Kubernetes Operator landscape consolidation
From a competitive perspective, Ramji said he sees as many as eight different Kubernetes Operators for Cassandra that are available as multiple vendors are trying to make the database work better in cloud native deployments.
But Ramji said all the other Operators for Cassandra are configured for specific vendor deployments. In contrast, he argued that the DataStax effort is an attempt to create a generalized open source approach that will work for a broad array of applications and Kubernetes deployments.
Ramji said he'd like to see an open source community collaboration around the Cassandra Operator so that a year from now, if a user goes to the Cassandra code repository and looks for an operator, there will be an obvious choice.
How the Management API Sidecar improve Cassandra management
On March 30, the day before the release of the Kubernetes Operator for Cassandra, DataStax open sourced a new management API sidecar.
Cassandra is typically managed via keyboard at the command line with Java Management Extensions (JMX). The new Management API takes a more modern approach enabling an extensible interface that developers can connect to for management, said Patrick McFadin, vice president of developer relations at DataStax.
"Technically speaking, a node is a running JVM [Java virtual machine] process and the sidecar is established next to that running node," McFadin said.
McFadin added that the way Cassandra works is that each node is independent and gets its own REST API for operations on that node, but it can also invoke cluster-wide operations.
The Management API complements the Kubernetes Operator to make it easier for administrators to deploy and manage Cassandra databases.
"Why the management API is really critical is because just by saying to the operator, 'Go deploy my cluster,' there's still a lot of nuance that needs to be addressed," McFadin said. "Hopefully, with the Management API, we can get into that really ubiquitous, just a few keystrokes or click of a button and you're off and running approach."