您的位置:首页 > 运维架构 > Docker

Docker 安装 zabbix4.2

2020-06-06 06:09 417 查看


    Zabbix 是一个企业级的、开源的、分布式的监控套件,被用来监控IT基础设施的可用性和性能。Zabbix可以监控网络和服务的监控状况,Zabbix 利用灵活的告警机制,允许用户对事件发送基于邮件、短信、微信和钉钉等告警方式,这样可以保证快速的对问题作出相应。
    Zabbix支持主动和被动两种方式.所有的Zabbix报告都可以通过配置参数在WEB前端进行访问,Web前端将帮助你在任何区域都能够迅速获得你的网络及服务状况。 zabbix架构不仅支持小型组织,还支持大规模的公司的部署。Zabbix 是零成本的,因为 Zabbix 编写和发布基于 GPL V2 协议,意味着源代码是免费发布的。

  • 基本环境
操作系统 CPU 内存 硬盘
CentOS-7-1908 i7-10510U 8G 500G
  • 软件版本
软件 版本
docker 18.09.0-0505
mysql 5.7
zabbix-java-gateway 4.4.6
zabbix-server-mysql 4.4.6
zabbix-web-nginx-mysql 4.4.6
zabbix-agent 4.4.6
docker run --name mysqldb -t \
--hostname mysqldb \
--restart=always \
-v /etc/localtime:/etc/localtime \
-v /data/mysql/:/var/lib/mysql \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix" \
-e MYSQL_ROOT_PASSWORD="root" \
-d mysql:5.7 \
--character-set-server=utf8 --collation-server=utf8_bin
  • --name mysql-db
    :指定容器名称
  • -t
    :分配终端
  • --hostname mysql-server
    :容器主机名称
  • --restart=always
    :自动启动容器
  • -v /etc/localtime:/etc/localtime
    :让容器时间和宿主机时间同步
  • -v /data/mysql/:/var/lib/mysql
    :映射数据库目录
  • -e
    :指定变量
  • -d
    :后台运行
  • mysql:5.7
    :使用mysql5.7版本
  • --character-set-server=utf8
    :字符集设置
  • --collation-server=utf8_bin
    :排序规则
  • 运行zabbix-java-gateway
docker run --name zabbix-java-gateway -t \
--hostname zabbix-java-gateway \
--restart=always \
-v /etc/localtime:/etc/localtime \
-d zabbix/zabbix-java-gateway:latest
  • 运行zabbix-server-mysql
docker run --name zabbix-server-mysql -t \
--hostname zabbix-server-mysql \
--restart=always \
-v /etc/localtime:/etc/localtime \
-e DB_SERVER_HOST="mysqldb" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix" \
-e MYSQL_ROOT_PASSWORD="root" \
-e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
--link mysqldb:mysql \
--link zabbix-java-gateway:zabbix-java-gateway \
-p 10051:10051 \
-d zabbix/zabbix-server-mysql:latest
  • --link mysqldb:mysql
    :链接到“mysqldb”容器,后面的“mysql”是别名,类似与linux中的hosts文件里的内容。
  • --link zabbix-java-gateway:zabbix-java-gateway
    :链接到“zabbix-java-gateway”容器,后面“zabbix-java-gateway”是别名。
  • -p 10051:10051
    :对将容器里的主机10051端口映射到主机10051端口。
  • 运行zabbix-server-mysql
docker run --name zabbix-web-nginx-mysql -t \
--hostname zabbix-web-nginx-mysql \
--restart=always \
-v /etc/localtime:/etc/localtime \
-e PHP_TZ=Asia/Shanghai \
-e DB_SERVER_HOST="mysqldb" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix" \
-e MYSQL_ROOT_PASSWORD="root" \
--link mysqldb:mysql \
--link zabbix-server-mysql:zabbix-server \
-p 80:80 \
-d zabbix/zabbix-web-nginx-mysql:latest
  • -e PHP_TZ=Asia/Shanghai
    :使用的时区,如果不加服务器报警的时候就会使用国外的。
  • --link zabbix-server-mysql:zabbix-server
    :不要修改默认的“zabbix-server”名称,如果修改了会造成“zabbix-server”端起不来。
  • 安装zabbix-agent

注意,这里我不建议在docker版的zabbix-server中使用docker版的zabbix-agent,因为docker容器,重启之后IP地址会变更!!!

    我们可以到zabbix官网下载对应版本的agent来进行安装:http://repo.zabbix.com/zabbix

# 下载对应版本的zabbix-agent RPM安装包
wget http://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-agent-4.4.6-1.el7.x86_64.rpm
# 使用rpm -ivh 命令进行安装
rpm -ivh zabbix-agent-4.4.6-1.el7.x86_64.rpm

修改zabbix-agent配置文件

vim /etc/zabbix/zabbix_agentd.conf

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log  #错误日志
LogFileSize=0
ListenPort=10050  #启动监听端口
StartAgents=3 #被动模式下选择,主动模式则为0
ListenIP=0.0.0.0 #监听所有IP
Server=192.168.1.1 #被动模式下必填,将zabbix-server端的ip填入
#ServerActive=10.27.146.250 #主动模式下填写
Hostname=zabbix-server #本机的hostname,此值必须与zabbix的网页上创建的主机名一致即可
Include=/etc/zabbix/zabbix_agentd.d/

    修改完之后,使用命令

systemctl start zabbix-agent
启动zabbix-agnet服务,然后使用命令
systemctl enable zabbix-agent
设置zabbix-agent服务开机自动启动。

  • 登录zabbix
登录地址 用户名 密码
http://服务器IP Admin zabbix

    首次登录默认语言为英文,我们修改成中文。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: