首页 > 其他分享 >Prometheus+Grafana-1-基础介绍及安装

Prometheus+Grafana-1-基础介绍及安装

时间:2024-08-08 19:53:01浏览次数:9  
标签:ro -- prometheus Grafana etc Prometheus grafana 安装 localtime

一、体系架构(了解)

数据采集流程

 说白了就是采集数据->计算是否超过阈值->发起警告

Prometheus查询界面如下

1.报警简介

展现形式:短信,邮件,电话,通讯软件。

阈值(Trigger Value),如达到阈值可以触发预警。

Pagerduty拥有 短信、电话、邮件所有报警机制,还有必要的运维值班管理制度和报警升级等等拓展功能。

2.优势

  • 监控精细程度绝对第一,精确到1-5秒的采集精度

  • 集群部署速度 监控脚本的制作 非常速度 大大减少监控搭建的时间成本

  • 周边插件丰富

  • 本身基于数学模型,大量实用函数可以实现复杂的业务逻辑监控(QPS曲线,弯曲 凸起 下跌的比例等模糊概念)

  • 可以嵌入很多开源工具

  • 图形美观高大上

3.缺点

  • 因其采集精度,如果集群数量太大,那么单点的监控有性能瓶颈。

  • 学习成本太大,数学命令行复杂。

  • 磁盘消耗较大,具体根据监控集群量 和 监控项的多少。

  • 需要有一定的数学头脑。

4.基本原理

​ 通过HTTP协议周期性抓取被监控组件的状态,任意组件只要提供对应的HTTP接口就可以接入监控。不需要任何SDK或者其他的集成过程。这样做非常适合做虚拟化环境监控系统,比如VM、Docker、Kubernetes等。输出被监控组件信息的HTTP接口被叫做exporter 。

其大概的工作流程是:

1、Prometheus server 定期从配置好的 jobs 或者 exporters 中拉metrics指标,或者接收来自Pushgateway 发过来的 metrics,或者从其他的 Prometheus server 中拉 metrics。

2、Prometheus server 在本地存储收集到的 metrics,并运行已定义好的 alert.rules,记录新的时间序列或者向 Alertmanager 推送警报。

3、Alertmanager 根据配置文件,对接收到的警报进行处理,发出告警。

4、在Grafana图形界面中,可视化查看采集数据。

二、安装

1.Compose安装

version: '3.8'

volumes:
  prometheus_data: {}
  grafana_data: {}

networks:
  monitoring:
    driver: bridge

services:
  prometheus:
    image: prom/prometheus
    container_name: prometheus
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./prometheus/:/etc/prometheus/
      - prometheus_data:/prometheus
    command:
      - '--config.file=/etc/prometheus/prometheus.yml'
      - '--storage.tsdb.path=/prometheus'
      - '--web.console.libraries=/usr/share/prometheus/console_libraries'
      - '--web.console.templates=/usr/share/prometheus/consoles'
      #热加载配置
      - '--web.enable-lifecycle'
      #api配置
      #- '--web.enable-admin-api'
      #历史数据最大保留时间,默认15天
      - '--storage.tsdb.retention.time=30d'  
    networks:
      - monitoring
    links:
      - alertmanager
      - cadvisor
      - node_exporter
    expose:
      - '9090'
    ports:
      - 9090:9090
    depends_on:
      - cadvisor

  alertmanager:
    image: prom/alertmanager
    container_name: alertmanager
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./alertmanager/:/etc/alertmanager/
    command:
      - '--config.file=/etc/alertmanager/config.yml'
      - '--storage.path=/alertmanager'
    networks:
      - monitoring
    expose:
      - '9093'
    ports:
      - 9093:9093

  cadvisor:
    image: google/cadvisor:latest
    container_name: cadvisor
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /:/rootfs:ro
      - /var/run:/var/run:rw
      - /sys:/sys:ro
      - /var/lib/docker/:/var/lib/docker:ro
    networks:
      - monitoring
    expose:
      - 8080
    ports:
      - 8080:8080
      
  node_exporter:
    image: prom/node-exporter
    container_name: node-exporter
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /proc:/host/proc:ro
      - /sys:/host/sys:ro
      - /:/rootfs:ro
    command: 
      - '--path.procfs=/host/proc' 
      - '--path.sysfs=/host/sys'
      - '--collector.filesystem.ignored-mount-points=^/(sys|proc|dev|host|etc|rootfs/var/lib/docker)($$|/)'
    networks:
      - monitoring
    ports:
      - '9100:9100'

  grafana:
    image: grafana/grafana:9.4.3
    container_name: grafana
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - grafana_data:/var/lib/grafana
      - ./grafana/provisioning/:/etc/grafana/provisioning/
    env_file:
      - ./grafana/config.monitoring
    networks:
      - monitoring
    links:
      - prometheus
    ports:
      - 3000:3000
    depends_on:
      - prometheus

下面是我的安装目录。

2.访问地址

3.通过Grafana展示Prometheus

 

