监控系统Prometheus--与第三方框架集成

文章目录

  • Prometheus和Flink集成
    • 拷贝jar包
    • 修改Flink配置
    • 为了运行测试程序,启动netcat
    • 启动hdfs、yarn,提交flink任务到yarn上
    • 可以通过8088跳到flinkUI的job页面,查看指标统计
    • 刷新Prometheus页面,如果有flink指标,集成成功
  • Prometheus和Grafana集成
    • 上传并解压
    • 启动Grafana
    • 添加数据源Prometheus
    • 手动创建仪表盘Dashboard
    • 直接添加模板
    • 配置案例
  • 组件启停脚本
  • Prometheus集成第三方告警平台睿象云
    • 注册睿象云账号
    • 集成Grafana
    • 配置分派策略
    • 配置通知策略

Prometheus和Flink集成

Flink 提供的 Metrics 可以在 Flink 内部收集一些指标,通过这些指标让开发人员更
好地理解作业或集群的状态。由于集群运行后很难发现内部的实际状况,跑得慢或快,是否
异常等,开发人员无法实时查看所有的 Task 日志。比如作业很大或者有很多作业的情况
下,该如何处理?此时 Metrics 可以很好的帮助开发人员了解作业的当前状况。

Flink官方支持Prometheus,并且提供了对接
Prometheus 的jar 包,很方便就可以集成。

拷贝jar包

拷贝新的flink目录,flink-prometheus

将flink-metrics-prometheus-1.12.0.jar 拷贝到 <flink_home>/lib 目录下

[yudan@hadoop102 flink-prometheus]$ cp /opt/module/flink-prometheus/plugins/metrics-prometheus/flink-metrics-prometheus-1.12.0.jar /opt/module/flink-prometheus/lib/ 

Flink 的 Classpath 位于 lib 目录下,所以插件的jar包需要放到该目录下

修改Flink配置

进入到Flink的conf目录,修改flink-conf.yaml

[yudan@hadoop102 conf]$ vim flink-conf.yaml

添加如下配置:

##### 与Prometheus 集成配置 ##### 
metrics.reporter.promgateway.class: 
org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter 
# PushGateway 的主机名与端口号 
metrics.reporter.promgateway.host: hadoop202 
metrics.reporter.promgateway.port: 9091 
# Flink metric 在前端展示的标签(前缀)与随机后缀 
metrics.reporter.promgateway.jobName: flink-metrics-ppg
metrics.reporter.promgateway.randomJobNameSuffix: true 
metrics.reporter.promgateway.deleteOnShutdown: false 
metrics.reporter.promgateway.interval: 30 SECONDS 

为了运行测试程序,启动netcat

[yudan@hadoop102 sbin]$ nc -lk 9999 

启动hdfs、yarn,提交flink任务到yarn上

[yudan@hadoop102 flink-prometheus]$ bin/flink run -t yarn-per-job -c com.yudan.flink.chapter02.Flink03_WordCount_UnboundStream ./flink-base-1.0-SNAPSHOT-jar-with-dependencies.jar 

可以通过8088跳到flinkUI的job页面,查看指标统计

刷新Prometheus页面,如果有flink指标,集成成功

在这里插入图片描述

Prometheus和Grafana集成

grafana 是一款采用Go语言编写的开源应用,主要用于大规模指标数据的可视化展现,
是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数
据库。下载地址:https://grafana.com/grafana/download

上传并解压

将grafana-8.1.2.linux-amd64.tar.gz 上传至/opt/software/目录下,解压:

[yudan@hadoop102 software]$ tar -zxvf grafana-enterprise-8.1.2.linux-amd64.tar.gz -C /opt/module/ 

启动Grafana

[yudan@hadoop102 grafana-8.1.2]$ nohup ./bin/grafana-server web > ./grafana.log 2>&1 & 

打开web:http://hadoop102:3000,默认用户名和密码:admin

添加数据源Prometheus

点击配置,点击Data Sources:
在这里插入图片描述
点击添加按钮:

找到Prometheus,点击Select

配置Prometheus Server地址:
在这里插入图片描述
点击下方的Save&Test:

