Scylla JMX proxy
The existing scylla-jmx code had reversed logic for the success of the repair: it reported to "nodetool repair" a failure when the repair was successful :-) Note that "nodetool repair" waits until a FINISHED notification, and then reports a failure if it previously got any SESSION_FAILED notification; So if repair was successful, all we need to do is to avoid sending a "SESSION_FAILED" message. But we don't need to send any additional "SESSION_SUCCESS" message to signal success. That message type is only used to report progress to the user (a "session" is part of the repair work, so seeing sessions completing shows progress), but because Scylla doesn't support this progress report yet, we can't send these notifications yet, and there's no point in sending one such message at the end - it's only confusing (especially when the text is the same as that of the FINISHED message). Signed-off-by: Nadav Har'El <nyh@cloudius-systems.com> |
||
---|---|---|
dist/redhat | ||
scripts | ||
src/main/java | ||
LICENSE.AGPL | ||
NOTICE | ||
pom.xml | ||
README.md | ||
SCYLLA-VERSION-GEN |
Urchin JMX Interface
This is the JMX interface for urchin.
Compile
To compile do:
mvn install
Run
The maven will create an uber-jar with all dependency under the target directory. You should run it with the remote jmx enable so the nodetool will be able to connect to it.
java -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7199 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar target/urchin-mbean-1.0.jar
Setting IP and Port
By default the the JMX would connect to a node on the localhost on port 10000.
The jmx API uses the system properties to set the IP address and Port. To change the ip address use the apiaddress property (e.g. -Dapiaddress=1.1.1.1) To change the port use the apiport (e.g. -Dapiport=10001)