In addition to the tools and system procedures that VoltDB provides for monitoring the health of your database, you can also integrate this data into third-party monitoring solutions so they become part of your overall enterprise monitoring architecture. VoltDB supports integrating VoltDB statistics and status with the following monitoring systems:
If you use Prometheus to monitor your systems and services, you can include VoltDB in your monitoring infrastructure. VoltDB Enterprise Edition provides a Prometheus agent that runs as a separate process collecting statistics from the cluster, which are then available to the Prometheus server through port 1234 by default. To use the agent:
Set default to the folder /tools/monitoring/prometheus
within the directory where you
installed VoltDB. For example:
$ cd opt/voltdb/tools/monitoring/prometheus
Execute the script voltdb-prometheus
:
$ bash voltdb-prometheus
See the comment at the beginning of the script for command arguments you can use to modify the agent, including the ability to specify the IP address, port, username, and password for the VoltDB server to monitor.
If you use Nagios to monitor your systems and services, you can include VoltDB in your monitoring infrastructure. VoltDB Enterprise Edition provides Nagios plugins that let you monitor four key aspects of VoltDB. The plugins are included in a subfolder of the tools directory where VoltDB is installed. Table 5.3, “Nagios Plugins” lists each plugin and what it monitors.
Table 5.3. Nagios Plugins
Plugin | Monitors | Scope | Description |
---|---|---|---|
check_voltdb_ports | Availability | Server | Reports whether the specified server is reachable or not. |
check_voltdb_memory | Memory usage | Server | Reports on the amount of memory in use by VoltDB for a individual node. You can specify the severity criteria as a percentage of total memory. |
check_voltdb_cluster | K-safety | Cluster-wide | Reports on whether a K-safe cluster is complete or not. That is, whether the cluster has the full complement of nodes or if any have failed and not rejoined yet. |
check_voltdb_replication | Database replication | Cluster-wide | Reports the status of database replication. Connect the plugin to one or more nodes on the master database. |
Note that the httpd and JSON options must be enabled in the deployment file for the VoltDB database for the Nagios plugins to query the database status.
If you use New Relic as your monitoring tool, there is a VoltDB plugin to include monitoring of VoltDB databases to your New Relic dashboard. To use the New Relic plugin, you must:
Define the appropriate configuration for your server.
Start the voltdb-newrelic process that gathers and sends data to New Relic.
You define the configuration by editing and renaming the template files that can be found in the
/tools/monitoring/newrelic/config
folder where VoltDB is installed. The configuration files
let you specify your New Relic license and which databases are monitored. A README file in the
/newrelic
folder provides details on what changes to make to the configuration files.
You start the monitoring process by running the script voltdb-newrelic
that also can be found
in the/newrelic
folder. The script must be running for New Relic to monitor your databases.