3分钟用 docker 部署 zabbix 3.0

安装 docker

首先按照 docker 官方网站 指南部署好 docker-engine。

加速 docker

因为众所周知的原因,从 dockerhub 上下载镜像相当不稳定和不迅速,所以先配置中国科技大学的 dockerhub 镜像。

DOCKER_OPTS="$DOCKER_OPTS --registry-mirror=https://docker.mirrors.ustc.edu.cn"

把上面这行加到文件: /etc/default/docker 末尾。

安装 zabbix

zabbix 3 的 Dockerfile: https://github.com/zabbix/zabbix-community-docker/tree/master/Dockerfile/zabbix-3.0

开启 3 个 docker,第一个是 mysql 的后端,第二个是 mariadb,第三个才是 zabbix 服务端。
zabbix docker 会自动连接数据库,初始化数据库,并且把端口 80 和 10051 映射到物理机上,所以直接访问物理机的端口即可。

sudo docker run -d -v /var/lib/mysql --name zabbix-db-storage busybox:latest
sudo docker run \
    -d \
    --name zabbix-db \
    -v /backups:/backups \
    -v /etc/localtime:/etc/localtime:ro \
    --volumes-from zabbix-db-storage \
    --env="MARIADB_USER=zabbix" \
    --env="MARIADB_PASS=my_password" \
    zabbix/zabbix-db-mariadb
sudo docker run \
    -d \
    --name zabbix \
    -p 80:80 \
    -p 10051:10051 \
    -v /etc/localtime:/etc/localtime:ro \
    --link zabbix-db:zabbix.db \
    --env="ZS_DBHost=zabbix.db" \
    --env="ZS_DBUser=zabbix" \
    --env="ZS_DBPassword=my_password" \
    zabbix/zabbix-3.0:latest

备份 zabbix

只备份配置,不备份监控历史数据

docker exec \
    -ti zabbix-db \
    /zabbix-backup/zabbix-mariadb-dump -u zabbix -p my_password -o /backups

全量备份

sudo docker exec \
    -ti zabbix-db \
    bash -c "\
    mysqldump -u zabbix -pmy_password zabbix | \
    bzip2 -cq9 > /backups/zabbix_db_dump_$(date +%Y-%m-%d-%H.%M.%S).sql.bz2"

完成后打开浏览器,访问 http://localhost 既可以看到 zabbix 3.0 了。

zabbix

发表评论

电子邮件地址不会被公开。 必填项已用*标注