直击运维痛点,大数据计算引擎 EasyMR 的监控告警设计优化之路

news2024/12/24 22:09:40

当企业的业务发展到一定的阶段时,在系统中引入监控告警系统来对系统/业务进行监控是必备的流程。没有监控或者没有一个好的监控,会导致开发人员无法快速判断系统是否健康;告警的实质则是“把人当服务用”,用告警通知人的方式去干预系统达到修正的目的。

监控告警在企业保障系统的稳定性和事故快速恢复的全周期链路中都是至关重要的一环。在新版本的 EasyMR 中袋鼠云开发团队也对监控告警功能进行了全新的优化,通过本文和大家分享一下监控告警功能的设计思路以及碰到各类问题痛点的解决方法。

EasyMR 监控告警设计

对于 EasyMR 的监控告警设计思路,考虑到 Zabbix 后端数据库使用 MySQL 对监控数据进行存储,无法满足多维度化的告警。而 openfalcon 整体架构上吸取了 Zabbix 的经验,解决了 Zabbix 的不足之处,但是社区活跃度不高。

所以我们选择了集成 Prometheus+Grafana 的解决方案搭建 EasyMR 的监控系统,这套解决方案是目前主流的方案,使用的人群较多,在推广使用上会降低门槛而且容易维护,也适合袋鼠云平台的容器化部署。整体架构图如下:

file

首先我们在这套平台的基础上增加了一个 dt-alert 组件用来对接第三方的告警发送的处理,其次我们对 Grafana 进行了少量的二次开发。开发的内容主要在于打通 EasyMR 平台的告警通道和 Grafana 上的通道的对接,平台接入好主机和部署好服务后 Prometheus 就能通过服务发现的方式完成目标抓取作业的生成获取监控数据。

Grafana 从 Prometheus 中获取指标数据进行展示,同时触发告警时将告警内容发到 dt-alert 组件中,dt-alert 组件将告警信息发往第三方平台上。

EasyMR 监控告警痛点

基于上述告警监控的解决方案是否就是一个非常完美的方案呢,答案当然是否定的,接下来我们就讨论一下在使用此方案的过程中遇到的问题和痛点:

● 低版本 Grafana 漏洞频发

低版本 Grafana 漏洞频发,导致平台安全问题受到很大的挑战。漏洞是指计算机系统安全方面的缺陷,会使得系统或其应用数据的保密性、完整性、可用性、访问控制等方面面临威胁。由于早期版本的 EasyMR 是基于 Grafana5.3 版本做的二次开发,所以被扫描出来的漏洞非常多,遇到相应漏洞时只能想办法规避。

● 缺少分级告警

缺少分级告警,无法区分不同严重程度的告警。对于运维人员来说,监控告警是用来发现故障用的,但是存在一个问题,如果一个系统中所有的告警都是同一个级别,那么出现问题时,可能会同时出现很多的告警,告警没有分级不光会造成告警过多,还会让开发人员无法区分优先级,导致无法优先处理更紧急的问题。

● 无法对同一个仪表盘设置多条告警规则

由于我们是使用 Grafana 来设置告警规则,在老版本中同一个 panel 只能设置一条告警规则,如果我们想针对同一个监控指标设置多个告警规则的话只能新建一个相同指标的 panel 再设置新的告警规则,这在使用上来说是非常不便利的。

EasyMR 监控告警优化解决方案

基于以上三点痛点,袋鼠云开发团队在新版本的 EasyMR 中,将 Grafana 版本从 5.3.x 升级到了 8.5.x,新版本可以非常顺利地解决上述问题。基于新版本的二开前后端为了将 Grafana 很好的嵌入 EasyMR 产品页面中,做了很多的优化工作,包括但不限于隐藏侧边栏、隐藏 Grafana 一级菜单、取消 title 点击事件隐藏相关信息等等。

● 优化前

file

● 优化后

file

如何配置 EasyMR 新版本告警规则

接下来给大家详细介绍一下如何配置新版本 EasyMR 的告警规则。

● 选中仪表盘

选择仪表盘,以 cpu_usage 告警为例,选中 Host_Overview。

file

● 选中面板

