首页 > 其他分享 >prometheus监控flink

prometheus监控flink

时间:2022-09-02 15:59:57浏览次数:92  
标签:flink 9090 prometheus pushgateway 监控 docker gateway

背景

  很久没写博客了,今天也算完成了一个小测试。由于flink没有监控的平台,只是自己写了python脚本去监控发报警。flink 自己的ui界面其实已经有很多的指标可以看了,但是就得自己一个一个的去找到,所以基于这个我想找个监控的平台去监控一下flink,google,官网,博客以后发现大多数用的都是prometheus + grahana去监控展示的。于是开始了我的链路打通。

 

Promethesu 

  什么是prometheus ?https://prometheus.io/docs/introduction/overview/ 看官网就可以了。我也是没有接触过,只是听说过,带着学习的态度去了解吧。看了基本的介绍,然后把prometheus的结构了解一下。

  

 

 

  对架构图简单的说明一下,给我的理解就是这么几部分。

  采集部分,pushgateway 和 exporters ,为啥是两个呢?就是涉及到了固定机器和动态机器的问题。就像我们flink on yarn,一个job作业会分发到几个机器上,我们不能每次都要去重新配置prometheus的上报地方吧?所以通过gateway的方式让flink自动上报到gateway,然后prometheus去gateway同步数据就可以了。exporters就是我们有5台机器的监控,那么就是配置好这个5台机器就可以了。然后把exporter安装到五台机器让他们上报到prometheus就可以了。

  中间的部分是服务动态发现,prometheus服务。数据是存在TSDB一种时序数据库在我们的磁盘上,然后通过http对外保留接口。

  最后一部分就是报警和展示。报警我本次没做,展示也没做。

 

过程

 

  好了,基本的架构了解了。我们要做的就是prometheus 配置启动,然后gateway连通prometheus,之后配置flink,开发一个flink任务,最后到prometheus上能看到指标就到此为止了,后面的展示应该也就简单了!总体来说都不难。

   prometheus pushgateway 安装配置

  我在机器上安装了docker,直接进行docker的拉取最新版本安装的prometheus,因为我也是一个docker小白,所以也想尝试尝试!

  

  sudo docker run \ -p 9090:9090 \ -v /path/prometheus.yml:/etc/prometheus/prometheus.yml \ prom/prometheus   这里需要我们自己去配置一下yml文件,具体如图:   

 

   其实应该先把gateway先启动起来的,不过无妨。9090默认prometheus的端口,9091 pushgateway的端口。这里注意的是每个配置的上下级的缩进,因为缩进我这里弄了半天感觉没啥错误,结果就是因为没注意缩进导致卡了一下。

  这样prometheus就完成了,我们也启动起来了。通过9090端口访问,可以看到prometheus服务和pushgateway服务都是正常运行,我因为刚才也说到了应该先启动gateway的,如果你先启动prometheus,可能pushgateway现在不是绿色的状态。

  

 

 

  安装pushgateway很简单,就是docker一个命令搞定。      sudo docker pull prom/pushgateway   sudo docker run -d -p 9091:9091 --name pushgateway prom/pushgateway      然后通过9191访问界面。至此我们就完成了安装,然后就是去配置flink。  

  flink 配置

    打开flink flink-conf.yaml,安装官网配合我们的上报地址:   

 

    上报完毕以后,因为prometheus是一个插件,所以没有直接在flink的lib中,但是plugins中已经提供了对应jar,找到以后放到lib中。

  cp plugins/metrics-prometheus/flink-metrics-prometheus-1.12.5.jar lib/

  这样我们启动的时候flink run的时候会去加载我们的jar包,这样简单的链路就通了。我们自己flink任务是通过streamx进行管理提交的采用的是application模式。作业提交完毕以后,我们再从9090端口查看,如果有flink开头的指标,这样整条链路就通了。

  

 

  总结

    不管是prometheus还是docker,这些都是自己第一次尝试用于正式环境,以及第一次用。所以想记录一下这个过程,过程很简单,但是还是要操作一下,关键点就是想明白prometheus那个架构图。有哪里说的不对的地方,还希望大家帮忙指出来,一起每天进步一点点!!!底端英语翻译来自今天听的《樊登读书》介绍翻译家许渊冲老先生,借此纪念一下许老!

 

    From hill to hill no bird in flight; From path to path no man in sight.
    A lonely fisherman afloat , Is fishing snow in lonely boat.                          -- 《江雪》柳宗元 许渊冲译

 

 

 

标签:flink,9090,prometheus,pushgateway,监控,docker,gateway
From: https://www.cnblogs.com/hackerxiaoyon/p/16650172.html

相关文章

  • 从“数字工厂”到“物联工厂”5G+智慧工厂数据采集监控方案
    近年来,我国高度重视智能制造产业发展,政策举措密集出台,为资金、技术、支撑平台等提供源源不断的政策支持,推进新一代信息技术和制造业融合发展。以智慧工厂为例,作为......
  • 使用docker-compose搭建flink集群
    第一步:安装docker和docker-compose并赋予权限第二步:利用docker-compose构建容器1version:"2.1"2services:3jobmanager:4image:flink:1.9.2-scal......
  • 前端监控系统那些事儿之数据采集
    为什么要搭建前端监控系统通常我们建立搭建前端监控体系,主要是解决两个问题:如何发现问题如何快速定位并解决问题在用户量很大的情况下,我们需要用一个这样一个工具来......
  • 项目实战——企业级Zabbix监控实战(一)
    项目实战——企业级Zabbix监控实战实验一:Zabbix监控的搭建1、实验准备centos系统服务器3台、一台作为监控服务器,两台台作为被监控节点,配置好yum源、防火墙关闭......
  • 基于服务器资源监控程序增加一键关机
    增加一键关机按钮#一键关机self.Shutdown_btn=wx.Button(self.panel1,-1,"一键关机",pos=(950,20),size=(70,70))#前景格式......
  • 部署zabbix监控服务
    部署zabbix监控服务目录部署zabbix监控服务什么是zabbixzabbix的特点zabbix的配置文件部署zabbixzabbix服务端安装准备工作数据库操作恢复数据(必须按照schemaimagesdat......
  • Zabbix监控服务
    Zabbix监控服务目录Zabbix监控服务一、zabbix介绍二、zabbix特点zabbix的主要特点:zabbix主要功能(监控指标):zabbix监控范畴三、zabbix配置文件zabbix配置文件有两种:四、......
  • 监控服务zabbix部署
    zabbix介绍zabbix是由AlexeiVladishev开发的一种网络监视、管理系统,基于Server-Client架构。可用于监视各种网络服务、服务器和网络机器等状态。使用各种Database-end......
  • 7.2 zabbix实现Mysql的监控
    7.2zabbix实现Mysql的监控监控MySQL连接数、主从同步、同步延迟等。一:实现MySQL主从1.1:MySQLMastermysql-server-5.7.xx:vim/etc/mysql/mysql.conf.d/mysqld.cnf[......
  • 7.1 zabbix实现Nginx的监控
    7.实现Nginx、Mysql的监控7.1zabbix实现Nginx的监控脚本:nginx_status.sh模板:nginx-template-magedu-jiege.xml对nginx的活动连接和当前状态等运行状态进行监控配置示......