出现绿色的提示框,表示与Prometheus正常联通:

点击Back返回即可,可以看到Data Sources页面,出现了添加的Prometheus:

手动创建仪表盘Dashboard

点击左边栏的 “+”号,选择Dashboard:

添加新的仪表板,点击Add an empty panel:

配置仪表板监控项:
在这里插入图片描述
一个仪表板可以配置多个监控项,添加其他监控项:

直接添加模板

手动一个个添加Dashboard比较繁琐,Grafana社区鼓励用户分享Dashboard,通过https://grafana.com/dashboards网站,可以找到大量可直接使用的Dashboard模板。

Grafana 中所有的Dashboard通过JSON进行共享,下载并且导入这些JSON文件,
就可以直接使用这些已经定义好的Dashboard:

下载好对应的模板后

点击Grafana界面左侧 ”+”号,选择import:

在这里插入图片描述
上传JSON文件:

配置模板信息:

导入完,在首页即可看见添加的仪表盘

正常提交job,即可在grafana看到相关监控项的情况。

注意:代码里env.execute(“作业名”),最好指定不同的作业名用于区分,不指定会使用默
认的作业名:Flink Streaming Job,在Grafana页面就无法区分不同job!!!

配置案例

组件启停脚本

进入到/home/yudan/bin目录下,创建脚本prometheus-monitor.sh

#!/bin/bash 
case $1 in 
"start"){ echo '----- 启动 prometheus -----' nohup /opt/module/prometheus-2.29.1/prometheus --web.enable-admin-api --config.file=/opt/module/prometheus-2.29.1/prometheus.yml > /opt/module/prometheus-2.29.1/prometheus.log 2>&1 & echo '----- 启动 pushgateway -----' nohup /opt/module/pushgateway-1.4.1/pushgateway --web.listen-address :9091 > /opt/module/pushgateway-1.4.1/pushgateway.log 2>&1 & echo '----- 启动 grafana -----' nohup /opt/module/grafana-8.1.2/bin/grafana-server --homepath /opt/module/grafana-8.1.2 web > /opt/module/grafana-8.1.2/grafana.log 2>&1 & 
};; 
"stop"){ echo '----- 停止 grafana -----' pgrep -f grafana | xargs kill echo '----- 停止 pushgateway -----' pgrep -f pushgateway | xargs kill echo '----- 停止 prometheus -----' pgrep -f prometheus | xargs kill 
};; 
esac 

脚本添加执行权限

[yudan@hadoop102 bin]$ chmod +x prometheus-monitor.sh

Prometheus集成第三方告警平台睿象云

邮件通知常会出现接收不及时的问题,为确保通知信息被及时接收,可通过配置Prometheus 或者Grafana 与第三方平台告警平台(例如睿象云)集成,进而通过第三方平台提供的多种告警媒介(例如电话,短信)等发送告警信息。

注册睿象云账号

集成睿象云之前须在其官网进行注册并登录,注册时需填入个人手机号和电子邮箱,以下是其官方网站https://www.aiops.com。

集成Grafana

  1. 点击CA智能告警平台

  2. 点击集成

  3. 选择Grafana

  4. 填入应用名称,并点击“保存并获取应用key

  5. 得到AppKey之后,配置Grafana

  6. 在Grafana中创建Notification channel
    在这里插入图片描述

  7. 配置channel
    在这里插入图片描述

  8. Test&Save 测试后会接到电话以及邮件
    在这里插入图片描述

配置分派策略

分派策略可以配置,哪些应用的告警信息,发送给哪些用户

  1. 点击“配置”→“分派策略”→“新建分派”
    在这里插入图片描述

  2. 配置具体分派策略

配置通知策略

通知策略,可以配置被分派人接收告警的通知方式,通知时间,通知延时等等。

1)点击“配置”→“通知策略”→“新建通知”

2)配置具体的通知策略
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/823668.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux线程的同步

