ConsulManager应用场景2:如何优雅的使用Consul管理Blackbox站点监控
【ConsulManager介绍】
Consul字段设计说明
- 所有数据存在一个名为
blackbox_exporter的Services项中,每个监控目标为一个子Service。 - 每个Service使用Meta的kv保存监控目标的属性:
module,company,project,env,name,instance,分别表示:监控类型,公司部门,项目,环境,名称,实例url。 - 新增监控时,监控类型字段(
module)和Blackbox配置中的module必须保持一致。 - 前5个字段合并即为consul的serviceID,作为唯一监控项标识
配置Prometheus与Blackbox
原理:基于Consul实现Prometheus的自动发现功能配置
- 把Consul每个service的Meta的KV关联到Prometheus每个指标的标签。
- 根据每个指标的标签来对监控目标分类,分组,方便管理维护。
1. 配置Blackbox_Exporter
- 在Web页面点击
Blackbox 站点监控/Blackbox 配置,点击复制配置。 - 编辑blackbox_exporter的
blackbox.yml,清空已有的配置,把复制的内容粘贴进去,重启blackbox_exporter。
2. 配置Prometheus
- 在Web页面点击
Blackbox 站点监控/Prometheus 配置,点击复制配置。 - 编辑Prometheus的
prometheus.yml,把复制的内容追加到最后,reload或重启Prometheus。
3. 配置Prometheus告警规则
- 在Web页面点击
Blackbox 站点监控/告警规则,点击复制配置。 - 编辑Prometheus的
rules.yml,把复制的内容追加到最后,reload或重启Prometheus。
4. 查看Prometheus
- 在Prometheus的Web页面中,点击Status-Targets,能看到新增的Job即表示数据同步到Prometheus。
5. 导入Blackbox Exporter Dashboard
- 支持Grafana 8,基于blackbox_exporter 0.19.0设计
- 采用图表+曲线图方式展示TCP,ICMP,HTTPS的服务状态,各阶段请求延时,HTTPS证书信息等
- 优化展示效果,支持监控目标的分组、分类级联展示,多服务同时对比展示。
- 导入ID:9965
- 详细URL:https://grafana.com/grafana/dashboards/9965
批量导入脚本
在units目录下instance.list中写入监控目标的信息:JOB名称,公司/部门,项目,环境,名称,实例url,每行一个,空格分隔。
注意:前5个字段组合起来必须唯一,作为一个监控项的ID。即Consul的ServiceID
修改units目录下导入脚本中的consul_token和consul_url,保存后执行input.py,即可导入所有监控目标到Consul,并符合Prometheus的自动发现配置。
ConsulManager应用场景2:如何优雅的使用Consul管理Blackbox站点监控的更多相关文章
- 不使用三方包时,如何在ThinkSNS中建立优雅的用户权限管理
什么是ThinkSNS ? ThinkSNS(简称TS),一款全平台综合性社交系统,为国内外大中小企业和创业者提供社会化软件研发及技术解决方案,目前最新版本为ThinkSNS+(简称TS+).Thin ...
- 强大而优雅,API 研发管理 EOLINKER 新版正式发布!
EOLINKER 于2019年3月3日正式发布新版本!该版本大幅强化各个产品的功能.着重优化了全站的用户交互体验,并且EOLINKER AMS 产品正式更名为 EOLINKER API Studio ...
- Redux/Mobx/Akita/Vuex对比 - 选择更适合低代码场景的状态管理方案
近期准备开发一个数据分析 SDK,定位是作为数据中台向外输出数据分析能力的载体,前端的功能表现类似低代码平台的各种拖拉拽.作为中台能力的载体,SDK 未来很大概率会需要支持多种视图层框架,比如Vue2 ...
- Java 技术栈中间件优雅停机方案设计与实现全景图
欢迎关注公众号:bin的技术小屋,阅读公众号原文 本系列 Netty 源码解析文章基于 4.1.56.Final 版本 本文概要 在上篇文章 我为 Netty 贡献源码 | 且看 Netty 如何应对 ...
- cocos2d-x 帧循环不严谨造成场景切换卡顿
最近在用cocos2d-x做引导界面,2dx版本是2.2.3,场景切换加上了效果,所有资源都已经使用texturepacker打包预加载,但是在实际运行调试中,场景切换相当卡顿. 各种纠结后,无意中将 ...
- NGUI 多场景情况下 管理多个界面
简单的说就是在一个AllUI场景中,所有场景所需要的界面都挂在一个Empty GameObject下,然后这个Empty GameObject在代码中DontDestroyOnLoad,但是回到这个A ...
- zookeeper适用场景:如何竞选Master及代码实现
问题导读:1.如何利用zookeeper保证集群Master可用性和唯一性?2.zookeeper竞选Master包含哪些过程?3.zookeeper竞选Master机制利用了zk哪些特性? 在zoo ...
- Firefly的角色跳转场景简单示例
源地址:http://bbs.9miao.com/thread-45790-1-2.html 本例演示的是模拟游戏服务端,让角色在场景1中跳转到场景2中.在实际游戏中,client将要跳转的角色id和 ...
- cocos 场景制作流程
前面的话 本文将详细介绍 cocos 场景制作流程 节点和组件 Cocos Creator 的工作流程是以组件式开发为核心的,组件式架构也称作组件-实体系统,简单的说,就是以组合而非继承的方式进行实体 ...
- Java中NIO和IO区别和适用场景
NIO是为了弥补IO操作的不足而诞生的,NIO的一些新特性有:非阻塞I/O,选择器,缓冲以及管道.管道(Channel),缓冲(Buffer) ,选择器( Selector)是其主要特征. 概念解释: ...
随机推荐
- 在程序里面执行system(“cd /某个目录“),为什么路径切换不成功?
粉丝提问: 彭老师,问下,在程序里面执行system("cd /某个目录"),这样会切换不成功,为啥呢 实例代码: 粉丝的疑惑是明明第10行执行了cd /media操作, 为什么1 ...
- 闲鱼卖2000元的带腾讯备案的 gaapqcloud.com.cn 域名低成本获取方法!
最近在闲鱼看到有人卖域名,声称是腾讯的备案,还卖1000多元!逆天了!这个信息差是真能割韭菜,我一查,这不就是腾讯云的全球应用加速域名吗?????这样也能赚到钱?? 获取方法 进入腾讯云全球应用加速 ...
- 用GDI+旋转多边形来绘制一个时钟摸拟小程序
效果图 在头文件类中声明变量 TCHAR m_dayStr[4]; // 日期 TCHAR m_weekStr[4]; // 星期 Gdiplus::Font* m_pFont; // 字体 Gdip ...
- maven 打包 pom build
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframew ...
- android ImageView 设定宽度铺满,高度自定义
问题:imageView 宽度铺满,高度自定义,会出现上下留白的现象(一般比例的还好) 解决: <xxx.xxx.xxx.xxx.FullWidthImageView android:id=&q ...
- Coursera, Big Data 5, Graph Analytics for Big Data, Week 4
Graph Analytics With Neo4j 讲了怎样用Cypher 脚本语言去操作 Neo4j, 包括加graph, 导入csv数据. 接着讲了一些neo4j 的基本操作. 最后讲的,pat ...
- VS Code – Keyboard Shortcuts
前言 记入一些自己常用到的 Keyboard Shortcuts 和 Extensions. Keyboard Shortcuts undo redo 鼠标坐标:shift + left/right ...
- CSS – Tailwind CSS
前言 很多时候 CSS 未必是需要管理的, 比如做网站, Landing Page (类似宣传单). 很多时候做了 > 用了 > 丢 > 再做新的. 它没有 "维护&quo ...
- SQL Server CTE (Common Table Expression) 公用表表达式
参考: Sql - CTE公用表表达式和With用法总结 YouTube – SQL WITH Clause | How to write SQL Queries using WITH Clause ...
- Go runtime 调度器精讲(八):sysmon 线程和 goroutine 运行时间过长的抢占
原创文章,欢迎转载,转载请注明出处,谢谢. 0. 前言 在 Go runtime 调度器精讲(七):案例分析 一文我们介绍了一个抢占的案例.从案例分析抢占的实现,并未涉及到源码层面.本文将继续从源码入 ...