5.3. Integrating VoltDB with Other Monitoring Systems

Documentation

VoltDB Home » Documentation » Administrator's Guide

5.3. Integrating VoltDB with Other Monitoring Systems

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:

5.3.1. Integrating with Prometheus

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:

  1. Set default to the folder /tools/monitoring/prometheus within the directory where you installed VoltDB. For example:

    $ cd opt/voltdb/tools/monitoring/prometheus
  2. 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.

5.3.2. Integrating with Nagios

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

PluginMonitorsScopeDescription
check_voltdb_portsAvailabilityServerReports whether the specified server is reachable or not.
check_voltdb_memoryMemory usageServerReports 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_clusterK-safetyCluster-wideReports 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_replicationDatabase replicationCluster-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.

5.3.3. Integrating with New Relic

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.