欢迎光临
我们一直在努力

使用Docker搭建Prometheus+Grafana运维监控可视化,普罗米修斯监控系统搭建教程

1.项目

今天和大家分享一个运维监控可视化工具——Prometheus(普罗米修斯),通过部署Prometheus+Grafana来监控Linux主机,实现运维监控可视化,目前 Prometheus 已经广泛用于 Kubernetes 集群的监控系统中

1.1.项目介绍

Prometheus的架构由四个主要组件组成:

  1. Prometheus Server :Prometheus Server是Prometheus的核心组件,主要负责从各个目标(target)中收集指标(metrics)数据,并对这些数据进行存储、聚合和查询。
  2. Client Libraries :Prometheus提供了多种客户端库,用于在应用程序中嵌入Prometheus的指标收集功能。
  3. Exporters :Exporters是用于将第三方系统的监控数据导出为Prometheus格式的组件。Prometheus支持多种Exporters,例如Node Exporter、MySQL Exporter、HAProxy Exporter等。
  4. Alertmanager:Alertmanager是Prometheus的告警组件,用于根据用户定义的规则对监控数据进行告警。

同时Prometheus有以下优点

  1. 灵活的数据模型:Prometheus采用的是key-value对的形式存储指标数据,每个指标都可以包含多个标签(labels),这样可以更加灵活地描述指标数据
  2. 高效的存储和查询:Prometheus使用自己的时间序列数据库,可以高效地存储和查询大量的指标数据。
  3. 强大的可视化和告警功能:Prometheus提供了Web界面和API,可以方便地展示和查询监控数据。
  4. 可扩展性强:Prometheus的架构非常灵活,可以根据需要选择合适的组件进行配置。
  5. CNCF的成员项目:Prometheus作为CNCF的项目之一,得到了广泛的关注和支持,并且得到了来自全球各地的贡献者的积极参与和开发。

1.1.项目展示

2.相关地址

官方GitHub地址: https://github.com/prometheus/prometheus

官网地址:https://prometheus.io/

3.搭建环境

  • 服务器:使用的是莱卡云的境外香港云服务器。莱卡云服务器促销活动性价比会更高。查看官网购买链接:https://www.lcayun.com
  • 资源配置:2核2G 30G硬盘
    建议服务器内存1G以上,由于国内服务器访问海外源较慢,这边为了方便演示直接使用海外服务器搭建,如国内项目建议使用国内服务器。
  • 服务器系统:Debian-11
  • 【必需】安装Docker:安装好 Docker、Docker-compose
  • 【非必需】域名一枚,可用于解析到服务器上使用域名访问

4.搭建视频

哔哩哔哩:https://www.bilibili.com/video/BV1itcwexEbk/

5.搭建方式

5.1 安装docker和docker-compose

安装教程:服务器上安装docker和docker-compose教程

5.2安装Grafana

Grafana下载地址:https://grafana.com/grafana/download

我们这里使用docker搭建

docker run -d --name=grafana -p 3000:3000 grafana/grafana-enterprise

docker拉取完就安装完成了

访问Grafana,浏览器输入IP:端口,如:服务器IP:3000

默认账号密码都为:admin

第一次登录需要修改密码,这个按照自己需求修改登录密码

进去之后首页

5.3安装Prometheus

依次下载Prometheus镜像包

docker pull prom/node-exporter
docker pull prom/prometheus

运行node-exporter的docker

docker run -d -p 9100:9100  -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro"  --net="host"  prom/node-exporter

访问 http://服务器:9100/metrics 看看是否有数据

5.4启动prometheus

在opt目录下建立promethes文件夹

mkdir /opt/prometheus

打开/opt/prometheus/的目录

cd /opt/prometheus/

使用vim编辑prometheus.yml文件

vim prometheus.yml
global:
# 抓取间隔,60秒向目标抓取一次数据
  scrape_interval: 60s
  evaluation_interval: 60s

# 这里表示抓取对象的配置
scrape_configs:
  - job_name: 'prometheus'
  # 重写了全局抓取间隔时间,由60秒重写成30秒
    scrape_interval: 30s
    static_configs:
      - targets: ['localhost:9090']
  - job_name: 'linux'
    static_configs:
      - targets: ['localhost:9100']

输入修改完IP按esc键 输入 :wq 保存退出

启动Prometheus

docker run -d  -p 9090:9090  -v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus

输入完打开 http://服务器IP:9090/query 显示以下界面

显示绿色UP则为运行正常

5.5Grafana添加数据源

回到 http://服务器IP:3000/ Grafana添加prometheus数据源

选择prometheus

此行输入 http://服务器IP:9090 后滑下去直接点击save保存

5.6Grafana添加面板

回到首页点击DASHBOARDS

选择导入

访问官方面板下载地址:https://grafana.com/grafana/dashboards

此处输入项目ID

比如选中项目之后可以复制这个项目的ID填上去

填好ID后我们需要选择prometheus,然后点击import导入即可

这样面板信息就出来了

6.结尾

Prometheus是个非常好用的开源项目,在本文中,我们介绍了什么是Prometheus,如何安装Prometheus,以及使用Prometheus的Pull(拉取)模式来采集Linux服务器资源,并在Grafana进行展现。

赞(0)
未经允许不得转载:莱卡云 » 使用Docker搭建Prometheus+Grafana运维监控可视化,普罗米修斯监控系统搭建教程