summaryrefslogtreecommitdiff
path: root/docs/configuration
diff options
context:
space:
mode:
Diffstat (limited to 'docs/configuration')
-rw-r--r--docs/configuration/protocols/index.rst1
-rw-r--r--docs/configuration/protocols/multicast.rst34
-rw-r--r--docs/configuration/protocols/static.rst40
-rw-r--r--docs/configuration/service/monitoring.rst112
4 files changed, 164 insertions, 23 deletions
diff --git a/docs/configuration/protocols/index.rst b/docs/configuration/protocols/index.rst
index b48954fa..f95c1cf6 100644
--- a/docs/configuration/protocols/index.rst
+++ b/docs/configuration/protocols/index.rst
@@ -14,6 +14,7 @@ Protocols
igmp-proxy
isis
mpls
+ multicast
segment-routing
openfabric
ospf
diff --git a/docs/configuration/protocols/multicast.rst b/docs/configuration/protocols/multicast.rst
new file mode 100644
index 00000000..61a04e5e
--- /dev/null
+++ b/docs/configuration/protocols/multicast.rst
@@ -0,0 +1,34 @@
+.. _routing-static:
+
+#########
+Multicast
+#########
+
+In order to influence Multicast :abbr:`RPF (Reverse Path Forwarding)` lookup,
+it is possible to insert into zebra routes for the Multicast
+:abbr:`RIB (Routing Information Base)`. These routes are only used for RPF
+lookup and will not be used by ZEBRA for insertion into the kernel or for
+normal RIB processing. As such it is possible to create weird states with
+these commands.
+
+Use with caution. Most of the time this will not be necessary.
+
+.. cfgcmd:: set protocols static mroute <subnet> next-hop <address>
+ [distance <distance>]
+
+ Insert into the Multicast RIB Route `<subnet>` with specified next-hop.
+ The distance can be specified as well if desired.
+
+.. cfgcmd:: set protocols static mroute <subnet> next-hop <address> disable
+
+ Do not install route for `<subnet>` into the Multicast RIB.
+
+.. cfgcmd:: set protocols static mroute <subnet> interface <interface>
+ [distance <distance>]
+
+ Insert into the Multicast RIB Route `<subnet>` with specified `<interface>`.
+ The distance can be specified as well if desired.
+
+.. cfgcmd:: set protocols static mroute <subnet> interface <interface> disable
+
+ Do not install route for `<subnet>` into the Multicast RIB.
diff --git a/docs/configuration/protocols/static.rst b/docs/configuration/protocols/static.rst
index 9b1719f0..3e3eb47b 100644
--- a/docs/configuration/protocols/static.rst
+++ b/docs/configuration/protocols/static.rst
@@ -62,6 +62,26 @@ IPv4 Interface Routes
Range is 1 to 255, default is 1.
+IPv4 BFD
+========
+
+.. cfgcmd:: set protocols static route <subnet> next-hop <address> bfd
+
+ Configure a static route for `<subnet>` using gateway `<address>` and use the
+ gateway address as BFD peer destination address.
+
+.. cfgcmd:: set protocols static route <subnet> next-hop <address> bfd profile <profile>
+
+ Configure a static route for `<subnet>` using gateway `<address>` and use the
+ gateway address as BFD peer destination address with BFD profile `<profile>`.
+
+.. cfgcmd:: set protocols static route <subnet> next-hop <address> bfd multi-hop
+ source-address <source-address>
+
+ Configure a static route for `<subnet>` using gateway `<address>` and use the
+ gateway address as BFD peer destination address with source address
+ `<source>` but initiate a multi-hop session.
+
DHCP Interface Routes
=====================
@@ -191,6 +211,26 @@ IPv6 Interface Routes
set protocols static route6 2001:db8:1000::/36 interface eth0 segments '2001:db8:aaaa::7/2002::4/2002::3/2002::2'
+IPv6 BFD
+========
+
+.. cfgcmd:: set protocols static route6 <subnet> next-hop <address> bfd
+
+ Configure a static route for `<subnet>` using gateway `<address>` and use the
+ gateway address as BFD peer destination address.
+
+.. cfgcmd:: set protocols static route6 <subnet> next-hop <address> bfd profile <profile>
+
+ Configure a static route for `<subnet>` using gateway `<address>` and use the
+ gateway address as BFD peer destination address with BFD profile `<profile>`.
+
+.. cfgcmd:: set protocols static route6 <subnet> next-hop <address> bfd multi-hop
+ source-address <source>
+
+ Configure a static route for `<subnet>` using gateway `<address>` and use the
+ gateway address as BFD peer destination address with source address
+ `<source>` but initiate a multi-hop session.
+
IPv6 Reject Routes
==================
diff --git a/docs/configuration/service/monitoring.rst b/docs/configuration/service/monitoring.rst
index 10b4dee2..5c306903 100644
--- a/docs/configuration/service/monitoring.rst
+++ b/docs/configuration/service/monitoring.rst
@@ -1,9 +1,27 @@
+##########
Monitoring
-----------
+##########
-Azure-data-explorer
+VyOS supports monitoring through Telegraf as well as through Prometheus exporters.
+
+********
+Telegraf
+********
+
+Telegraf is the open source server agent to help you collect metrics, events
+and logs from your routers.
+
+The following Telegraf plugins are configurable to export metrics and logs:
+ * Azure Data Explorer
+ * Prometheus Client
+ * Splunk
+ * InfluxDB
+ * Loki
+
+
+Azure data explorer
===================
-Telegraf output plugin azure-data-explorer_
+Telegraf output plugin azure-data-explorer_.
.. cfgcmd:: set service monitoring telegraf azure-data-explorer authentication client-id <client-id>
@@ -34,9 +52,12 @@ Telegraf output plugin azure-data-explorer_
Remote URL.
-Prometheus-client
+
+Prometheus client
=================
Telegraf output plugin prometheus-client_
+This plugin allows export of Telegraf metrics to Prometheus,
+for Prometheus native metrics through exporters see section below.
.. cfgcmd:: set service monitoring telegraf prometheus-client
@@ -79,9 +100,10 @@ Example:
cpu_usage_system{cpu="cpu0",host="r14"} 0.17182130584191915
cpu_usage_system{cpu="cpu1",host="r14"} 0.22896393817971655
+
Splunk
======
-Telegraf output plugin splunk_. HTTP Event Collector.
+Telegraf output plugin splunk_ HTTP Event Collector.
.. cfgcmd:: set service monitoring telegraf splunk authentication insecure
@@ -103,11 +125,10 @@ Example:
set service monitoring telegraf splunk authentication token 'xxxxf5b8-xxxx-452a-xxxx-43828911xxxx'
set service monitoring telegraf splunk url 'https://192.0.2.10:8088/services/collector'
-Telegraf
+
+InfluxDB
========
-Monitoring functionality with ``telegraf`` and ``InfluxDB 2`` is provided.
-Telegraf is the open source server agent to help you collect metrics, events
-and logs from your routers.
+Telegraf output plugin influxdb_ to write metrics to ``InfluxDB`` via HTTP.
.. cfgcmd:: set service monitoring telegraf influxdb authentication organization <organization>
@@ -130,10 +151,21 @@ and logs from your routers.
Remote URL
+Example:
+
+.. code-block:: none
+
+ set service monitoring telegraf influxdb authentication organization 'vyos'
+ set service monitoring telegraf influxdb authentication token 'ZAml9Uy5wrhA...=='
+ set service monitoring telegraf influxdb bucket 'bucket_vyos'
+ set service monitoring telegraf influxdb port '8086'
+ set service monitoring telegraf influxdb url 'http://r1.influxdb2.local'
+
+
Loki
====
-Telegraf can be used to send logs to Loki using tags as labels.
+Telegraf can be used to send logs to loki_ using tags as labels.
.. cfgcmd:: set service monitoring telegraf loki port <port>
@@ -160,20 +192,54 @@ Telegraf can be used to send logs to Loki using tags as labels.
This is NOT recommended, as it makes it impossible to differentiate
between multiple metrics.
-Example
-=======
+.. _azure-data-explorer: https://github.com/influxdata/telegraf/tree/master/plugins/outputs/azure_data_explorer
+.. _prometheus-client: https://github.com/influxdata/telegraf/tree/master/plugins/outputs/prometheus_client
+.. _influxdb: https://github.com/influxdata/telegraf/tree/master/plugins/outputs/influxdb_v2
+.. _splunk: https://www.splunk.com/en_us/blog/it/splunk-metrics-via-telegraf.html
+.. _loki: https://github.com/influxdata/telegraf/tree/master/plugins/outputs/loki
-An example of a configuration that sends ``telegraf`` metrics to remote
-``InfluxDB 2``
-.. code-block:: none
+**********
+Prometheus
+**********
- set service monitoring telegraf influxdb authentication organization 'vyos'
- set service monitoring telegraf influxdb authentication token 'ZAml9Uy5wrhA...=='
- set service monitoring telegraf influxdb bucket 'bucket_vyos'
- set service monitoring telegraf influxdb port '8086'
- set service monitoring telegraf influxdb url 'http://r1.influxdb2.local'
+The following Prometheus exporters are configurable to export metrics:
+ * Node Exporter
+ * FRR Exporter
-.. _azure-data-explorer: https://github.com/influxdata/telegraf/tree/master/plugins/outputs/azure_data_explorer
-.. _prometheus-client: https://github.com/influxdata/telegraf/tree/master/plugins/outputs/prometheus_client
-.. _splunk: https://www.splunk.com/en_us/blog/it/splunk-metrics-via-telegraf.html
+
+Node Exporter
+=============
+Prometheus node_exporter_ which provides a wide range of hardware and OS metrics.
+
+.. cfgcmd:: set service monitoring node-exporter listen-address <address>
+
+ Configure the address node_exporter is listening on.
+
+.. cfgcmd:: set service monitoring node-exporter port <port>
+
+ Configure the port number node_exporter is listening on.
+
+.. cfgcmd:: set service monitoring node-exporter vrf <name>
+
+ Configure name of the :abbr:`VRF (Virtual Routing and Forwarding)` instance.
+
+
+FRR Exporter
+============
+Prometheus frr_exporter_ which provides free range routing metrics.
+
+.. cfgcmd:: set service monitoring frr-exporter listen-address <address>
+
+ Configure the address frr_exporter is listening on.
+
+.. cfgcmd:: set service monitoring frr-exporter port <port>
+
+ Configure the port number frr_exporter is listening on.
+
+.. cfgcmd:: set service monitoring frr-exporter vrf <name>
+
+ Configure name of the :abbr:`VRF (Virtual Routing and Forwarding)` instance.
+
+.. _node_exporter: https://github.com/prometheus/node_exporter
+.. _frr_exporter: https://github.com/tynany/frr_exporter \ No newline at end of file