在 System->cpu_usage 面板中点击下拉菜单,选中 Edit 选项。

file

● 创建告警

选中 Alert 项,点击创建告警规则。

file

编辑告警规则,告警参数参考如下模板,参数确认无误后点击保存。

file file

● 自定义告警模板

以 Redis 告警为例,在 Prometheus 查询的值为:

file

自定义模板可以引用标签和值变量:

file

钉钉告警示例如下:

file

《数栈产品白皮书》:https://www.dtstack.com/resources/1004?src=szsm

《数据治理行业实践白皮书》下载地址:https://www.dtstack.com/resources/1001?src=szsm

想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:https://www.dtstack.com/?src=szcsdn

同时,欢迎对大数据开源项目有兴趣的同学加入我们,一起交流最新开源技术信息,号码:30537511,项目地址:https://github.com/DTStack

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

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

相关文章

小研究 - 微服务系统服务依赖发现技术综述(二)

微服务架构得到了广泛的部署与应用, 提升了软件系统开发的效率, 降低了系统更新与维护的成本, 提高了系统的可扩展性. 但微服务变更频繁、异构融合等特点使得微服务故障频发、其故障传播快且影响大, 同时微服务间复杂的调用依赖关系或逻辑依赖关系又使得其故障难以被及时、准确…

SVN代码迁移到Git方法

1.在SVN上新增一个项目 一、点击新建项目 二、创建空白项目 三、填入项目信息 四、myProject项目模板创建成功 2.将代码提交到Git 一、新建一个文件夹myProject,将从SVN下载过来的代码复制一份拷贝到该文件夹下,注意:不要把.SVN文件拷…

兴达易控Profinet转Modbus RTU主站模式的配置流程

兴达易控Profinet转Modbus RTU主站网关,能够实现不同协议之间的设备数据传输。这种设备具有高度的可靠性和稳定性,能够满足工业领域对通信设备的严格要求。同时,兴达易控Profinet转Modbus RTU主站还具备简单易用的特点,使用现场能…

安防视频监控平台EasyCVR修改参数提示database or disk is full的原因排查

EasyDarwin开源流媒体视频EasyCVR安防监控平台可提供视频监控直播、云端录像、云存储、录像检索与回看、智能告警、平台级联、云台控制、语音对讲、智能分析等能力。视频监控综合管理平台EasyCVR具备视频汇聚融合能力,平台基于云边端一体化架构,具有强大…

查看内存类型和频率 - Win系统

查看内存类型和频率 - Win系统 问题方法1(推荐):使用命令行方法2:使用CPU-Z方法3:使用AIDA64 问题 我们在为电脑扩充内存时需要提前了解电脑内存的类型和频率,防止内存不兼容,但在设备管理器和…

从零实现深度学习框架——Transformer从菜鸟到高手(一)

引言 💡本文为🔗[从零实现深度学习框架]系列文章内部限免文章,更多限免文章见 🔗专栏目录。 本着“凡我不能创造的,我就不能理解”的思想,系列文章会基于纯Python和NumPy从零创建自己的类PyTorch深度学习框…

Node版本的切换之Window

步骤一:按健winR窗口,键盘输入cmd,然后回车。 步骤二: 输入where node,显示 步骤三:进入node.exe目录,并且删除父目录文件夹即:nodejs文件夹 步骤四:从官网下载版本管理并安装&#…

亚马逊店铺的回款周期是多久?

现如今,开亚马逊店铺可是一个技术活,一旦有一个环节,或者是一件事情没有做好,对整个亚马逊店铺过程中影响都是十分巨大的,不少亚马逊卖家就吃过这方面的亏。 很多亚马逊卖家就是吃亏在这些方面,现在要想开…

线程数突增!领导:谁再这么写就滚蛋!

今天给大家分享一个线上问题引出的一次思考,过程比较长,但是挺有意思。 今天上班把需求写完,出于学习(摸鱼)的心理上skywalking看看,突然发现我们的一个应用,应用内线程数超过900条&#xff0c…

高忆管理:散户可以做空股票吗?散户如何做空?

