实时平台-Flink篇

Flink任务统一通过实时平台统一管理的好处不用多说,这里简单介绍下实时平台-Flink模块的功能以及实现。

主要分为两大块

一、任务管理

任务管理主要包括任务的提交、暂停、下线、重启、历史版本回滚、checkpoint/savepoint管理、监控信息以及任务自动拉起等功能。运行的每个任务信息(AppId,JobId等)都会被保存起来,所以,任务重启的时候可以很轻松的根据自己的业务需求选择从哪个任务的哪个CheckPoint开始启动。

二、任务保障

任务保障主要从三个方面入手

1.Flink应用程序日志

从事过Java应用开发的人员一定知道,应用中的日志对于任务运行状况、错误排查有着至关重要的作用,对于Flink分布式应用来说,如果能将日志和Java应用一样输出,那绝对可以减少很多排查问题的时间和缩短获取任务异常的时间,具体实现可以参考这篇文章

2.监控Kafka Group Lag和Status

大部分应用都是消费Kafka消息,对于消费组的堆积情况和运行状况预警是很有必要的,这里开发人员可以根据Topic的QPS和CheckPoint时间进行预估两次提交大概会有多大的Lag,然后进行设置Lag超过多大的阈值进行企微和邮件告警,必要的可以电话告警,主要分为信息的采集和平台告警两部分,具体实现可以参考这篇文章

 

3.Flink任务监控信息

主要是通过Flink自带的Metrics系统将信息写入到Influxdb,如何配置可以参考 这篇文章

 

 

猜你喜欢

转载自www.cnblogs.com/createweb/p/12218922.html