Skip to content

Commit

Permalink
Add istiod metricset (elastic#21519)
Browse files Browse the repository at this point in the history
  • Loading branch information
ChrsMark authored Oct 13, 2020
1 parent ed772cd commit 5536fb6
Show file tree
Hide file tree
Showing 20 changed files with 3,228 additions and 7 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.next.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -453,6 +453,7 @@ https://github.com/elastic/beats/compare/v7.0.0-alpha2...master[Check the HEAD d
- Add Cloud Foundry tags in related events. {pull}21177[21177]
- Cloud Foundry metadata is cached to disk. {pull}20775[20775]
- Add option to select the type of index template to load: legacy, component, index. {pull}21212[21212]
- Add istiod metricset. {pull}21519[21519]
- Release `add_cloudfoundry_metadata` as GA. {pull}21525[21525]
- Add support for OpenStack SSL metadata APIs in `add_cloud_metadata`. {pull}21590[21590]

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
24 changes: 22 additions & 2 deletions metricbeat/docs/modules/istio.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,28 @@ This file is generated! See scripts/mage/docs_collector.go

beta[]

This is the Istio module. The Istio module collects metrics from the
This is the Istio module.
This module is compatible with versions before `1.5` of Istio where microservices architecture is used. If using
versions priot to `1.5` then `mesh`, `mixer`, `pilot`, `galley`, `citadel` metricsets should be used.
wehre the Istio module collects metrics from the
Istio https://istio.io/v1.4/docs/tasks/observability/metrics/querying-metrics/#about-the-prometheus-add-on[prometheus exporters endpoints].
For versions after `1.5`, `istiod` metricset can be used which collects metrics directly from Istio Daemon.

The default metricsets are `mesh`, `mixer`, `pilot`, `galley`, `citadel`.

[float]
=== Compatibility

The Istio module is tested with Istio `1.4`.
The Istio module is tested with Istio `1.4` for `mesh`, `mixer`, `pilot`, `galley`, `citadel`.
The Istio module is tested with Istio `1.7` for `istiod`.

[float]
=== Dashboard

The Istio module includes a predefined dashboard with overview information about Istio Daemon.
This dashboard is only compatible with versions of Istio after `1.5` which should be monitored with `istiod` metricset.

image::./images/metricbeat-istio-overview.png[]


[float]
Expand Down Expand Up @@ -62,6 +75,13 @@ metricbeat.modules:
period: 10s
# use istio-pilot.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ["localhost:15014"]
# Istio istiod to monitor the Istio Daemon for versions after 1.5 of Istio.
- module: istio
metricsets: ['istiod']
period: 10s
# use istiod.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ['localhost:15014']
----

[float]
Expand Down
2 changes: 1 addition & 1 deletion metricbeat/docs/modules_list.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ This file is generated! See scripts/mage/docs_collector.go
.3+| .3+| |<<metricbeat-metricset-iis-application_pool,application_pool>> beta[]
|<<metricbeat-metricset-iis-webserver,webserver>> beta[]
|<<metricbeat-metricset-iis-website,website>> beta[]
|<<metricbeat-module-istio,Istio>> beta[] |image:./images/icon-no.png[No prebuilt dashboards] |
|<<metricbeat-module-istio,Istio>> beta[] |image:./images/icon-yes.png[Prebuilt dashboards are available] |
.5+| .5+| |<<metricbeat-metricset-istio-citadel,citadel>> beta[]
|<<metricbeat-metricset-istio-galley,galley>> beta[]
|<<metricbeat-metricset-istio-mesh,mesh>> beta[]
Expand Down
7 changes: 7 additions & 0 deletions x-pack/metricbeat/metricbeat.reference.yml
Original file line number Diff line number Diff line change
Expand Up @@ -693,6 +693,13 @@ metricbeat.modules:
# use istio-pilot.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ["localhost:15014"]

# Istio istiod to monitor the Istio Daemon for versions after 1.5 of Istio.
- module: istio
metricsets: ['istiod']
period: 10s
# use istiod.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ['localhost:15014']

#------------------------------- Jolokia Module -------------------------------
- module: jolokia
#metricsets: ["jmx"]
Expand Down
7 changes: 7 additions & 0 deletions x-pack/metricbeat/module/istio/_meta/config.reference.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,10 @@
period: 10s
# use istio-pilot.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ["localhost:15014"]

# Istio istiod to monitor the Istio Daemon for versions after 1.5 of Istio.
- module: istio
metricsets: ['istiod']
period: 10s
# use istiod.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ['localhost:15014']
7 changes: 7 additions & 0 deletions x-pack/metricbeat/module/istio/_meta/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,10 @@
period: 10s
# use istio-pilot.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ["localhost:15014"]

# Istio istiod to monitor the Istio Daemon for versions after 1.5 of Istio.
- module: istio
metricsets: ['istiod']
period: 10s
# use istiod.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
hosts: ['localhost:15014']
17 changes: 15 additions & 2 deletions x-pack/metricbeat/module/istio/_meta/docs.asciidoc
Original file line number Diff line number Diff line change
@@ -1,9 +1,22 @@
This is the Istio module. The Istio module collects metrics from the
This is the Istio module.
This module is compatible with versions before `1.5` of Istio where microservices architecture is used. If using
versions priot to `1.5` then `mesh`, `mixer`, `pilot`, `galley`, `citadel` metricsets should be used.
wehre the Istio module collects metrics from the
Istio https://istio.io/v1.4/docs/tasks/observability/metrics/querying-metrics/#about-the-prometheus-add-on[prometheus exporters endpoints].
For versions after `1.5`, `istiod` metricset can be used which collects metrics directly from Istio Daemon.

The default metricsets are `mesh`, `mixer`, `pilot`, `galley`, `citadel`.

[float]
=== Compatibility

The Istio module is tested with Istio `1.4`.
The Istio module is tested with Istio `1.4` for `mesh`, `mixer`, `pilot`, `galley`, `citadel`.
The Istio module is tested with Istio `1.7` for `istiod`.

[float]
=== Dashboard

The Istio module includes a predefined dashboard with overview information about Istio Daemon.
This dashboard is only compatible with versions of Istio after `1.5` which should be monitored with `istiod` metricset.

image::./images/metricbeat-istio-overview.png[]
Loading

0 comments on commit 5536fb6

Please sign in to comment.