Hello!
As discussed on the contributors call a couple weeks back[1], I'd like to
announce the open sourcing of a Management API Sidecar project for Apache
Cassandra that some of us have been using at Datastax[2]. It is separate
from the existing C* sidecar subproject right now as we needed specific
functionality to support an operator that we're actively open-sourcing as
well. The intent is to work on incorporating this with the official C*
sidecar project[3].

I'll cover the core similarities/differences I see below:

Similarities:
  * Simple REST API for operations
  * Healthchecks
  * Lifecycle management
  * Basic configuration management
Differences:
* Local access only.
  - Each sidecar process is responsible for the local C* instance
* CQL communication only.
  - Communication between Management API and C* is via CQL only
  - A simple CQL -> method mechanism is added to C* resulting in the
ability to execute statements like: "CALL NodeOps.compact('keyspace');"
* Secure by default.
  - The Management API talks to C* via a local unix socket.
  - The Management API has its own local unix socket so local tools can
communicate securely.
  - Optional Mutual TLS support for secure services
  - Disables default cassandra/cassandra superuser
* No configuration file
  - Keeps deployments simple
* Hooks into Existing C* releases by utilizing a new java agent.

I've opened an EPIC[4] to discuss details of this work.  Sending a note
here so people are aware; I know everyone is heads down on the C* 4.0 scope
right now.

[1]:
https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-1+Online+meeting+2020-03-10
[2]: http://github.com/datastax/management-api-for-apache-cassandra
[3]: https://github.com/apache/cassandra-sidecar
[4]: https://issues.apache.org/jira/browse/CASSANDRASC-13

Reply via email to