Flink Metrics索引收集方案
Flink任务自动伸缩,智能诊断场景依靠度量指标进行处理和分析。现有的普罗米修斯储存方案不再适用。
现有的指标需要在本地收集,然后由nodeexporter或lancer导出到目标存储,这强烈依赖于本地环境。线上业务系统资源环境差异较大,扩容等维护成本较高,资源隔离不够好。
期望在Flink On K8s场景下,Flink Metrics指标收集能够独立于基础环境,对扩展和收缩友好,支持指标收集和分析数据的统一存储,降低指标维护和使用的成本,并考察Flink Metrics指标收集方案。
2.1.1.原理架构图如下。
2.1.2,配置模式
将flink-Metrics-Prometheus-1.14.3 . jar包放入Flink安装目录/lib中。
修改flink-conf.yaml配置文件并设置属性。
示例配置:
metrics . reporter . prom gateway . class:org . Apache . flink . metrics . Prometheus . prometheuspushgateway reporter
metrics . reporter . prom gateway . host:本地主机
metrics . reporter . prom gateway . port:9091
metrics . reporter . prom gateway . job name:my job
metrics . reporter . prom gateway . randomjobname suffix:true
metrics . reporter . prom gateway . deleteonshutdown:false
metrics . reporter . prom gateway . grouping key:k 1 = v 1;k2=v2
metrics.reporter.promgateway .间隔:60秒
2.2.1,原理结构图如下。
2.2.2配置模式
将flink-Metrics-Prometheus-1.14.3 . jar包放入Flink安装目录/lib中。
修改flink-conf.yaml配置文件并设置属性。
示例配置:
metrics . reporter . prom . class:org . Apache . flink . metrics . Prometheus . Prometheus reporter
metrics . reporter . prom . port:9250-9260
2.3 ...1,原理架构图如下。
2.3.2配置模式
将flink-Metrics-inflow d B- 1.14.3 . jar包放入Flink安装目录/lib。
修改flink-conf.yaml配置文件并设置属性。
示例配置:
metrics . reporter . influxdb . factory . class:org . Apache . flink . metrics . influxdb . influxdb reporter factory
metrics . reporter . influx db . scheme:http
metrics . reporter . influx db . host:localhost
metrics . reporter . influx db . port:8086
metrics . reporter . influx db . db:flink
metrics . reporter . influx db . username:flink-metrics
metrics . reporter . influxdb . password:qwerty
metrics . reporter . influx db . retention policy:one _ hour
metrics . reporter . influx db . consistency:ANY
metrics . reporter . influx db . connect time out:60000
metrics . reporter . influx db . write time out:60000
metrics.reporter.influxdb .间隔:60秒
2.4.1,原理结构图如下。
2.4.2配置模式
将flink-Metrics-JMX-1.14.3 . jar包放入Flink安装目录/lib。
修改flink-conf.yaml配置文件并设置属性。
示例配置:
metrics . reporter . JMX . factory . class:org . Apache . flink . metrics . JMX . jmxreporterfactory
metrics . reporter . JMX . port:9250-9260
2.5.1,配置模式
将flink-Metrics-SLF4J-1.14.3 . jar包放入Flink安装目录/lib。
修改flink-conf.yaml配置文件并设置属性。
示例配置:
metrics . reporter . SLF 4j . factory . class:org . Apache . flink . metrics . SLF 4j . SLF 4j reporter factory
metrics.reporter.slf4j .间隔:60秒
GraphiteReporter、StatsDReporter、DatadogHttpReporter
在Kafka中收集指标后,实时将完整的指标写入ClickHouse。
指标在Kafka中采集后,会实时将全量的指标写入ClickHouse,可以满足监测行情、长期保存和指标数据二次加工分析的需求。该方法具有指标数据来源统一、任务市场大、报警等优点。