问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Docker部署Prometheus和Grafana监控容器和主机

创作时间:
作者:
@小白创作中心

Docker部署Prometheus和Grafana监控容器和主机

引用
CSDN
1.
https://m.blog.csdn.net/weixin_47531290/article/details/144538170

在运维工作中,监控系统是必不可少的工具。Prometheus作为一款开源的监控系统和时间序列数据库,能够监控主机和容器,配合Grafana的可视化界面,可以更直观地展示监控数据。本文将详细介绍如何使用Docker部署Prometheus和Grafana,帮助运维人员快速搭建监控系统。

一、部署Prometheus

下载相关镜像包

docker pull prom/node-exporter  # 主机信息采集组件
docker pull google/cadvisor     # 容器信息采集组件
docker pull prom/prometheus     # Prometheus服务
docker pull grafana/grafana     # 提供友好的可视化页面

注意:如果是离线环境,则需要自己在可用的联网机器上下载好这些镜像并上传至服务器。使用以下命令:

docker save -o xxx.tar xxx(下载的镜像名)  # 将下载的镜像打包
docker load -i xxx.tar  # 将打包到服务器上的镜像导入

配置Prometheus

创建目录并挂载启动Prometheus:

mkdir /opt/prometheus
chmod -R 755 /opt/prometheus  # 必须赋权,否则会报错

编写配置文件:

vim /opt/prometheus/prometheus.yml

配置文件内容如下:

global:
  scrape_interval:     60s
  evaluation_interval: 60s

scrape_configs:
- job_name: prometheus
    static_configs:
- targets: ['localhost:9090']   # 声明Prometheus的地址和端口
        labels:
          instance: prometheus

- job_name: node-exporter            # 一个job为一个项目分类
    static_configs:
- targets: ['192.168.10.225:9100','192.168.10.198:9100','192.168.10.199:9100','192.168.10.184:9100','192.168.10.186:9100','192.168.1.84:9100']   # 声明node-exporter的端口地址

- job_name: cadvisor            
    static_configs:
- targets: ['192.168.10.198:9994','192.168.10.199:9994']   # 声明容器采集的地址和端口

注意:将配置文件中的IP地址修改为自己服务所在的IP和端口。

启动Prometheus容器:

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

注意:运行容器前先检查端口是否冲突,使用命令:ss -ntpl | grep :9090,否则启动会失败。

二、部署Grafana

docker run -d --name grafana -p 3000:3000 --name=grafana -v /opt/grafana-storage:/var/lib/grafana grafana/grafana

验证

在待采集服务器上部署采集插件node-exporter和cAdvisor:

这里解释一下:cAdvisor(Container Advisor)是Google开源的一个用于监控和分析容器(特别是Docker容器)性能和资源使用情况的工具。它可以收集容器的各种指标,如CPU使用率、内存使用率、网络I/O、磁盘I/O等,并将这些数据暴露给外部系统(如Prometheus)。

docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:rw --volume=/sys:/sys:ro --volume=/var/lib/docker/:/var/lib/docker:ro --publish=9994:8080 --detach=true --name=cadvisor --restart=always google/cadvisor
docker run --name node-exporter -p 9120:9100 -d prom/node-exporter

浏览器登录验证:使用IP地址加端口访问。

配置Grafana

网页登录Grafana:http://172.22.16.64:3000/

配置数据源

导入仪表盘

下载地址:Grafana dashboards | Grafana Labs


© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号