在美国股市上,投资者能够进行做多操作,也能够进行做空操作,那么,在a股上,散户能够做空股票吗?散户如何做空?下面高忆管理为我们预备了相关内容,以供参考。 在a股市场上,散…

2023年最适合您业务的免费CRM——SaleSmartl

使用免费的CRM软件,例如SaleSmartly,可以协助您更好地发展您的业务,是提高生产力、减少错误、自动化重复性任务和享受交易机会的宝贵工具。您可以将多个渠道的客户信息集中在一个平台上,并允许员工访问,以便给他们分配…

VS+QT+VTK treeView树型结构模型加载隐藏实例

程序示例精选 VSQTVTK treeView树型结构模型加载隐藏实例 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对<<VSQTVTK treeView树型结构模型加载隐藏实例>>编写代码&#xff0c;代码…

gateway过滤器没生效,特殊原因

看这边文章的前提&#xff0c;你要会gateway&#xff0c;知道过滤器怎么配置&#xff1f; 直接来看过滤器&#xff0c;局部过滤器 再来看配置 请求路径 http://127.0.0.1:8080/appframework/services/catalog/catalogSpecials.json?pageindex1&pagesize10&pkidd98…

DAY56:单调栈(二)下一个最大元素Ⅱ(环形数组处理思路)

文章目录 思路写法1完整版环形数组处理&#xff1a;i取模&#xff0c;遍历两遍写法2完整版&#xff08;环形数组推荐写法&#xff09;debug测试&#xff1a;逻辑运算符短路特性result数组在栈口取元素&#xff0c;是否会覆盖原有数值&#xff1f; 给定一个循环数组 nums &#…

spring boot+thymeleaf+semantic ui 分页

参考&#xff1a; https://my.oschina.net/ayyao/blog/898041 后端 springboot 使用&#xff1a; com.github.pagehelper.PageInfo&#xff0c;作为分页对象 <!--引入分页插件--> <dependency><groupId>com.github.pagehelper</groupId><artifa…

[玩转AIGC]如何训练LLaMA2(模型训练、推理、代码讲解,并附可直接运行的kaggle连接)

目录 一、clone仓库二、数据集下载与处理1、数据集下载2、数据集标记化&#xff08;耗时较长&#xff09; 三、修改配置四、开始训练五、模型推理六、train.py训练代码讲解1、导包2、定义模型训练参数与相关设置3、加载模型配置4、迭代生成数据5、模型初始化6、设置自动混合精度…

Bug的严重等级和优先级别与分类

一、 Bug的严重等级定义&#xff1a; 1、 Blocker 即系统无法执行、崩溃或严重资源不足、应用模块无法启动或异常退出、无法测试、造成系统不稳定。 严重花屏内存泄漏 用户数据丢失或破坏系统崩溃/死机/冻结模块无法启动或异常退出严重的数值计算错误功能设计与需求严重不符其…

游戏发烧友、直播、视频创作者推荐,性能怪兽NUC12SNKI7 蝰蛇峡谷

在学校上课的时候一般习惯带着电脑去教室&#xff0c;选用轻薄的办公本或者 Mac整天带着到处跑。但从校园跨入社会后突然发现办公场景慢慢从移动办公转为固定场所的办公&#xff0c;公司因为保密等原因不能带私人电脑进公司&#xff0c;在家用办公本性能又不够用&#xff0c;甚…

UNet 系列:做医学图像分割的任何人,都必须要会使用 nnU-Net

UNet 系列 UNet下采样和上采样跳跃连接 UNet&#xff1a;多层级和多尺度的密集链接nnUNet集成模型预处理训练过程推理后处理4行命令使用 nnUNet 训练自己的医学图像分割模型 UNet 经典的卷积神经网络都很深&#xff0c;越深的卷积层越适合处理大目标的东西&#xff0c;而医学病…

《面试1v1》ElasticSearch基础

&#x1f345; 作者简介&#xff1a;王哥&#xff0c;CSDN2022博客总榜Top100&#x1f3c6;、博客专家&#x1f4aa; &#x1f345; 技术交流&#xff1a;定期更新Java硬核干货&#xff0c;不定期送书活动 &#x1f345; 王哥多年工作总结&#xff1a;Java学习路线总结&#xf…