KPIs¶
6WIND KPI monitoring provides the ability to monitor and export Turbo IPsec KPIs to an InfluxDB time-series database, which can then be integrated with an analytics frontend, such as Grafana. An example of InfluxDB/Grafana setup is described on 6WIND’s github.
Configuring KPIs requires to:
enable and configure the KPIs daemon to specify which KPIs to collect
enable and configure the Telegraf agent to export the specified KPIs to a remote InfluxDB database
To configure the KPIs daemon with everything it can collect, and the
Telegraf
agent to send data to the InfluxDB
server located at
http://1.1.1.1:8086
, in the test
database, do:
vrouter running config# system kpi
vrouter running kpi# / vrf main kpi telegraf
vrouter running telegraf/# influxdb-output url http://1.1.1.1:8086 database test
vrouter running telegraf/# commit
Note
To connect Telegraf to a secured InfluxDB instance (https URL) that is using
a self-signed certificate, you must enable insecure-skip-verify
.
For reference, using the deprecated way of configuring KPIs, the configuration would look like:
vrouter running config# vrf main kpi
vrouter running kpi/# telegraf
vrouter running telegraf/# influxdb-output url http://1.1.1.1:8086 database test
vrouter running telegraf/# commit
To display the state:
vrouter running config# show state vrf main kpi
kpi
telegraf
interval 10
enabled true
influxdb-output url http://1.1.1.1:8086 database test
..
..
The same configuration can be made using this NETCONF XML configuration:
vrouter running config# show config xml absolute
<config xmlns="urn:6wind:vrouter">
<system xmlns="urn:6wind:vrouter/system>
<kpi xmlns="urn:6wind:vrouter/kpi">
<enabled>true</enabled>
<service>fp-bridge-stats</service>
<service>fp-context-switch-stats</service>
<service>fp-cp-protect-stats</service>
<service>fp-cpu-usage</service>
<service>fp-dpvi-stats</service>
<service>fp-ebtables-stats</service>
<service>fp-exception-queue-stats</service>
<service>fp-exceptions-stats</service>
<service>fp-filling</service>
<service>fp-filling-cg-nat</service>
<service>fp-global-stats</service>
<service>fp-gre-stats</service>
<service>fp-gro-stats</service>
<service>fp-ip-stats</service>
<service>fp-ip6-stats</service>
<service>fp-ipsec-stats</service>
<service>fp-ipsec6-stats</service>
<service>fp-cg-nat-stats</service>
<service>fp-ports-stats</service>
<service>fp-status</service>
<service>fp-vlan-stats</service>
<service>fp-vxlan-stats</service>
<service>network-nic-eth-stats</service>
<service>network-nic-hw-info</service>
<service>network-nic-traffic-stats</service>
<service>product-license</service>
<service>product-version</service>
<service>system-cpu-usage</service>
<service>system-disk-usage</service>
<service>system-memory</service>
<service>system-numa-stats</service>
<service>system-processes</service>
<service>system-soft-interrupts-stats</service>
<service>system-uptime</service>
<service>system-user-count</service>
<service>system-users</service>
</system>
<vrf>
<name>main</name>
<kpi xmlns="urn:6wind:vrouter/kpi">
<telegraf xmlns="urn:6wind:vrouter/kpi/telegraf">
<enabled>true</enabled>
<interval>10</interval>
<influxdb-output>
<url>http://1.1.1.1:8086</url>
<database>test</database>
</influxdb-output>
</telegraf>
<interface xmlns="urn:6wind:vrouter/interface"/>
</kpi>
</vrf>
</config>