文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

docker快速部署zabbix的方法

2023-01-06 18:00

关注

容器技术极大的简化了应用部署速度,而且现在大部分的开源应用均提供了容器的版本。因此今天就分享下通过docker快速部署zabbix。zabbix标准组件是分布式的,因此部署过程中需要创建多个容器,当然zabbix-application(all-in-one)也有容器版本,官方已经宣布停止更新,推荐使用虚拟机的镜像方式。

1、创建docker自定义网络

docker需要使用容器的名称互访需要使用自定义的网络类型,容器必须接入自定义的网络方可。因为接下来我们要部署多个组件,组件之间互访通过容器名称。

docker network create --subnet 172.20.0.0/24 zabbix-net

2、部署数据库

部署mariadb作为zabbix的数据库,注意安全第一件数据库的密码要加固,不要太简单。

docker run --name mysql-server  \
-e MYSQL_DATABASE=zabbix \
-e MYSQL_USER=zabbix \
-e MYSQL_PASSWORD="123456789"  \
-e TZ="Asia/Shanghai" \
-e MYSQL_ROOT_PASSWORD="123456789"  \
-v mariadb_data:/var/lib/mysql  \
--restart unless-stopped  \
--network=zabbix-net \
-itd mariadb  \
--character-set-server=utf8  \
--collation-server=utf8_bin  \
--default-authentication-plugin=mysql_native_password

TZ=“Asia/Shanghai” 为设置容器的时区,否则告警时间会有问题。
mariadb_data:/var/lib/mysql 将数据库挂载到容器卷,这有容器销毁后可以继续挂这个卷,保持数据持不丢失。

3、启动java api容器

docker run --name zabbix-java-gateway -t  --restart unless-stopped -d zabbix/zabbix-java-gateway

4、启动zabbix-server

docker run --name zabbix-server-mysql -t  \
      -e DB_SERVER_HOST="mysql-server" \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      --network=zabbix-net \
      -e TZ="Asia/Shanghai" \
      -e MYSQL_PASSWORD="123456789" \
      -e MYSQL_ROOT_PASSWORD="123456789" \
      -e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
     -e  ZBX_CACHESIZE="1024M" \
     -e  ZBX_DEBUGLEVEL="3" \
     -e  ZBX_STARTDISCOVERERS='5' \
      -p 10051:10051 \
      --restart unless-stopped \
     -v zabbix_conf:/etc/zabbix/ \
      -d zabbix/zabbix-server-mysql

当监控主机过多的时候zabb进程容易挂死,需要在启动容器的时候设置环境变量ZBX_CACHESIZE=“1024M” ,默认参数为8M。
ZBX_STARTDISCOVERERS=“5” 解决zabbix discover进程经常告警利用率过高;
需要监控VMware环境需在环境变量中加入下面参数。

  -e ZBX_VMWAREFREQUENCY="10" \
      -e ZBX_VMWAREPERFFREQUENCY="60" \
     -e ZBX_VMWARECACHESIZE="1024M" \
     -e ZBX_VMWARETIMEOUT="30" \

注意:zabbix-server的配置文件修改后会,容器重启后会还原,因此需要在创建容器的时候设置环境变量对配置文件进行修改。

5、启动zabbix前端web容器;

docker run --name zabbix-web-nginx-mysql -t \
      -e ZBX_SERVER_HOST="zabbix-server-mysql" \
      -e DB_SERVER_HOST="mysql-server" \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      -e PHP_TZ="Asia/Shanghai"\
      -e MYSQL_PASSWORD="123456789" \
      -e MYSQL_ROOT_PASSWORD="123456789" \
      -p 8000:8080 \
     --network=zabbix-net \
      --restart unless-stopped \
      -d zabbix/zabbix-web-nginx-mysql

6、其他注意事项

a、zabbix邮件告警支持126邮箱和163邮箱,使用qq邮箱会失败,原因不详。
b、zabbix-agent部署分主动模式和被动模式,跟进新建主机选择的模板觉得,模板有主动和被动。
c、启动容器务必要设置时区;
d、数据库数据要挂载到容器卷;

到此这篇关于docker快速部署zabbix的方法的文章就介绍到这了,更多相关docker部署zabbix内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