Implement JMX Provider to Execute Cassandra Repairs via REST Using Jolokia #770
Labels
enhancement
New feature or request
PoC/Agent
Tasks related to new generation of ecchronos as an agent
Story Description:
The goal of this user story is to implement a JMX provider that enables triggering Cassandra repair operations via REST using Jolokia. Jolokia serves as a bridge, allowing REST API calls to interact with JMX beans exposed by Cassandra. This feature will facilitate external management of Cassandra repairs without directly accessing JMX, instead utilizing REST calls for easier integration with existing REST-based systems.
In the current system, repairs are triggered and executed via direct JMX access, requiring more intricate setup and management. By introducing a JMX provider that utilizes Jolokia, repairs can be managed programmatically through standardized REST calls, simplifying the integration process and making it easier to automate repair tasks. The JMX provider should expose essential repair functionalities, including triggering, monitoring, and retrieving repair status.
The change should be implemented within the provider layer, specifically targeting a new class or set of classes that handle JMX operations through Jolokia.
Acceptance Criteria:
[Acceptance Criterion 1]: The JMX provider can initiate a repair on a specified Cassandra keyspace and table via a REST call using Jolokia.
[Acceptance Criterion 2]: The JMX provider can query the status of an ongoing repair operation, retrieving details such as completion percentage and error statuses, if available.
[Acceptance Criterion 3]: The system logs the REST calls and responses to ensure that repair operations are auditable and traceable.
[Acceptance Criterion 4]: The provider handles errors gracefully, returning meaningful error messages if a repair request fails or if Jolokia is unreachable.
[Acceptance Criterion 5]: Unit and integration tests are included to verify that the repair operations function correctly when initiated via Jolokia.
Definition of Done:
Notes:
Related with #652
The text was updated successfully, but these errors were encountered: