Istio监控与日志及Kubernetes资源管理
1. Istio适配器模型
在Istio架构中,Mixer是管理遥测数据的组件。它从与应用容器一起部署的边车代理获取统计信息,并通过其适配器与其他后端组件进行交互。例如,如果监控后端是Prometheus,就可以利用Mixer的Prometheus适配器,将从Envoy代理获取的指标转换为Prometheus指标路径。
访问日志通过管道传输到Fluentd/Fluent Bit日志记录后端的方式,与之前构建的将日志发送到Elasticsearch的方式相同。Istio组件与监控后端之间的交互如下图所示:
graph LR
A[Envoy代理] -->|统计信息| B[Mixer]
B -->|指标转换| C[Prometheus]
B -->|日志传输| D[Fluentd/Fluent Bit]
2. 为现有基础设施配置Istio
适配器模型使我们能够轻松地从Mixer组件获取监控数据,这需要进行以下配置。
2.1 Mixer模板
Mixer模板定义了Mixer应该组织哪些数据以及数据的形式。要获取指标和访问日志,需要使用 metric
和 logentry
模板。例如,以下模板告诉Mixer输出包含源和目标名称、方法、请求URL等信息的日志:
apiVersion: config.