目录 1.死锁概念 2.接口 3.代码展示 1.死锁概念 死锁的四个必要条件&#xff08;必须同时满足&#xff09;&#xff1a; 1.互斥条件&#xff1a;一个资源每次只能被一个执行流使用&#xff08;前提&#xff09;。 2.请求与保持条件&#xff1a;一个执行流因请求资源而堵塞…

PHP 生成压缩包、读取压缩包

1. PHP 生成压缩包 下面是 PHP 将本地文件生成压缩包的核心代码&#xff0c;在此基础上可进行扩展封装 // 压缩包名称$name test.zip;// 创建压缩包对象$zip new ZipArchive;// 打开压缩包$zip->open($name, ZipArchive::CREATE);// 本地文件绝对路径$path __DIR__ . /In…

如何查看Postman的版本信息?

如何查看Postman的版本信息 一、为何需要查看版本信息&#xff1f;二、查看Postman的版本信息的步骤 一、为何需要查看版本信息&#xff1f; 不同的版本之间可能存在功能和界面的差异。 二、查看Postman的版本信息的步骤 1、打开 Postman 2、打开设置项 点击页面右上角的 “…

41.缺失的第一个正数

题目描述 给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的正整数。请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。示例 1&#xff1a;输入&#xff1a;nums [1,2,0] 输出&#xff1a;3 解释&#xff1a;范围 [1,2] 中的数字都在…

clipper一些数据结构(入门初识(一))

clipper一些数据结构&#xff08;一&#xff09; Clipper库是一个用于执行多边形裁剪&#xff08;clipping&#xff09;和偏移&#xff08;offsetting&#xff09;操作的开源C库。在Clipper库中&#xff0c;点和多边形&#xff08;polygon&#xff09;是基本的数据结构。Clipp…

Spring-tx事务管理

第五章 Spring声明式事务 一 声明式事务概念 1.1 编程式事务 手动编写程序来管理事务&#xff0c;即通过编写代码的方式来实现事务的提交&#xff0c;和回滚。 1.2 声明式事务 声明式事务是指使用注解或配置文件来控制事务的提交和回滚。 开发者只需要添加注解或者配置文…

陇剑杯 流量分析 webshell CTF writeup

陇剑杯 流量分析 链接&#xff1a;https://pan.baidu.com/s/1KSSXOVNPC5hu_Mf60uKM2A?pwdhaek 提取码&#xff1a;haek目录结构 LearnCTF ├───LogAnalize │ ├───linux简单日志分析 │ │ linux-log_2.zip │ │ │ ├───misc日志分析 │ │ …

[SWPUCTF 2021 新生赛]error

如果 flag 只出现一半&#xff0c;用substr(A,B,C) 查询flag 1 and (select extractvalue(1,concat(~,(select substr((select flag from test_tb), 1 , 31))))) # 0-30位 左边30位 1and (select extractvalue(1,concat(~,(select substr((select flag from test_tb), 31 , 6…

vivado 设置 VIO 核以执行测量、查看 VIO 核状态

设置 VIO 核以执行测量 您添加到自己的设计中的 VIO 核会显示在“硬件 (Hardware) ”窗口中的目标器件下。如果未显示这些 VIO 核 &#xff0c; 请右键 单击器件并选择“ Refresh Hardware ”。这样将重新扫描 FPGA 或 ACAP 并刷新“ Hardware ”窗口。 注释 &#xff…

阿里云4核8G云服务器价格多少钱?700元1年

阿里云4核8G云服务器价格多少钱&#xff1f;700元1年。阿里云4核8G服务器租用优惠价格700元1年&#xff0c;配置为ECS通用算力型u1实例&#xff08;ecs.u1-c1m2.xlarge&#xff09;4核8G配置、1M到3M带宽可选、ESSD Entry系统盘20G到40G可选&#xff0c;CPU采用Intel(R) Xeon(R…

Java面试必问题41:SpringCloud五大组件是哪几个 SpringCloud 和 SpringBoot 的区别和关系

SpringCloud五大组件是哪几个 Spring Cloud是一个用于构建分布式系统的开发工具包&#xff0c;它提供了一系列组件来简化分布式系统的开发和管理。以下是Spring Cloud中的五个核心组件&#xff1a; 1. 服务注册与发现&#xff08;Eureka&#xff09;&#xff1a;Eureka是一个用…

