Solución de recopilación de índices de Flink Metrics
Las tareas de Flink se escalan automáticamente y los escenarios de diagnóstico inteligente se basan en métricas para su procesamiento y análisis. La solución de almacenamiento Prometheus existente ya no es aplicable.
Las métricas existentes deben recopilarse localmente y luego exportarse al almacenamiento de destino mediante nodeexporter o lancer, lo que depende en gran medida del entorno local. El entorno de recursos de los sistemas comerciales en línea varía mucho, los costos de mantenimiento, como la expansión de la capacidad, son altos y el aislamiento de recursos no es lo suficientemente bueno.
Se espera que en el escenario de Flink On K8s, la recopilación de indicadores de Flink Metrics pueda ser independiente del entorno básico, amigable con la expansión y contracción, admita el almacenamiento unificado de datos de análisis y recopilación de indicadores, reduzca el costo de mantenimiento y uso de indicadores, y examinar la solución de recopilación de indicadores de Flink Metrics.
2.1.1. El diagrama de arquitectura principal es el siguiente.
2.1.2, modo de configuración
Coloque el paquete jar flink-Metrics-Prometheus-1.14.3. en el directorio de instalación de Flink/lib.
Modifique el archivo de configuración flink-conf.yaml y establezca las propiedades.
Configuración de ejemplo:
reportero de prometheuspushgateway. host de puerta de enlace: host local
reportero de . reporter .prom gateway sufijo: true
metrics .prom gateway .deleteonshutdown: false
prom reporter . =v2
metrics.reporter.promgateway. Intervalo: 60 segundos
2.2.1, el diagrama de estructura principal es el siguiente.
2.2.2 Modo de configuración
Coloque el paquete jar flink-Metrics-Prometheus-1.14.3. en el directorio de instalación de Flink/lib.
Modifique el archivo de configuración flink-conf.yaml y establezca las propiedades.
Configuración de ejemplo:
reportero de Prometheus.
reportero de Apache. puerto: 9250-9260
2.3...1, el diagrama de arquitectura principal es el siguiente.
2.3.2 Modo de configuración
Coloque el paquete jar flink-Metrics-inflow d B- 1.14.3. en el directorio de instalación de Flink/lib.
Modifique el archivo de configuración flink-conf.yaml y establezca las propiedades.
Ejemplo de configuración:
métricas .influxdb reporter factory .org .flink . . Esquema de base de datos de afluencia: http
métricas. reportero .db de influjo: flink
métricas. métricas .influx db política de retención: una hora
métricas .influx db consistencia: CUALQUIER
métricas influx db. /p>
metrics.reporter.influx db.tiempo de espera de escritura: 60000
metrics.reporter.influxdb.intervalo: 60 segundos
2.4.1, el diagrama de estructura principal. es el siguiente.
2.4.2 Modo de configuración
Coloque el paquete jar flink-Metrics-JMX-1.14.3. en el directorio de instalación de Flink/lib.
Modifique el archivo de configuración flink-conf.yaml y establezca las propiedades.
Ejemplo de configuración:
métricas. JMX.fábrica.
métricas de Apache. Puerto: 9250-9260
2.5.1, modo de configuración
Coloque el paquete jar flink-Metrics-SLF4J-1.14.3 en el directorio de instalación de Flink/lib.
Modifique el archivo de configuración flink-conf.yaml y establezca las propiedades.
Ejemplo de configuración:
métricas. Fábrica de reporteros SLF 4j.
. metrics.reporter.slf4j .Intervalo: 60 segundos
GraphiteReporter, StatsDReporter, DatadogHttpReporter
Después de recopilar métricas en Kafka, escriba las métricas completas en ClickHouse en tiempo real.
Una vez recopilados los indicadores en Kafka, todos los indicadores se escribirán en ClickHouse en tiempo real, lo que puede satisfacer las necesidades de monitoreo del mercado, almacenamiento a largo plazo y procesamiento secundario y análisis de datos de indicadores. Este método tiene las ventajas de una fuente de datos de indicadores unificada, un gran mercado de tareas y alarmas.