Details
-
Improvement
-
Status: Open
-
Normal
-
Resolution: Unresolved
-
None
-
None
-
Semantic
-
Normal
Description
This proposal is part of an effort to introduce bespoke Sidecar APIs to support key operational functionality currently managed through nodetool commands. Introducing these APIs offers several benefits:
- Strong Contract Definition: APIs provide a well-defined contract for both request and response structures, reducing errors in operational tooling by eliminating the need to parse command results.
- Error Handling: A clear response contract allows for meaningful error messages to be communicated to clients, without exposing internal implementation details.
- Input Validation: APIs can incorporate input validation to enhance security by protecting against command injection attacks.
- Version Compatibility: By exposing a standardized interface, APIs ensure compatibility across different Cassandra versions, through the sidecar's abstraction.
- Access Control: APIs enable fine-grained access control, leveraging permissions and roles associated with client identities for precise authorization.
This specific task introduces an endpoint that performs the node decommission operation on the corresponding Cassandra node. Since decommissioning is a long-running operation, this API will leverage the async job management framework tracked in CASSANDRASC-150.
Attachments
Issue Links
- links to