部署Prometheus+Grafana监控Docker(下)

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
可观测可视化 Grafana 版,10个用户账号 1个月
简介: 部署Prometheus+Grafana监控Docker(下)

3、在被监控端安装


**安装 exporter+docker+cAdvisor **

#下面操作都是被监控端进行
[root@docker ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
#上传yun仓库进行安装
[root@docker ~]# ll
总用量 8
-rw-------. 1 root root 1264 1月  12 2021 anaconda-ks.cfg
drwxr-xr-x  3 root root 4096 8月   5 10:21 docker
[root@docker ~]# vim /etc/yum.repos.d/centos.repo 
[aaa]
name=aaa
baseurl=file:///mnt
enabled=1
gpgcheck=0
[docker]
name=docker
baseurl=file:///root/docker
enabled=1
gpgcheck=0
#保存退出
[root@docker ~]# yum -y install docker-ce
[root@docker ~]# mkdir -p /etc/docker/
[root@docker ~]# vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://w4uieobw.mirror.aliyuncs.com"]
}
#保存退出
[root@docker ~]# systemctl start docker
[root@docker ~]# systemctl status docker
#安装exporter
#上传软件包进行安装
[root@docker ~]# ll
总用量 7904
-rw-------. 1 root root    1264 1月  12 2021 anaconda-ks.cfg
drwxr-xr-x  3 root root    4096 8月   5 10:21 docker
-rw-r--r--  1 root root 8083296 7月  10 16:51 node_exporter-0.18.1.linux-amd64.tar.gz
[root@docker ~]# tar xf node_exporter-0.18.1.linux-amd64.tar.gz 
[root@docker ~]# mv node_exporter-0.18.1.linux-amd64 /usr/local/exporter
[root@docker ~]# cd /usr/lib/systemd/system
[root@docker system]# vim node_exporter.service
[Unit]
Description=node_exporter
After=network.target
[Service]
User=prometheus
Group=prometheus
ExecStart=/usr/local/exporter/node_exporter --web.listen-address=:20001 --collector.systemd --collector.systemd.unit-whitelist=(sshd|nginx).service --collector.processes --collector.tcpstat
[Install]
WantedBy=multi-user.target
#保存退出
[root@docker system]# systemctl daemon-reload
[root@docker system]#  useradd prometheus
[root@docker system]# systemctl start node_exporter
[root@docker system]# systemctl status node_exporter
[root@docker system]# netstat -anpt | grep 20001
tcp6       0      0 :::20001                :::*                    LISTEN      16595/node_exporter 
[root@docker system]# systemctl enable node_exporter

使用浏览器进行访问测试,


67ea37b2582f4f0f9ce607c0dd62d85e.png

6e5309370f0246ffb05a35538296868d.png


#安装cadvisor
[root@docker ~]# docker images   #同样下载cadvisor镜像
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
google/cadvisor     latest              eb1210707573        2 years ago         69.6MB
[root@docker ~]# docker run \
  --volume=/:/rootfs:ro \
  --volume=/var/run:/var/run:rw \
  --volume=/sys:/sys:ro \
  --volume=/var/lib/docker/:/var/lib/docker:ro \
  --volume=/dev/disk/:/dev/disk:ro \
  --publish=18104:8080\
  --detach=true \
  --name=cadvisor \
  google/cadvisor:latest
[root@docker ~]# docker ps 
CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS                     NAMES
b0719f301f48        google/cadvisor:latest   "/usr/bin/cadvisor -…"   27 seconds ago      Up 26 seconds       0.0.0.0:18104->8080/tcp   cadvisor


使用浏览器进行访问测试


5e0bb1ebf96c4ae791f5a9d8370cc29f.png

534c1e02be394ee089d0fd3a6ac02128.png


16b43be7b396472f9257c9a278b78c45.png



4、修改prometheus主配置文件

