Timeseries InfluxDB

Description

Opsview Timeseries InfluxDB (opsview-timeseries-influxdb) provides a Timeseries storage framework. It consists of dedicated InfluxDB Updaters and Queries processes to maximize the throughput.

Note: This cannot be installed at the same time as opsview-timeseries-rrd.

Full details on setting up or migrating to the InfluxDB graphing engine can be found on Timeseries Graphing Engine.

InfluxDB Updaters

Opsview Timeseries InfluxDB Updaters launches a master management process that binds to the configured ports, for each port configured a worker process is started, each worker is responsible for handling the requests for the given port. That provides the guarantee that the data sent from Opsview Timeseries Enqueuer for a given host is handled by a single process only, thus removes the risk of processing the data out of order. The metadata (including the uoms) is stored in the SQlite3 database.

InfluxDB Queries

Opsview Timeseries InfluxDB Queries provide a way of querying the gathered performance metrics and listing them.

Dependencies

Opsview Timeseries InfluxDB can be installed on any supported platform. To reduce network traffic it is recommended to install it on the same host as the Opsview Timeseries Enqueuer component.

Prerequisites

You must separately install InfluxDB, unlike RRD it is not bundled with Opsview

🚧

You must use version 1.8.x or older for InfluxDB

# download package for your platform and follow the install documentation from InfluxDB
https://docs.influxdata.com/influxdb/v1.8/introduction/installation
  
# create a fresh Opsview database in InfluxDB
curl -i -XPOST http://127.0.0.1:8086/query --data-urlencode "q=CREATE DATABASE opsview"

Installation

Refer to Advanced Automated Installation.

Configuration

If opsview-timeseries-influxdb was installed on other then Opsview Timeseries or Timeseries Enqueuer host, you need to update the /opt/opsview/timeseriesinfluxdb/etc/timeseriesinfluxdb.yaml file to listen other than loopback interface.

---
timeseriesinfluxdb:
    server:
        user: opsview
        password: opsview
        updates:
            host: 127.0.0.1
            workers:
                - port: 1640
                - port: 1641
                - port: 1642
                - port: 1643
            logging:
                loggers:
                    opsview:
                        level: NOTICE
        queries:
            host: 127.0.0.1
            port: 1660
            default_parameters:
                data_points: 300
                fill_option: "null"
                min_time_slot: 0
                counter_metrics_mode: "per_second"
            logging:
                loggers:
                    opsview:
                        level: NOTICE
    data_dir: /opt/opsview/timeseriesinfluxdb/var/data
    influxdb:
        server: http://localhost:8086
        user:
        password:
        database: opsview
        retention_policy: default

All configurable options are listed in the /opt/opsview/timeseriesinfluxdb/etc/timeseriesinfluxdb.defaults.yaml and /opt/opsview/timeseriesinfluxdb/etc/timeseriesinfluxdb.yaml.example.

Service Administration

As root, start, stop and restart the service using:

/opt/opsview/watchdog/bin/opsview-monit <start|stop|restart> opsview-timeseriesinfluxdbupdates
/opt/opsview/watchdog/bin/opsview-monit <start|stop|restart> opsview-timeseriesinfluxdbqueries