一、Zabbix架构信息
- zabbix-server zabbix 的server 端,负责接收agent发送过来的监控数据,并且提供zabbix的所有核心功能。
- database 用于存储监控数据和配置信息的数据库,目前常用的有mysql和postgresql两种数据库。
- zabbix-web zabbix的UI端,提供操作控制台和监控展示等功能。
- zabbix-java-gateway 用于监控Java程序的JVM状态,zabbix本身无法直接从jvm获取监控指标,需使用该网关来实现。
- zabbbix-agent zabbix的代理端,部署在目标主机上,用于收集主机的监控数据,并提供给到zabbix server。
二、安装Docker
1. 配置官方yum源
2. 安装Docker
3. 启动Docker
4. 查看Docker版本号,确认安装正确。
三、部署zabbix组件
zabbix支持mysql/postgresql两种数据库,本示例使用支持mysql的zabbix版本。
1. 安装数据库
下载镜像,zabbix 6.x版本要求使用mysql 8.4.0
创建存储卷,用于持久化mysql数据。
注释:存储卷默认存储位置路径为:/var/lib/docker/volume/${volume_name}。
启动容器
2. 安装zabbix-java-gateway
启动容器
3. 安装zabbix-server
下载镜像
创建存储卷,用于存储zabbix配置文件。
启动server容器,开放10051/TCP端口,用于接收监控数据。添加--link参数,实现mysql和java-gateway容器间的互相通信。
注释:此方式适合所有容器部署在同一台主机上,如果是分开部署,则在前面的步骤需要开放相关端口,并通过局域网进行连接。
4. 安装Zabbix Web 界面
下载镜像
启动web容器
5. 登录zabbix
部署完成后,打开浏览器访问主机地址,即可访问zabbix。
登录账号:Admin
密码:zabbix
登录后显示界面,部署完成。
四、安装agent
zabbix agent部署较为简单,你可以使用docker,也可以使用Yum、二进制包等方式安装,此处演示基于docker的安装方式。
下载镜像
创建存储卷,用于存储agent配置文件。
启动agent容器
注释:如果是部署在zabbix Server主机上的监控agent,此时的ZBX_SERVER_HOST需改为zabbix server的容器IP,而不能用主机IP。
五、添加主机
在目标主机安装好agnt后,即可以在zabbix server端配置相关的主机监控。
- 点击"Create host”,创建新的主机配置。
- 配置完成后,静待一会可看到监控目标生效。
- 查看监控数据,可看到已正常获取。
总结:
相比传统的部署方式,容器化安装无疑是更加方便快捷的选择,学会使用容器来进行部署是一项非常有用的技能。这有利于我们快速地搭建好需要的系统环境,也可以解放技术人员的时间。