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

搭建监控系统Prometheus + Grafana

公司有个技术分享会,但是业务忙,没时间精心准备,所以就匆匆忙忙准备分享一下搭建(捂脸哭)。技术含量确实不多,但是分享的知识确实没问题。
以下是搭建过程:

一、讲解 Prometheus

  • Prometheus 最初是 SoundCloud 构建的开源系统监控和报警工具,是一个独立的开源项目,于2016年加入了 CNCF 基金会,作为继 Kubernetes 之后的第二个托管项目。Prometheus 相比于其他传统监控工具主要有以下几个特点:
  • 具有由 metric 名称和键/值对标识的时间序列数据的多维数据模型
  • 有一个灵活的查询语言
  • 不依赖分布式存储,只和本地磁盘有关
  • 通过 HTTP 的服务拉取时间序列数据
  • 也支持推送的方式来添加时间序列数据
  • 还支持通过服务发现或静态配置发现目标
  • 多种图形和仪表板支持
  • Prometheus 由多个组件组成,但是其中有些组件是可选的:
    • Prometheus Server:用于抓取指标、存储时间序列数据
    • exporter:暴露指标让任务来抓
    • pushgateway:push 的方式将指标数据推送到该网关
    • alertmanager:处理报警的报警组件 adhoc:用于数据查询
      大多数 Prometheus 组件都是用 Go 编写的,因此很容易构建和部署为静态的二进制文件。下图是 Prometheus 官方提供的架构及其一些相关的生态系统组件:

整体流程比较简单,Prometheus 直接接收或者通过中间的 Pushgateway 网关被动获取指标数据,在本地存储所有的获取的指标数据,并对这些数据进行一些规则整理,用来生成一些聚合数据或者报警信息,Grafana 或者其他工具用来可视化这些数据。

时序数据库:时间序列数据库主要用于指处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。是新型的非关系型数据库,在大数据时代有着十分重要的意义。

环境:windows

包版本:

  • prometheus-3.0.0-beta.0.windows-amd64
  • grafana-enterprise-11.2.2.windows-amd64
  • alertmanager-0.27.0.windows-amd64
  • blackbox_exporter-0.25.0.windows-amd64

二、启动并访问自带 web-UI

1、 启动方式:双击“prometheus.exe”

2、访问:promethesu的UI默认访问地址:ip:9090

3、执行 PromeSql

Tables:表

  • Pro 是否准备完毕:prometheus_ready
  • Pro 构建信息:prometheus_build_info

Graph:图

  • Pro CPU 使用时间:process_cpu_seconds_total
  • 最大打开文件描述符数:process_max_fds

三、 启动 Grafana

  1. 启动 Grafana,双击:./bin/grafana-server.exe

  1. 访问地址:localhost:3000

初始账户密码:admin/admin

  1. 初次安装需要修改密码,按照提示修改即可。登录后正常访问效果图如下:

  1. 汉化(先关闭)
    1. 修改defaults.ini文件,文件处于./conf目录下,修改前建议备份。
    2. 当前版本某些组件默认不启用,导致一些开源的仪表盘显示为空。

故需要在“[feature_toggles]”下添加配置:autoMigrateOldPanels = true

  1. 汉化:修改 “default_language = zh-Hans”

  1. 在 Grafana 设置中修改默认语言为中文

四、Grafana 配置Prometheus

  1. 添加新数据源

  1. 配置

  1. 成功如图

五、在Grafana配置仪表盘(Dashboard)

1、导入常见的Dashboard

任意Dashboard,无需数据源可导入,但是展示的内容是默认值。
同类型的多个监控目标,例如node监控,可以在适配的Dashboard切换观看。

  1. 选择导入

  1. 到官方查看官方提供的仪表盘

  1. 选择一个需要的仪表盘

  1. 下载仪表盘的json配置

  1. 打开下载的json文件,粘贴到第二步对应的方框内。

  1. 即可生成node常用应用程序的仪表盘

  1. 导入JVM及其它仪表盘:重复步骤1

2、自定义仪表盘(就是点点点)

  1. 新建仪表盘

  1. 添加可视化面板

  1. 选择数据源

  1. 自定义仪表盘

  1. 保存或应用

  1. 效果如图:添加其它可视化表重复1~6步

六、JAVA 应用程序 + 使用 Prometheus

见 IDEA


http://www.kler.cn/a/388894.html

相关文章:

  • PYNQ 框架 - 中断(INTR)驱动
  • JavaEE进阶----SpringMVC(三)---响应的获取
  • 回归分析学习
  • 51c视觉~合集6
  • 行业类别-智能制造-子类别工业4.0-细分类别物联网应用-应用场景智能工厂建设
  • 【Pikachu】越权访问实战
  • 独立站 API 接口的性能优化策略
  • CALL处 F8的“bug“
  • 7个常用的JavaScript数组操作进阶用法
  • Spring MVC(一)
  • 事件组(本质,车辆协同,改进姿态控制)
  • DICOM标准:DICOM医学影像中的覆盖层(Overlay)概念详解
  • Webpack 深度解析与实战指南
  • Notepad++ 最新官网中文版在线下载 附文本编辑器安装与基础使用教程
  • 区块链应用第1讲:基于区块链的智慧货运平台
  • 【算法】(Python)动态规划
  • 网络安全不知道怎么学,看完这篇,中学生都能学会
  • 【SpringBoot】——Spring Validation之用户注册、JWT令牌之用户登入
  • 群控系统服务端开发模式-应用开发-前端登录页面开发
  • 聚观早报 | 奥迪集团Q3财报;小鹏汽车宣布增程计划
  • AppStore 账号切换
  • 0-基于图的组合优化算法学习(NeurIPS 2017)(未完)
  • 鸿蒙基本组件结构
  • 简单介绍 Spring 中获取 Bean 的三种方式
  • 如何防止苹果MacOS进入休眠状态
  • 【Unity】ScriptableObject的应用和3D物体跟随鼠标移动:鼠标放置物体在场景中