-
基础环境部署
部署zabbix server
zabbix agent安装
测试验证,数据是否正常采集
查看是否正常出图
基础环境部署
下载yum repo文件
#cd /etc/yum.repos.d
#wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
清理旧docker
#yum remove docker docker-common docker-selinux docker-engine
安装新版docker
#yum install -y docker-ce
#systemctl enable docker && systemctl start docker
#docker --version
#Docker version 19.03.11, build 42e35e61f3
配置国内docker 镜像仓库
#tee /etc/docker/daemon.json <'EOF'
{
"registry-mirrors": ["https://jxus37ad.mirror.aliyuncs.com"]
}
EOF
部署zabbix server
启动一个空的MySQL服务器实例
# docker run --name mysql-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_ROOT_PASSWORD="root_pwd" \
-v /etc/localtime:/etc/localtime:ro \
-d mysql:5.7 \
--character-set-server=utf8 --collation-server=utf8_bin
启动Zabbix Java gateway实例
# docker run --name zabbix-java-gateway -t \
-v /etc/localtime:/etc/localtime:ro \
-d zabbix/zabbix-java-gateway:latest
启动Zabbix server实例,并关联这个实例到已创建的MySQL服务器实例
Zabbix server实例暴露10051/TCP端口(Zabbix trapper)给主机。
# docker run --name zabbix-server-mysql -t \
-e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="zabbix_pwd" \ -e MYSQL_ROOT_PASSWORD="root_pwd" \ -e ZBX_JAVAGATEWAY="zabbix-java-gateway" \ -v /etc/localtime:/etc/localtime:ro \ --link mysql-server:mysql \ --link zabbix-java-gateway:zabbix-java-gateway \ -p 10051:10051 \ -d zabbix/zabbix-server-mysql:latest
启动Zabbix web 接口,并将它与MySQL服务器实例和Zabbix server实例关联
# docker run --name zabbix-web-nginx-mysql -t \
-e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="zabbix_pwd" \ -e MYSQL_ROOT_PASSWORD="root_pwd" \ -v /etc/localtime:/etc/localtime:ro \ --link mysql-server:mysql \ --link zabbix-server-mysql:zabbix-server \ -p 80:8080 \ -d zabbix/zabbix-web-nginx-mysql:latest
zabbix agent安装
#docker run --name zabbix-agent -e ZBX_HOSTNAME='Zabbix server' -e ZBX_SERVER_HOST=172.17.0.4 -v /etc/localtime:/etc/localtime:ro -d zabbix/zabbix-agent
参数解析:
ZBX_HOSTNAME是在zabbix dashboard配置的被监控主机的Name
ZBX_SERVER_HOST是zabbix server的IP
测试验证,数据是否正常采集
进到zabbix server的容器中
#docker exec -it 59b4c0eb861f /bin/bash ###59b4c0eb861f是zabbix server容器的id
bash-5.0$ /usr/bin/zabbix_get -s 172.17.0.6 -p 10050 -k system.uname ##172.17.0.6是zabbix agent容器的IP
Linux c253531d4c9b 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64
数据正常采集
查看是否正常出图
浏览器访问http:///zabbix 用户名/密码:admin/zabbix
参考资料:
https://www.zabbix.com/documentation/3.4/zh/manual/installation/containers
https://hub.docker.com/r/zabbix/zabbix-agent/
---The End