+[[external_metric_server]]
External Metric Server
----------------------
ifdef::wiki[]
:pve-toplevel:
endif::wiki[]
-Starting with {pve} 4.0, you can define external metric servers, which will
-be sent various stats about your hosts, virtual machines and storages.
+[thumbnail="screenshot/gui-datacenter-metric-server-list.png"]
+
+In {pve}, you can define external metric servers, which will periodically
+receive various stats about your hosts, virtual guests and storages.
Currently supported are:
* Graphite (see http://graphiteapp.org )
* InfluxDB (see https://www.influxdata.com/time-series-platform/influxdb/ )
-The server definitions are saved in '/etc/pve/status.cfg'
+The external metric server definitions are saved in '/etc/pve/status.cfg', and
+can be edited through the web interface.
+[[metric_server_graphite]]
Graphite server configuration
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The definition of a server is:
+[thumbnail="screenshot/gui-datacenter-metric-server-graphite.png"]
-----
-graphite: your-id
- server your-server
- port your-port
- path your-path
-----
+The default port is set to *2003* and the default graphite path is *proxmox*.
-where your-port defaults to *2003* and your-path defaults to *proxmox*
+By default, {pve} sends the data over UDP, so the graphite server has to be
+configured to accept this. Here the maximum transmission unit (MTU) can be
+configured for environments not using the standard *1500* MTU.
-{pve} sends the data over UDP, so the graphite server has to be configured
-for this.
+You can also configure the plugin to use TCP. In order not to block the
+important `pvestatd` statistic collection daemon, a timeout is required to cope
+with network problems.
+[[metric_server_influxdb]]
Influxdb plugin configuration
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The definition is:
+[thumbnail="screenshot/gui-datacenter-metric-server-influxdb.png"]
-----
-influxdb: your-id
- server your-server
- port your-port
-----
-
-{pve} sends the data over UDP, so the influxdb server has to be configured
-for this.
+{pve} sends the data over UDP, so the influxdb server has to be configured for
+this. The MTU can also be configured here, if necessary.
Here is an example configuration for influxdb (on your influxdb server):
batch-timeout = "1s"
----
-With this configuration, your server listens on all IP addresses on
-port 8089, and writes the data in the *proxmox* database
-
-Multiple Definitions and Example
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-The *id* is optional, but if you want to have multiple definitions of a single
-type, then the ids must be defined and different from each other.
-
-Here is an example of a finished status.cfg
-
-----
-graphite:
- server 10.0.0.5
-
-influxdb: influx1
- server 10.0.0.6
- port 8089
-
-influxdb: influx2
- server 10.0.0.7
- port 8090
-----
+With this configuration, your server listens on all IP addresses on port 8089,
+and writes the data in the *proxmox* database