prometheus + grafana 对flink 进行监控
prometheus + grafana 对flink 进行监控
标签(空格分隔): flink系列
一:flink监控简介
二:Flink的Metric架构
- 三: prometheus + grafana 的 对 flink 的监控部署构建
一:flink监控简介
1.1 前言
Flink提供的Metrics可以在Flink内部收集一些指标,通过这些指标让开发人员更好地理解作业或集群的状态。由于集群运行后很难发现内部的实际状况,跑得慢或快,是否异常等,开发人员无法实时查看所有的Task日志,比如作业很大或者有很多作业的情况下,该如何处理?此时Metrics可以很好的帮助开发人员了解作业当前状况。对于很多大中型企业来讲,我们对进群的作业进行管理时,更多的是关心作业精细化实时运行状态。例如,实时吞吐量的同比环比、整个集群的任务运行概览、集群水位,或者监控利用 Flink 实现的 ETL 框架的运行情况等,这时候就需要设计专门的监控系统来监控集群的任务作业情况。
二: Flink的Metric架构
2.1 flink metric
Flink Metrics是Flink实现的一套运行信息收集库,我们不但可以收集Flink本身提供的系统指标,比如CPU、内存、线程使用情况、JVM垃圾收集情况、网络和IO等,还可以通过继承和实现指定的类或者接口打点收集用户自定义的指标。 通过使用Flink Metrics我们可以轻松地做到: • 实时采集Flink中的Metrics信息或者自定义用户需要的指标信息并进行展示; • 通过Flink提供的Rest API收集这些信息,并且接入第三方系统进行展示。
2.2 监控架构
从Flink Metrics架构来看,指标获取方式有两种。一是REST-ful API,Flink Web UI中展示的指标就是这种形式实现的。二是reporter,通过reporter可以将metrics发送给外部系统。Flink内置支持JMX、Graphite、Prometheus等系统的reporter,同时也支持自定义reporter。 由于Flink Web UI所提供的metrics数量较少,也没有时序展示,无法满足实际生产中的监控需求。Prometheus+Grafana是业界十分普及的开源免费监控体系,上手简单,功能也十分完善。
三:prometheus + grafana 的 对 flink 的监控部署构建
3.1 安装prometheus
Prometheus本身也是一个导出器(exporter),提供了关于内存使用、垃圾收集以及自身性能 与健康状态等各种主机级指标。 prometheus官网下载址: https://prometheus.io/download/ wget https://github.com/prometheus/prometheus/releases/download/v2.21.0/prometheus-2.21.0.linux-amd64.tar.gz # tar zxvf prometheus-2.21.0.linux-amd64.tar.gz # mv prometheus-2.21.0.linux-amd64 /usr/local/prometheus # chmod +x /usr/local/prometheus/prom* # cp -rp /usr/local/prometheus/promtool /usr/bin/
3.2 配置prometheus
最后 加上pushgateway 收集: 此处将pushgateway 与 prometheus 安装在一台机器上面 - job_name: 'linux' static_configs: - targets: ['192.168.100.15:9100'] labels: app: node05 nodename: node05.vpc.flyfish.cn role: node - job_name: 'pushgateway' static_configs: - targets: ['192.168.100.15:9091'] labels: instance: 'pushgateway'
prometheus 的开机启动: cat > /usr/lib/systemd/system/prometheus.service <<EOF [Unit] Description=Prometheus [Service] ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml -- storage.tsdb.path=/usr/local/prometheus/data --web.enable-lifecycle --storage.tsdb.retention.time=180d Restart=on-failure [Install] WantedBy=multi-user.target EOF --- #service prometheus start #chkconfig prometheus on
3.3 安装 prometheus 的node_exporter 与 pushgateway 的插件
node_exporter : #tar -zxvf node_exporter-1.0.1.linux-amd64.tar.gz #mv node_exporter-1.0.1.linux-amd64 /usr/local/node_exporter #/usr/local/node_exporter/node_exporter &
pushgateway: #tar -zxvf pushgateway-1.2.0.linux-amd64.tar.gz #mv pushgateway-1.2.0.linux-amd64 /usr/local/pushgateway/ # /usr/local/pushgateway/pushgateway &
###3.4 flink metric 的配置
flink-conf.yaml 到最后加上 ---- metrics.reporter.promgateway.class: org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter metrics.reporter.promgateway.host: 192.168.100.15 metrics.reporter.promgateway.port: 9091 metrics.reporter.promgateway.jobName: pushgateway metrics.reporter.promgateway.randomJobNameSuffix: true metrics.reporter.promgateway.deleteOnShutdown: true ---- 然后同步所有flink的 works 节点
重启flink 的集群 ./stop-cluster.sh ./start-cluster.sh
3.4.1 打开pushgateway
3.4.2 prometheus 页面
3.4.5 关于 grafana 的 prometheus 的Datasources

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
岁末网络安全风险加剧 运营商智能升级护航新基建
在网络无处不在的今天,网络诈骗仍处于高发态势。当前,利用“新冠”等时事热词实施网络钓鱼、传播恶意程序等安全事件持续增长,而5G、工业互联网、大数据中心等新基建加速发展,拓展了网络安全产业发展空间,也使得网络基础设施成为攻防的重要阵地。在不久前的2020年中国网络安全产业高峰论坛上,工信部副部长刘烈宏表示,“十四五”期间,中国将尽快出台《5G安全指引》等一批重大政策,推动提升网络安全在新基建中的占比。 新基建需要新安全,守护新基建安全,运营商义不容辞,在新基建这片充满未知的安全新战场上,运营商正依托云网融合优势筑牢 “安全堤坝”,积极利用人工智能、大数据等技术赋能网络安全。 网络安全新旧交织形势严峻 网络安全往往是“旧”事件和“新”事件的混合。年末是网络诈骗案的多发期。在“旧”事件上,诈骗手法也不断更新。在我国,受疫情影响,在线教育、网络支付等网络应用增长迅速,一些不法分子趁机实施网络诈骗。近日发布的《2020年上半年度中国手机安全状况报告》显示, 2020年上半年,“360手机先赔”共接到手机诈骗举报1561起,其中提交理赔申请的诈骗举报为776起,涉案总金额高达778.9万元,人均损...
- 下一篇
关于MySQL索引知识与小妙招 — 学到了!
一、索引基本知识 1.1 索引的优点 大大减少了服务器需要扫描的数据量,加快数据库的检索速度 帮助服务器避免排序和临时表 将随机io变成顺序io 1.2 索引的用处 速查找匹配WHERE子句的行 从consideration中消除行,如果可以在多个索引之间进行选择,mysql通常会使用找到最少行的索引 如果表具有多列索引,则优化器可以使用索引的任何最左前缀来查找行 当有表连接的时候,从其他表检索行数据 查找特定索引列的min或max值 如果排序或分组时在可用索引的最左前缀上完成的,则对表进行排序和分组 在某些情况下,可以优化查询以检索值而无需查询数据行 1.3 索引的分类 数据库会默认创建索引,但是并不是给主键建立索引,而是给唯一键建里索引的,因为主键的特性是唯一且非空 主键索引: 是一种特殊的唯一索引,不允许有空值。(主键约束,就是一个主键索引) 唯一索引: 索引列中的值必须是唯一的,但是允许为空值。 普通索引: MySQL中基本索引类型,没有什么限制,允许在定义索引的列中插入重复值和空值,纯粹为了查询数据更快一 点。 全文索引: 只有在MyISAM引擎上才能使用,只能在CHAR,V...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Linux系统CentOS6、CentOS7手动修改IP地址
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7设置SWAP分区,小内存服务器的救世主