Scylla JMX proxy
Go to file
Avi Kivity f4e6a27eef dist: do not always restart jmx on shutdown
Restart=always leads to the following loop:

 1. scylla terminates abnormally
 2. scylla-jmx sees that, and terminates
 3. systemd sees that scylla-jmx terminated, and restarts it.
 4. scylla-jmx requires scylla, so systemd starts it.
 5. goto 1.

To prevent the loop, set Restart=on-abnormal; systemd will restart scylla-jmx
if some JVM bug got it killed, but not otherwise.

The downside to this patch is that if scylla-server goes down, so does
scylla-jmx, but if scylla-server is then restarted, scylla-jmx stays down.
To get scylla and scylla-jmx to start together, we need to create
scylla.service that requires both of them.
2016-01-07 09:12:04 +02:00
dist dist: do not always restart jmx on shutdown 2016-01-07 09:12:04 +02:00
scripts Rename urchin-mbean.jar to scylla-jmx.jar 2015-12-17 09:27:58 +02:00
src/main/java CompactionManager: Fix JSON conversion in getCompactions() 2016-01-05 15:15:49 +02:00
git-archive-all-license.txt dist: make ubuntu package as 'debian non-native package' 2015-11-25 19:43:38 +09:00
LICENSE.AGPL Change license to AGPLv3 2015-09-22 13:33:24 +03:00
NOTICE Add a NOTICE file for the yammer library 2015-06-11 14:32:45 +03:00
pom.xml Rename "com.cloudius.urchin" package to "com.scylladb.jmx" 2015-12-17 09:28:17 +02:00
README.md Rename urchin-mbean.jar to scylla-jmx.jar 2015-12-17 09:27:58 +02:00
SCYLLA-VERSION-GEN release: prepare for 0.15 2016-01-06 12:17:40 +02:00

Urchin JMX Interface

This is the JMX interface for Scylla

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/scylla-jmx-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)