#在监控端修改配置文件
[root@prometheus ~]# cd /usr/local/prometheus/
[root@prometheus prometheus]# vim prometheus.yml
。。。。。。
 28     static_configs:
 29     - targets: ['localhost:9090']
 30   - job_name: 'node1'            #增加一个监控节点的job
 31     static_configs:
 32     - targets:
 33       - "192.168.100.208:20001"    #节点的端口是20001       
 34   - job_name: 'docker'           #增加两个监控容器的job
 35     static_configs:
 36     - targets: ['192.168.100.210:18104','192.168.100.208:18104'] #容器的两个端口是18104,在上面启动容器时指定的
 37 remote_write:
 38   - url: "http://localhost:8086/api/v1/prom/write?db=prometheus"
 39 
 40 remote_read:
 41   - url: "http://localhost:8086/api/v1/prom/read?db=prometheus"
#保存退出
#重启prometheus
[root@prometheus prometheus]# systemctl restart prometheus #重启
[root@prometheus prometheus]# systemctl status prometheus  #查看状态

5、测试访问prometheus的web界面


a0ff04530e82439ab625d94abf854dfe.png


6、使用Grafana来进行监控

21800ee211ee487bbb793e06af79ad80.png

06c661a5355e4f758d9ae64dbb572c15.png


3b5300b8c71b45d3bfff59849103971f.png

  • 1860模板监控节点


f8aa16cec7bd461689ca37fe94044722.png

f9d209e2711f4d6ba9f413220c9c5d4b.png

监控节点的界面

216d470e674f435ca6437682c99eea85.png

  • 893模板是监控容器的


ffcff736834b4f54af6e7899ce859cdd.png

2002786644674ac6b765091b583614ce.png

监控容器的界面


7d04541faa7e4501a9e481f6efbb0cf6.png

59323fb14c024f12841e30ec855a512c.png

23b2fed52a2c4cbcab338e188e78526f.png

相关实践学习
通过可观测可视化Grafana版进行数据可视化展示与分析
使用可观测可视化Grafana版进行数据可视化展示与分析。
目录
相关文章
|
9天前
|
人工智能 API 数据安全/隐私保护
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
NextChat 是一个可以在 GitHub 上一键免费部署的私人 ChatGPT 网页应用,支持 GPT3、GPT4 和 Gemini Pro 模型。该项目在 GitHub 上获得了 63.8k 的 star 数。部署简单,只需拉取 Docker 镜像并运行容器,设置 API Key 后即可使用。此外,NextChat 还提供了预设角色的面具功能,方便用户快速创建对话。
60 22
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
|
10天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
10天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
23 1
|
10天前
|
前端开发 开发者 Docker
深入探索Docker Compose:简化多容器应用的部署
深入探索Docker Compose:简化多容器应用的部署
37 0
|
8天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
33 2
|
关系型数据库 MySQL Docker
Grafana汉化及构建Docker镜像
下载Grafana源码 go get github.com/grafana/grafanacd $GOPATH/src/github.com/grafana/grafana 汉化 修改public下面的前端代码 编译代码 yarn watch 启动grafana .
4878 0
|
6天前
|
运维 Cloud Native 虚拟化
一文吃透云原生 Docker 容器,建议收藏!
本文深入解析云原生Docker容器技术,涵盖容器与Docker的概念、优势、架构设计及应用场景等,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
一文吃透云原生 Docker 容器,建议收藏!
|
14天前
|
关系型数据库 MySQL API
|
10天前
|
运维 持续交付 Docker
深入理解Docker容器化技术
深入理解Docker容器化技术
|
7天前
|
缓存 监控 开发者
掌握Docker容器化技术:提升开发效率的利器
在现代软件开发中,Docker容器化技术成为提升开发效率和应用部署灵活性的重要工具。本文介绍Docker的基本概念,并分享Dockerfile最佳实践、容器网络配置、环境变量和秘密管理、容器监控与日志管理、Docker Compose以及CI/CD集成等技巧,帮助开发者更高效地利用Docker。