之前使用容器管理工具K8S时一直觉得其太复杂,最近了解到一款简单好用的容器管理工具Humpback,下面简单的进行介绍和初步使用示例。
什么是 Humpback?
Humpback 是一款轻量级的Docker容器管理平台,其功能能够满足中小企业对于容器管理的需要,使用WEB进行管理,界面简洁操作方便。支持单一服务器运行,也支持集群化管理。
功能特点
- Web操作,简单易用
- 权限分组隔离
- 容器升级与克隆
- 容器监控
- 容器日志
- 集群容器调度
- 集群弹性伸缩
- 私有仓库
Humpback架构
-
Humpback Website
Humpback 管理站点,主要提供系统可视化管理,功能为分组管理,权限管理,仓库镜像查询,集群管理。 -
Humpback Center
Humpback 集群中心,通过调度策略对集群实施容器批量创建、操作、删除、升级、故障迁移、实例调整等功能;同时负责集群节点的发现与管理。 -
Humpback Agent
Humpback 集群节点,集群中存在多个节点等待被调度,并在Humpback Center
中被分组管理,通过节点发现模块注册到集群中心并维持心跳。 -
Zookeeper
Humpback 默认选用
Zookeeper
来进行集群节点的注册和发现,后端需要具备一个Zookeeper
集群。 -
Docker Images Repository
Humpack 选用
Docker
官方私有镜像仓库distribution
来提供镜像存储服务,Humpback Website
通过访问distribution
API 来提供仓库镜像查询功能。
搭建单机版 Humpback 管理平台
1. 部署 Humpback 站点
$ mkdir -p /data/humpback-web
$ docker run -d --net=host --restart=always \
-e HUMPBACK_LISTEN_PORT=8012 \
-v /data/humpback-web/dbFiles:/humpback-web/dbFiles \
--name humpback-web \
humpbacks/humpback-web:latest
要确认容器是否正常运行,使用命令:docker ps -a
在这里,我们设置 humpback 网站启动后使用 8012 端口
2. 部署 Humpback Agent
$ docker pull humpbacks/humpback-agent:latest
$ docker run -d -ti --net=host --restart=always \
--name=humpback-agent \
-e DOCKER_API_VERSION=v1.21 \
-e DOCKER_CLUSTER_ENABLED=false \
-v /var/run/:/var/run/:rw \
humpbacks/humpback-agent:latest
Humpback Agent 启动后会使用 8500 端口,Humpback网站的容器管理功能会和此端口通讯。
3. 配置 Humpback
打开浏览器输入:http://127.0.0.1:8012 ,默认账户:admin 密码:123456
创建一个组,点击 Manage -> Groups -> Add Group
然后,点击WEB左侧的 Group,就会看到我们新建的组 local 和它里面运行的容器了。
这里面的 nginx 容器是之前装的,我们点进去看看,基本的管理功能还是比较全的,包括容器重启、停止、重命名、升级、克隆、查看监控、日志等等。
Humpback 官方文档:https://humpback.github.io/humpback/#/zh-cn/