尊龙时凯

    热门搜索 Zabbix技术资料 Zabbix常见问、答讨论 成功案例 Zabbix交流区 Prometheus交流区

    zabbix监控系统快速部署(小白可入)

    前言

    zabbix是目前最为主流的开源监控方案之一,部署本身并不困难,难的是深入理解。根据在生产环境的实践从新版zabbix 4.0 LTS开始全部使用Docker部署,我相信未来越来越多的开源组件都会以容器化的形式呈现在我们面前。下面我就给大家讲解一下如何使用Docker快速部署zabbix系统。

    1. 环境准备

    Centos7系统

    服务器IP:192.168.75.31

    2. 安装docker

    2.1. Yum安装

    yum -y install docker

    2.2. 二进制安装(可离线)

    Docker二进制包下载,也可在windows下载后再上传至服务器

    wget http://download.docker.com/linux/static/stable/x86_64/docker-20.10.14.tgz

    zabbix二进制安装

    解压tar -zxf docker-20.10.14.tgz

    zabbix解压

    复制文件

    cp –ra docker/* /usr/bin

    zabbix文件复制

    编写system文件

    vim /etc/systemd/system/docker.service

    [Unit]

    Description=Docker Application Container Engine

    Documentation=http://docs.docker.io

    [Service]

    OOMScoreAdjust=-1000

    ExecStart=/usr/bin/dockerd

    ExecStartPost=/sbin/iptables -I FORWARD -s 0.0.0.0/0 -j ACCEPT

    ExecReload=/bin/kill -s HUP \$MAINPID

    Restart=on-failure

    RestartSec=5

    LimitNOFILE=infinity

    LimitNPROC=infinity

    LimitCORE=infinity

    Delegate=yes

    KillMode=process

    [Install]

    WantedBy=multi-user.target

    启动docker

    systemctl daemon-reload

    systemctl daemon-reload

    启动zabbix docker

    3. 拉取docker镜像

    访问zabbix官方提高的docker镜像

    http://www.zabbix.com/container_images

    zabbix docker镜像

    这里选择使用MySQL数据库的zabbix-server,zabbix-agent以及zabbix界面的三个镜像,zabbix版本为最新的6.2

    zabbix Docker

    zabbix6版本以上的MySQL数据库需为MySQL 8以上,因此拉取MySQL官方提供的MySQL 8镜像

    拉取四个镜像命令:(linux上执行)

    docker pull mysql:latest

    docker pull zabbix/zabbix-server-mysql:latest

    docker pull zabbix/zabbix-web-nginx-mysql:latest

    docker pull zabbix/zabbix-agent:latest

    镜像命令

    命令执行完后查看镜像是否拉取成功

    docker images

    4. 启动镜像

    4.1. 首先要启动MySQL数据库

    docker run –name zabbix-mysql -e MYSQL_DATABASE=zabbix -e MYSQL_ROOT_PASSWORD=zabbix -p 3306:3306 -d mysql:latest

    参数解释:

    –name zabbix-mysql 定义容器名称

    -e MYSQL_DATABASE=zabbix 初始数据库名zabbix

    -e MYSQL_ROOT_PASSWORD=zabbix 数据库root用户的密码zabbix

    -p 3306:3306 将容器3306端口映射到主机3306端口

    4.2. 然后启动zabbix-server

    docker run –name zabbix-server -e MYSQL_DATABASE=zabbix -e DB_SERVER_HOST=192.168.75.31 -e DB_SERVER_PORT=3306 -e MYSQL_USER=root -e MYSQL_PASSWORD=zabbix -p 10051:10051 -d zabbix/zabbix-server-mysql:latest

    参数解释:

    –name zabbix- server 定义容器名称

    -e DB_SERVER_HOST=192.168.75.31 数据库连接地址

    -e DB_SERVER_PORT=3306数据库连接端口

    -e MYSQL_DATABASE=zabbix连接的数据库名zabbix

    -e MYSQL_USER=root 数据库连接用户 root

    -e MYSQL _PASSWORD=zabbix 数据库连接密码zabbix

    -p 10051:10051 将容器10051端口映射到主机10051端口

    -d 后台运行

    zabbix/zabbix-server-mysql:latest 启动容器的镜像

    4.3. 最后启动zabbix界面

    docker run –name zabbix-web -e ZBX_SERVER_HOST=192.168.75.31 -e ZBX_SERVER_PORT=10051 -e DB_SERVER_HOST=192.168.75.31 -e DB_SERVER_PORT=3306 -e MYSQL_DATABASE=zabbix -e MYSQL_USER=root -e MYSQL_PASSWORD=zabbix -p 8080:8080 -p 8443:8443 -d zabbix/zabbix-web-nginx-mysql:latest

    参数解释:

    –name zabbix- web定义容器名称

    -e ZBX_SERVER_HOST=192.168.75.31 web连接server的地址

    -e ZBX_SERVER_PORT=10051 web连接server的端口

    -e DB_SERVER_HOST=192.168.75.31 数据库连接地址

    -e DB_SERVER_PORT=3306 连接的数据库端口

    -e MYSQL_DATABASE=zabbix 连接的数据库名zabbix

    -e MYSQL_USER=root数据库连接用户

    -e MYSQL _PASSWORD=zabbix数据库连接密码zabbix

    -p 8080:8080 将容器8080端口映射到主机8080端口

    -d 后台运行

    zabbix/zabbix-web-nginx-mysql:latest 启动容器的镜像

    5. 访问web

    全部启动后等待2-3分钟,待数据库初始化完成。

    然后访问web界面

    IP:8080

    zabbix web

    初始登录信息

    账户:Admin

    密码:zabbix

    登录后的界面

    zabbix登录

    修改成中文显示

    6. 添加agent监控

    启动agent

    docker run –name zabbix-agent –link zabbix-server -e ZBX_HOSTNAME=192.168.75.31 -e ZBX_SERVER_HOST=172.17.0.1 -e ZBX_SERVER_PORT=10051 -p 10050:10050 –privileged -d zabbix/zabbix-agent:latest

    参数解释:

    –name zabbix-agent 定义容器名称

    –link zabbix-server  连接到zabbix-server容器

    -e ZBX_HOSTNAME=192.168.75.31 zabbix-server主机名

    -e ZBX_SERVER_HOST=172.17.0.1 zabbix-server连接地址,这里固定这个IP

    -p 10050:10050 将容器10050端口映射到主机10050端口

    -d 后台运行

    PS:这里ZBX_SERVER_HOST无须修改IP

    然后到UI界面将默认的zabbix监控修改一下agent的IP信息

    即可完成agent监控的添加

    在监测>最新数据可看到监控正常获取数据

    至此,整个zabbix系统的搭建到此结束。

    如需zabbix监控其他的服务器,可在服务器安装部署一个agent,然后在配置>主机添加对应的监控对象即可完成监控。

    后面将会出一篇将agent打包成通用二进制部署包的文章,以方便如何快速进行agent客户端的安装。

    感谢大家的支持。

    更多zabbix相关技术分享,可以关注尊龙时凯社区:http://forum.ydcanyin.com/

    The prev: The next:

    Related recommendations

    Expand more!

    快速导航

    成功案例

    View all