对于想学习和实践zabbix的读者来说,在真实环境搭建一套zabbix系统是件费时费力的事情,本文内容就是用docker来缩减搭建时间,目标是让读者们尽快投入zabbix系统的体验和实践;
环境信息
以下是本次操作的环境:
- 操作系统:MacBook Pro
- Docker:19.03.2
全系列文章链接:
三部曲系列一共三篇文章,链接如下:
创建docker-compose.yml文件
首先创建一份docker-compose.yml文件,内容如下:
version: '2'
services:
zabbix-mysql:
image: daocloud.io/library/mysql:8
container_name: zabbix-mysql
environment:
- MYSQL_ROOT_PASSWORD=888888
restart: always
zabbix-server:
image: monitoringartist/zabbix-xxl
links:
- zabbix-mysql:mysqlhost
container_name: zabbix-server
restart: always
depends_on:
- zabbix-mysql
ports:
- "8888:80"
environment:
- ZS_DBHost=mysqlhost
- ZS_DBUser=root
- ZS_DBPassword=888888
创建容器
打开命令行,在刚才创建的docker-compose.yml目录下,执行<font color="blue">docker-compose up -d</font>,这样就会先后启动mysql和zabbix server两个服务的容器,如下图:
等待zabbix server初始化
在命令行输入命令<font color="blue">docker logs -f zabbix-server-service</font>,查看zabbix server的日志输出,下图是部分日志的截图,可以看到有数据库初始化的操作:
登录zabbix管理页面体验
等待大约一分钟之后,zabbix server的日志不再滚动,表示初始化已经完成,打开浏览器输入http://localhost:8888,可以看到zabbix的管理系统的登录页面,如下图:
输入用户名<font color="red">admin</font>,密码<font color="red">zabbix</font>
登录后即可看到管理系统了,如下图:
按照下图的操作,查看已经监控的主机情况,如图,目前只能看到一台机器的信息,就是zabbix server自己这台机器,从列表的几列信息中可以看到有64个监控项,43个触发器,10个图形:
上图右侧的红框中显示的status是"Disabled",表示这个host的监控还没有启动,点击这个"Disabled"就能启动监控,将状态变为"Enabled",大约1分钟后再刷新页面,可以看到展示如下图:
除了状态变为"Enabled",右侧原本灰色的"ZBX"也变成了绿色,表示该机器的监控状态是正常的;
体验监控图形
按照下图的红框和箭头操作,可以看到zabbix server所在机器的cpu load的曲线图:
显示中文
按照下图的箭头依次点击红框中的内容:
在打开后的页面中按照下图的箭头依次选择和点击:
这时候再点击右上角的"注销"按钮,退出重现登录,如下图红框所示:
再重新登录后,就能看见页面已经全部中文显示了,如下图:
以上就是Docker下实战zabbix的第一部分,快速体验zabbix系统和服务,但只有一个zabbix server服务器意义不大,毕竟实际场景是要通过zabbix系统去监控其他机器和服务,下一章我们尝试把zabbix agent加入进来,以更接近实际场景的方式来继续学习zabbix。