zabbix6.4中文文档1. 简介 (zabbix.com)
Zabbix 是一个企业级的开源分布式监控解决方案。
1.zabbix结构体系
Server:
server 是存储所有配置、统计和操作数据的中央存储库。
Proxy:
zabbix proxy可以代替 Zabbix server 收集性能和可用性数据。proxy 是 Zabbix 部署的可选部分;但是对于分散单个 Zabbix server 的负载非常有用。
Agent:
Zabbix agent 部署在被监控目标上,以主动监控本地资源和应用程序,并将收集到的数据报告给 Zabbix server。 从 Zabbix 4.4 开始,有两种类型的 agent 可用:Zabbix agent (轻量级,在许多平台上支持,用 C 编写)和 Zabbix agent 2 (非常灵活,易于使用插件扩展,用 Go 编写)。
数据存储:
Zabbix 收集的所有配置信息以及数据都存储在数据库中。
Web 界面:
为了从任何地方和任何平台轻松访问,Zabbix 提供了基于 Web 的界面。该接口是 Zabbix server 的一部分,通常(但不一定)与 server 运行在同一台设备上。
2.源码安装
1.下载源码Download Zabbix sources
wget https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.8.tar.gz
解压源码
tar -xvzf zabbix-6.4.8.tar.gz -C /opt/zabbix/
2.创建zabbix用户
groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix
3.创建Zabbix数据库
对于serve、proxy和前端都需要一个数据库
Zabbix支持多种数据库,我这里选用mysql(8.00.30+)
Zabbix 唯一支持的编码是 UTF-8 。
(1)创建zabbix数据库用户和用户
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user 'zabbix'@'localhost' identified by '123456';
mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
mysql> SET GLOBAL log_bin_trust_function_creators = 1;
(2)将数据导入数据库。 对于 Zabbix 代理数据库,只应导入 schema.sql
(不导入 images.sql 或 data.sql)。这几个SQL文件都在源码文件夹下database/mysql
因为我的mysql是在docker容器中就多做了几步
复制这几个SQL文件进入docker
[root@VM-12-12-centos mysql]# sudo docker cp /opt/zabbix/zabbix-6.4.8/database/mysql/data.sql 10d74d587551:/home/mysql/
[root@VM-12-12-centos mysql]# sudo docker cp /opt/zabbix/zabbix-6.4.8/database/mysql/images.sql 10d74d587551:/home/mysql/
[root@VM-12-12-centos mysql]# sudo docker cp /opt/zabbix/zabbix-6.4.8/database/mysql/schema.sql 10d74d587551:/home/mysql/
导入数据
bash-4.4# mysql -uzabbix -p123456 zabbix < /home/mysql/schema.sql
bash-4.4# mysql -uzabbix -p123456 zabbix < /home/mysql/images.sql
bash-4.4# mysql -uzabbix -p123456 zabbix < /home/mysql/data.sql
成功导入schema后,可以禁用 log_bin_trust_function_creators
:
SET GLOBAL log_bin_trust_function_creators = 0;
4. 配置源代码
要为Zabbix server和agent配置源代码,你可以执行类似如下命令:
/opt/zabbix/zabbix-6.4.8/configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi
如果报错缺失什么库就用yum安装什么库
直至显示
***********************************************************
* Now run 'make install' *
* *
* Thank you for using Zabbix! *
* <http://www.zabbix.com> *
***********************************************************
表示成功
5.make和install源码
编译并安装
make install
6.编辑配置文件
- 编辑 Zabbix agent 配置文件 /usr/local/etc/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
- 编辑 Zabbix 服务器配置文件 /usr/local/etc/zabbix_server.conf
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBUser=zabbix
DBPassword=123456
DBSocket=/tmp/mysql8.sock
DBPort=3308
7.启动守护进程
启动服务端
shell> zabbix_server
查看/tmp/zabbix_server.log日志是否开启成功
enabling Zabbix agent checks on host "Zabbix server": interface became available
表示开启成功
在被监控机器上启动客户端
shell> zabbix_agentd
查看/tmp/zabbix_agentd.log日志是否开启成功
8.安装zabbix 网页界面
Zabbix前端是PHP编写的,所以运行它需要PHP支持的网络服务器(Apache、Nginx)。
前提需要安装 PHP7.4+和Apache、Nginx中的一个
然后把zabbix源码下的ui/目录下的zabbix网页php源码复制到某个目录下用php启动
启动后用浏览器输入前端网址安装
把php的配置、扩展都弄好全部显示OK就好
配置数据库
下载保存到指定位置
配置完成。
默认用户名是Admin,密码zabbix。
主页