Cassandra is a scalable and fault-tolerant NoSQL database system. For more information visit http://cassandra.apache.org/.
Even if the Cassandra plugin is not configured, Stackdriver Monitoring will discover Cassandra services running in your Cloud Platform project by:
- searching instance names for cassandra
- checking for ports opened to 9160 via firewall rules
The services discovered are displayed on the Cassandra Services page in the Services menu. After you install the monitoring agent and configure the Cassandra plugin on your instances, Stackdriver Monitoring populates the Cassandra Services page with inventory and metrics.
Moving away from jmxtrans
We have deprecated our support for jmxtrans in favor of a collectd plugin called GenericJMX. If you are currently running a VM with the legacy jmxtrans monitoring, you need to upgrade all of the Java-based plugins, namely Cassandra, HBase, Kafka, or Tomcat. After you've upgraded those plugins and restarted the stackdriver-agent service, you can shut down the jmxtrans process. You can then uninstall jmxtrans by removing the /mnt/jmxtrans tree and the /etc/init.d/jmxtrans script (if the script is present).
Configuring Stackdriver Monitoring to monitor Cassandra
The Cassandra plugin requires version 5.5.0-257 or later of the monitoring agent.
Enabling the Cassandra monitoring plugin
Cassandra is monitored via JMX. Stackdriver Monitoring has separate configurations for monitoring Cassandra versions 2.1.x and below, and versions 2.2.x and above.
On your VM instance, download the appropriate configuration file from the GitHub configuration repository based on your Cassandra version and place it in the directory
Download cassandra.conf into
(cd /opt/stackdriver/collectd/etc/collectd.d/ && curl -O https://raw.githubusercontent.com/Stackdriver/stackdriver-agent-service-configs/master/etc/collectd.d/cassandra.conf)
The downloaded plugin configuration file assumes that your Cassandra instance is configured to accept JMX connections on port 7199. If you have configured Cassandra with a different JMX port, edit the file and follow the instructions to change the JMX port settings.
After adding the configuration file, restart the monitoring agent by running the following command:
sudo service stackdriver-agent restart
Information on other plugin configuration options can be found at collectd.org.
What is monitored
The Cassandra plugin monitors the following metrics:
- Storage Load: The amount of data stored on each Cassandra node.
- Pending Tasks: The number of basic task stages waiting to run.
- Active Tasks: The number of basic task stages currently running.
- Blocked Tasks: The number of basic task stages blocked from running.
- Pending Internal Tasks: The number of internal task stages waiting to run.
- Active Internal Tasks: The number of internal task stages currently running.
Stackdriver Monitoring also monitors the following basic JVM metrics:
- Active JVM Threads
- JVM Heap memory usage
- JVM Non-Heap memory usage
- JVM Open File Descriptors
- JVM Garbage Collection Count