docker部署zabbix
本次安装所需rpm包、监控模板以及镜像包均可下载
自定义监控脚本以及导入模板均在另外两篇博客
web界面监控模板: 点击跳转
agent端监控脚本 : 点击跳转
安装docker ce 或者 docker
yum 安装默认的是docker 已经好久没更新了,我现在生产环境用的是docker-ce社区版,他们的区别请大家自行百度
命令:
yum -y install docker
使用本人制作的离线安装包安装dcoker-ce:
tar xf docker-ce.tar.gz -C /opt/
/opt/docker-ce/install.sh
设置docker
我这里是基于以后 其他 docker项目 可能 会对系统 造成的影响设置的,介意者可以跳过此步骤,这并不影响您的docker使用和zabbix安装
设置docker服务不修改iptables
修改启动文件/usr/lib/systemd/system/docker.service
启动项添加--iptables=false,如图所示
官方解释的是,docker映射端口时,会跳过firewalld,而直接修改系统的iptables
我个人认为不是很妥当
下载镜像 OR 导入镜像
命令:
下载镜像
docker pull zabbix/zabbix-java-gateway
docker pull zabbix/zabbix-web-nginx-mysql
docker pull zabbix/zabbix-server-mysql
docker pull mysql:5.7
或者 使用离线镜像
docker load -i zabbix.io
添加 zabbix 网卡
我这里是为了固定每个容器的IP地址,防止重启更换IP,介意者可跳过此步骤,这并不影响您的docker使用和zabbix安装
命令:
docker network create --subnet=172.16.10.0/24 --gateway=172.16.10.1 docker
查看:docker network ls
NETWORK ID NAME DRIVER SCOPE
3966fcb8b216 bridge bridge local
cadbf8a1e5ca docker bridge local
6bc013a79114 host host local
0f89020c1dbb none null local
开启防火墙IP伪装,如果不开,server端将无法访问client端
firewall-cmd --zone=public --add-masquerade --permanent
firewall-cmd --query-masquerade
返回:yes
开启路由转发
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf