前言
今天我们学习几个可以用图形化的方式来管理Docker的工具。它们分别是Portainer、Rancher、cAdvisor.
目录
一、Portainer
二、Rancher⭐️
三、cAdvisor✨
Portainer(基于 Go)是⼀个轻量级的管理界⾯,可让您轻松管理 Docker 主机或 Swarm 集群。
Portainer 的使⽤意图是简单部署。它包含可以在任何 Docker 引擎上运⾏的单个容器(Docker for Linux 和 Docker for Windows)。
Portainer 允许您管理 Docker 容器、image、volume、network 等。 它与独⽴的 Docker 引擎和 Docker Swarm 兼容。
Docker命令安装:
$ docker volume create portainer_data
$ docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_dat
a:/data portainer/portainer
Swarm集群部署:
$ docker volume create portainer_data
$ docker service create \
--name portainer \
--publish 9000:9000 \
--replicas=1 \
--constraint 'node.role == manager' \
--mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \
--mount type=volume,src=portainer_data,dst=/data \
portainer/portainer \
-H unix:///var/run/docker.sock
Docker compose部署:
version: '2'
services:
portainer:
image: portainer/portainer
command: -H unix:///var/run/docker.sock
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
volumes:
ortainer_data:
Rancher 是⼀个开源的企业级容器管理平台。
通过 Rancher ,企业不必⾃⼰使⽤⼀系列的开源软件去 从头搭建容器服务平台。 Rancher 提供了在⽣产环境中使⽤管理 Docker 和 Kubernetes 的全栈化容器 部署与管理平台。
在后⾯学习 kubernetes 的课程的时候会给⼤家演示,⽤于我们快速搭建⼀个可运⾏ kubernetes 集群 环境,⾮常⽅便。
cAdvisor 是 Google 开发的容器监控⼯具。
我们来看看 cAdvisor 有什么能耐:
监控 Docker Host cAdvisor 会显示当前 host 的资源使⽤情况,包括 CPU、内存、⽹络、⽂件系 统等。
监控容器 点击 Docker Containers 链接,显示容器列表。点击某个容器,⽐如 sysdig,进⼊该容 器的监控⻚⾯。
以上就是 cAdvisor 的主要功能,总结起来主要两点:
① 展示 Host 和容器两个层次的监控数据。
② 展示历史变化数据。
由于 cAdvisor 提供的操作界⾯略显简陋,⽽且需要在不同⻚⾯之间跳转,并且只能监控⼀个 host, 这不免会让⼈质疑它的实⽤性。但 cAdvisor 的⼀个亮点是它可以将监控到的数据导出给第三⽅⼯具, 由这些⼯具进⼀步加⼯处理。
我们可以把 cAdvisor 定位为⼀个监控数据收集器,收集和导出数据是它的强项,⽽⾮展示数据。 cAdvisor ⽀持很多第三⽅⼯具,其中就包括后⾯我们重点要学习的 Prometheus 。
$ 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=8080:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor:latest
通过访问地址:http://127.0.0.1:8080/containers/ 可以查看所有容器信息:
除此之外,cAdvisor 还提供了⼀个 Rest
API:https://github.com/google/cadvisor/blob/master/docs/api.md cAdvisor
通过该 REST API 暴露监控数据,格式如下:
http://:/api//