【AcWing】蓝桥杯集训每日一题Day28|组合计数|二项式定理|杨辉三角|211.计算系数(C++)

211.计算系数 211. 计算系数 - AcWing题库难度&#xff1a;简单时/空限制&#xff1a;1s / 64MB总通过数&#xff1a;3703总尝试数&#xff1a;7790来源&#xff1a;《算法竞赛进阶指南》NOIP2011提高组算法标签二项式定理组合计数 题目内容 给定一个多项式 ( a x b y ) k …

Eigen库从入门到放弃(1. VSCode配置及Eigen下载和安装)

最近在做后处理的事情。每次看到Python那么酷炫的切片、矩阵乘法、广播&#xff0c;再看看C&#xff0c;我就陷入无尽痛苦。为什么Numpy没有C版本&#xff0c;为什么后处理都是手撸&#xff0c;Eigen库有很多方法可以平替Numpy&#xff0c;但是我不是很了解&#xff0c;都是现查…

久吾高科技股份有限将莅临2024第13届生物发酵展

参展企业介绍 江苏久吾高科技股份有限公司成立于1997年&#xff0c;是一家专注从事新材料研发与整体解决方案的高科技企业。2017年3月在深交所A股创业板上市。公司是首批认定的guojiaji高新技术企业、国家专精特新“小巨人”企业、国家制造业单项、中国膜行业陶瓷膜领域龙头企…

使用vite从头搭建一个vue3项目(三)vite.config.js配置

目录 一、声明环境变量配置文件二、vite.config.js基础配置1、defineConfig()、loadEnv()2、plugins配置项3、server配置项4、resolve配置项5、css配置项6、build配置项 三、vite.config.js配置完整代码 VITE版本&#xff1a;v5.2.8 一、声明环境变量配置文件 在根目录下新建…

pta L1-045 宇宙无敌大招呼

L1-045 宇宙无敌大招呼 分数 5 全屏浏览 切换布局 作者 陈越 单位 浙江大学 据说所有程序员学习的第一个程序都是在屏幕上输出一句“Hello World”&#xff0c;跟这个世界打个招呼。作为天梯赛中的程序员&#xff0c;你写的程序得高级一点&#xff0c;要能跟任意指定的星球…

Qt 系统相关

这里写目录标题 Qt 事件事件介绍事件的处理按键事件单个按键组合按键 ⿏标事件⿏标单击事件⿏标释放事件⿏标双击事件⿏标移动事件滚轮事件 定时器QTimerEvent 类QTimer 类获取系统⽇期及时间 事件分发器概述事件分发器⼯作原理 事件过滤器 Qt ⽂件Qt ⽂件概述输⼊输出设备类⽂…

GPT国内怎么用?4月最新版本来了

ChatGPT镜像 今天在知乎看到一个问题&#xff1a;“平民不参与内测的话没有账号还有机会使用ChatGPT吗&#xff1f;” 从去年GPT大火到现在&#xff0c;关于GPT的消息铺天盖地&#xff0c;真要有心想要去用&#xff0c;途径很多&#xff0c;别的不说&#xff0c;国内GPT的镜像…

HarmonyOS开发实例:【任务延时调度】

介绍 本示例使用[ohos.WorkSchedulerExtensionAbility] 、[ohos.net.http]、[ohos.notification] 、[ohos.bundle]、[ohos.fileio] 等接口&#xff0c;实现了设置后台任务、下载更新包 、保存更新包、发送通知 、安装更新包实现升级的功能。 效果预览 使用说明 安装本应用之…

数字乡村探索:引领农村未来发展新方向——科技创新赋能乡村现代化与农民生活品质提升之旅

目录 一、数字乡村的内涵与特点 二、数字乡村的探索进展 三、数字乡村面临的挑战与机遇 四、数字乡村的未来发展方向与路径 五、数字乡村助力农村产业升级 六、数字乡村促进城乡融合发展 七、数字乡村激发农民创新创业活力 八、数字乡村提升农民获得感和幸福感 九、展…