部署Prometheus+Grafana监控Docker(下)

简介: 部署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

目录
相关文章
|
8月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
3874 4
|
8月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
407 5
|
8月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
2697 8
|
运维 Java Devops
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
运维 Kubernetes 前端开发
【云原生】阿里云服务器部署 Docker Swarm集群
阿里云服务器 一键部署 Docker Swarm 集群!
1198 0
【云原生】阿里云服务器部署 Docker Swarm集群
|
弹性计算 数据可视化 关系型数据库
使用阿里云部署基于docker的mysql云服务
本篇文章将介绍如何使用阿里云安装docker、部署mysql服务,并远程连接至远端mysql
1141 1
使用阿里云部署基于docker的mysql云服务
|
弹性计算 Docker 容器
阿里云一键部署 Docker Datacenter
使用ROS模板在阿里云上一键部署Docker Datacenter
8276 0