直接保存。

访问grafana官网,找到Node Exporter Full

Grafana dashboards | Grafana Labs

 

1806

4.自定义指令

接下来我们会频繁使用到这两个命令,可以取个别名。不取也行。

docker exec -it prometheus promtool check config /etc/prometheus/prometheus.yml

curl -X POST http://localhost:9090/-/reload

#进入文件
vim ~/.bashrc

#修改
#Prometheus的检查yml配置文件的指令
alias check_prometheus_yml='docker exec -it prometheus promtool check config /etc/prometheus/prometheus.yml'

#开启热重载后重新加载配置文件的指令
alias reload_prometheus='curl -X POST http://localhost:9090/-/reload'

#生效
source ~/.bashrc

标签:ro,--,prometheus,Grafana,etc,Prometheus,grafana,安装,localtime
From: https://blog.csdn.net/qq_52464274/article/details/141035004

相关文章

  • 1392、STM32单片机温湿度检测阈值报警4个继电器加4个负载风扇等无线蓝牙远程(程序+原
    毕设帮助、开题指导、技术解答(有偿)见文未 目录方案选择单片机的选择显示器选择方案一、设计功能二、实物图三、原理图四、程序源码五、PCB图资料包括:需要完整的资料可以点击下面的名片加下我,找我要资源压缩包的百度网盘下载地址及提取码。方案选择单片机的选......
  • MIMIC IV 3.0数据库安装方法
            MIMICIV3.0在上月已经发布了,那么如何安装这个最新的MIMIC数据库呢?1.MIMICIV3.0数据库变化情况        2024年7月19日,知名医疗数据库MIMIC-IV发布了最新的3.0版本,此次更新为数据库带来了诸多重要改进和新增数据。此次更新最显著的变化是新增了20......
  • Windows 10安装Kafka
    1安装JDK1、下载文件:https://www.oracle.com/java/technologies/downloads/#jdk17-windows下载对应windows使用的jdk。2、安装JDK并设置环境变量,JAVA_HOME和path 3、打开cmd,输入java-version,验证java是否安装成功;2安装ZOOKERPERKafka的运行依赖于Zookeeper,所以在运行Kafk......
  • OS-Ubuntu-gcc-源码安装gcc7.5.0
    OS-Ubuntu-gcc-源码安装gcc7.5.0GNUMirrorListFTPserverofthetheGNUproject--gccGcc-依赖下载GCC源代码wgethttps://ftp.gnu.org/gnu/gcc/gcc-X.Y.Z/gcc-X.Y.Z.tar.gz解压、配置、编译gcc7.5.0操作指令序列://解压源代码tar-xzfgcc-7.5.0.tar.gzcdgcc-X.Y.......
  • Python的安装环境以及应用
    1.环境python2,Python最新安装3.12可以使用源码安装查看安装包[root@python001~]#yumlistinstalled|grepepel3[root@python001~]#yumlistinstalled|greppython[root@python001~]#yum-yinstallpython3    安装python3查看版本[root@python001......
  • Windows 7 X64系统安装无签名驱动后设备管理器显示黄色叹号的解决办法
    因项目需要在工控机上安装了串口转USB转换器的驱动程序安装时提示缺少数字签名点击“仍然安装”查看设备管理器发现该串口设备上显示黄色叹号根据网上说法 重启设备时长按F8在菜单中选择“禁用安装驱动时强制签名”进入系统后黄色叹号消失设备可以正常使用但该方法仅在......
  • milvus-cli安装部署
    环境:OS:Centos7milvus:2.3.5milvus-cli:1.0.01.在线安装你可以使用Python包管理在线安装,注意Python版本要在3.9以上。在线安装只需要一条命令即可:[root@host134bin]#pip-Vpip23.0.1from/usr/local/lib/python3.8/site-packages/pip(python3.8)[root@host1......
  • OS-Ubuntu-从源查询拉取安装包依赖-apt-cache&apt download
    OS-Ubuntu-从源查询拉取安装包依赖-apt-cache&aptdownload引用:Ubuntuapt-getapt-cache命令使用apt-get下载包及所有依赖指令apt-cachedepends--no-*--no-pre-depends--no-suggests--no-recommends--no-conflicts--no-breaks--no-enhances--recurseap......
  • ADB安装apk包到所有andriod设备步骤详解
    背景:使用adb工具,用数据线连接电脑与机器,电脑安装apk包后,使用命令直接安装到机器上,省去其他下载等繁琐流程一、电脑安装adb工具1、下载adb压缩包地址:--Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip2、配置环境变量a.右击此电脑......
  • CodeQL安装及使用
    一、关于CodeQL1.CodeQL简介CodeQL是一种将查询语言的概念引入源代码分析的工具,为开发者提供了全新的方式来发现和理解代码中的潜在问题。自2019年GitHub收购Semmle并将CodeQL集成到其平台以来,CodeQL已成为GitHubAdvancedSecurity功能的一部分,通过GitHub的CodeScanning功能,用......