Istio 模块

编辑

此功能处于测试阶段,可能随时更改。其设计和代码不如正式 GA 功能成熟,按现状提供,不提供任何担保。测试版功能不受正式 GA 功能支持 SLA 的约束。

这是 Istio 模块。使用低于 1.5 版本时,应使用 meshmixerpilotgalleycitadel metricset。

在这种情况下,Istio 模块从 Istio 1.5 版本之前的 Prometheus 指标导出端点 收集指标。

对于 1.5 及更高版本,应使用 istiodproxy metricset。在这种情况下,istiod 端点直接从 Istio Daemon 收集指标,而 proxy 端点则从每个代理 sidecar 收集指标。Istio 1.5 版本之后公开的指标记录在 Istio 文档 > 参考 > 配置 > Istio 标准指标 中。

兼容性

编辑

Istio 模块已针对 Istio 1.4 版本(meshmixerpilotgalleycitadel)进行了测试。Istio 模块已针对 Istio 1.7 版本(istiodproxy)进行了测试。

仪表盘

编辑

Istio 模块包含预定义的仪表盘

  1. 有关 Istio Daemon 的概述信息。
  2. 从 istio-proxies 收集的流量信息。

这些仪表盘仅与 Istio 1.5 版本及更高版本兼容,应使用 istiodproxy metricset 进行监控。

metricbeat istio overview
metricbeat istio traffic

示例配置

Istio 模块支持在 模块 中描述的标准配置选项。这是一个示例配置

metricbeat.modules:
# Istio mesh. To collect all Mixer-generated metrics. For versions of Istio prior to 1.5.
- module: istio
  metricsets: ["mesh"]
  period: 10s
  # use istio-telemetry.istio-system:42422, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
  hosts: ["localhost:42422"]

# Istio mixer. To monitor Mixer itself. For versions of Istio prior to 1.5.
- module: istio
  metricsets: ["mixer"]
  period: 10s
  # use istio-telemetry.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
  hosts: ["localhost:15014"]

# Istio galley. To collect all Galley-generated metrics. For versions of Istio prior to 1.5.
- module: istio
  metricsets: ["galley"]
  period: 10s
  # use istio-galley.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
  hosts: ["localhost:15014"]

# Istio pilot. To collect all Pilot-generated metrics. For versions of Istio prior to 1.5.
- module: istio
  metricsets: ["pilot"]
  period: 10s
  # use istio-pilot.istio-system:15014, when deploying Metricbeat in a kubernetes cluster as Pod or Daemonset
  hosts: ["localhost:15014"]

# Istio citadel. To collect all Citadel-generated metrics. For versions of Istio prior to 1.5.
- module: istio
  metricsets: ["citadel"]
  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 of Istio after 1.5.
- 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']

# Istio proxy to monitor Envoy sidecars for versions of Istio after 1.5.
- module: istio
  metricsets: ['proxy']
  period: 10s
  # it's recommended to deploy this metricset with autodiscovery, see metricset's docs for more info
  hosts: ['localhost:15090']

使用 ssl 配置字段时,此模块支持 TLS 连接,如 SSL 中所述。它还支持 标准 HTTP 配置选项 中描述的选项。

Metricset

提供以下 metricset: