当前位置: 首页 > news >正文

【运维监控】Prometheus+grafana监控zookeeper运行情况

  • 运维监控系列文章入口:【运维监控】系列文章汇总索引

文章目录

  • 一、prometheus
  • 二、grafana
  • 三、prometheus集成grafana监控zookeeper
    • 1、修改zookeeper配置
    • 2、修改prometheus配置
    • 3、导入grafana模板
    • 4、验证


  • 本示例通过zookeeper自带的监控信息暴露出来,然后将数据收集到prometheus中,最后通过grafana的dashboard导入模板进行可视化。
  • 本示例分为三个部分,即prometheus、grafana部署和最后的集成。
  • 说明:本示例中的部署环境没有要求,即应用部署的机器根据实际情况而定,只要网络连通即可。

一、prometheus

参考:【运维监控】prometheus+node exporter+grafana 监控linux机器运行情况关于prometheus的部署。

二、grafana

参考:【运维监控】prometheus+node exporter+grafana 监控linux机器运行情况 关于grafana的部署。

三、prometheus集成grafana监控zookeeper

为了更加方便的集成prometheus,建议使用3.6.0以后的版本,因为这个版本以后zookeeper加入了prometheus集成监控,只需要开启zookeeper的指标配置即可。在这个版本之前的zookeeper,可能需要通过JMX进行监控。

本示例使用的版本是zookeeper 3.7.1,也是比较老的版本了,最新的版本是3.9.2。

1、修改zookeeper配置

在你原有的配置文件zoo.cnf内容的基础上,启用zookeeper的指标配置。如果是集群环境,则需要每个zookeeper的配置文件都需要修改。

cd /apache-zookeeper-3.7.1/conf
vim zoo.cnf
# 启用以下三个属性值即可
## Metrics Providers
#
# https://prometheus.io Metrics Exporter
metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
metricsProvider.httpPort=7000
metricsProvider.exportJvmInfo=true

2、修改prometheus配置

在prometheus的配置文件(prometheus.yml)中添加如下配置部分。作者的zookeeper是集群环境,即部署在server1、server2和server3服务器上。

  - job_name: "zookeeper-monitor"static_configs:- targets: ["server1:7000","server2:7000","server3:7000"]

重启prometheus后,并验证是否收集到监控信息。
查看Prometheus是否监控到运行的zookeeper应用如下图。
在这里插入图片描述
查看prometheus是否收集到监控信息如下图(查询jvm_threads_state{state=“NEW”, job=“zookeeper-monitor”})
在这里插入图片描述

3、导入grafana模板

导入过程不再赘述,参考文章:【运维监控】Prometheus+grafana监控tomcat8.5 运行情况
本示例导入的模板ID是10465(ZooKeeper by Prometheus)。

4、验证

以上所涉及的服务均能正常的运行,以及验证都通过。
点击添加的zookeeper模板,选择zookeeper集群,则显示如下图所示。
在这里插入图片描述
以上,则完成了Prometheus+grafana监控zookeeper运行情况的示例。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 虚拟背景扣像SDK解决方案,电影级抠像技术
  • 交叉编译工具链的安装及带wiringPi库的交叉编译实现
  • xshell密钥方式连接阿里云Linux
  • 【数据结构】2——二叉树遍历
  • ThinkCMF框架任意内容包含漏洞的讲解
  • ⭐Unity 安卓环境中正确地读取和处理 XML 文件
  • OpengGL教程(三)---使用VAO和VBO方式绘制三角形
  • python学习第九节:爬虫实战-抓取地址库
  • BMC+ssh和共享平台的Ironic服务,实现裸金属服务器的远程管理与调用
  • Java8 流的简单介绍
  • 如何防止ZIP压缩文件被随意打开?
  • 洞悉地下寒潮,守护温暖家园:智能CG-68冻土传感器监测系统
  • Windows 环境下 vscode 配置 C/C++ 环境
  • Vue3+setup实现父子组件单表增删改查写法模板
  • 掌握MATLAB中的数据类型转换技巧
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • egg(89)--egg之redis的发布和订阅
  • JAVA SE 6 GC调优笔记
  • Java新版本的开发已正式进入轨道,版本号18.3
  • java中的hashCode
  • js中的正则表达式入门
  • MaxCompute访问TableStore(OTS) 数据
  • Python打包系统简单入门
  • Python语法速览与机器学习开发环境搭建
  • Redux 中间件分析
  • vue.js框架原理浅析
  • Web设计流程优化:网页效果图设计新思路
  • 动态规划入门(以爬楼梯为例)
  • 给第三方使用接口的 URL 签名实现
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 使用API自动生成工具优化前端工作流
  • 使用common-codec进行md5加密
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • 优秀架构师必须掌握的架构思维
  • ​ArcGIS Pro 如何批量删除字段
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • ‌移动管家手机智能控制汽车系统
  • # centos7下FFmpeg环境部署记录
  • # 飞书APP集成平台-数字化落地
  • #在线报价接单​再坚持一下 明天是真的周六.出现货 实单来谈
  • (04)odoo视图操作
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (八)Flink Join 连接
  • (九)信息融合方式简介
  • (五)关系数据库标准语言SQL
  • (原創) 物件導向與老子思想 (OO)
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • .cn根服务器被攻击之后
  • .config、Kconfig、***_defconfig之间的关系和工作原理
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .Net core 6.0 升8.0
  • .net core 的缓存方案
  • .NET 材料检测系统崩溃分析