xzkjgw 2020-06-09
刚录制完Zabbix4.4 +Grafana企业监控实战,3个月之后Zabbix 就推出新版本 5.0 LTS,这个版本是长期支持版本,未来几年都会流行。所以我这边也补充课程并讲解下。
当然Zabbix 4.4 也是承前启后的版本,因为Zabbix4.4是4.x的最后一个版本,包含了大部分5.0的功能。
官方下载地址:?https://www.zabbix.com/cn/download
Zabbix 5.0 LTS新特性:
(1) 5.0 LTS的发布时间为 2020年 4月
(2)Zabbix Agent?使用 golang 语言编写,可方便编写各种插件,灵活配置监控。(当然4.4 也是Golang编写,4.4之前是C编写)
(3)PHP的版本需要7.2.x或者以上
(4)Mysql需要5.6或者以上
Linux的Zabbix的包安装方法大致可以有如下几种:
(1)服务端和客户端都是通过源码包编译安装(官网有说明)
(2)服务端和客户端都是通过yum进行安装(官网有说明)
(3)服务器用源码包编译安装,客户端通过yum的RPM包进行安装。(官网虽然没有说明,但是这种方案是可行,我每次都是这样装的,不会存在性能问题)
我们采用的服务器平台如下:
现在来开始我们的部署,为了简单起见,我们采用上面的方案3的方式,源码包编译的方式进行部署:
yum -y install deltarpm
准备Mysql数据库
数据库请自行安装好,至少要采用Mysql的5.6版本或者以上,这个zabbix 5.0的安装方法和Zabbix 4.4差不多,至少zabbix 5.0 需要PHP的版本是7.2.x。
# mysql -uroot -p password mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to identified by ‘123456‘; mysql> quit;
以上LNMP环境的安装可参阅我的另外的一篇博文:?https://blog.csdn.net/knight_zhou/article/details/103872767
服务端安装:
下载最新的源码包 https://www.zabbix.com/download_sources
Shell>yum install mysql-devel libcurl libevent libevent-devel fping curl-devel libxml2 libxml2-devel
Shell>yum install mysql-devel libcurl libevent libevent-devel fping curl-devel libxml2 libxml2-devel snmpd net-snmp-devel net-snmp Shell>groupadd --system zabbix Shell>useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitor" zabbix Shell>cd /opt/tools/zabbix-5.0.0 Shell>./configure --prefix=/usr/local/zabbix/ --enable-server --enable-agent --with-mysql --with-libcurl --with-libxml2 --with-net-snmp Shell> make && make install
启动脚本:
/opt/tools/zabbix-5.0/misc/init.d // 启动脚本可以在该目录下拷贝,有不同平台的启动脚本 >cp /opt/tools/zabbix-5.0.0/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ >cp /opt/tools/zabbix-5.0.0/misc/init.d/fedora/core/zabbix_server /etc/init.d/
修改脚本的 BASEDIR 即可
BASEDIR=/usr/local/zabbix
修改服务端配置文件:
LogFile=/tmp/zabbix_server.log DBHost=localhost DBName=zabbix DBUser=zabbix_user DBPassword=123456 Timeout=10 LogSlowQueries=3000 CacheSize=256M TrendCacheSize=256M ValueCacheSize=256M StartTrappers=30 StartPollers=10
导入数据库的表结构:
mysql> source /opt/tools/zabbix-5.0.0/database/mysql/schema.sql mysql> source /opt/tools/zabbix-5.0.0/database/mysql/images.sql mysql> source /opt/tools/zabbix-5.0.0/database/mysql/data.sql
cd /opt/tools/zabbix-5.0.0 cp -rp ui/* /home/data/webroot/zabbix-web/ // 放到lnmp环境的网站根目录下,5.0的前端文件改名成ui了,4.x是front文件夹 通过浏览器访问下一步即可,过程中需要调整/etc/php.ini参数,根据提示调整参数即可
安装完成之后默认的账号密码为 Admin/zabbix
php.ini的参数修改如下:
post_max_size = 16M max_execution_time = 300 max_input_time = 300 date.timezone = Asia/Shanghai
最终完成:
启动服务端 :
/etc/init.d/zabbix_agentd start /etc/init.d/zabbix_server start
客户端安装
Shell>yum install mysql-devel libcurl libevent libevent-devel fping # 安装依赖 Shell>groupadd --system zabbix Shell>useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitor" zabbix Shell>cd /opt/tools/zabbix-5.0.0 Shell>./configure --prefix=/usr/local/zabbix/ --enable-agent --with-mysql --with-libcurl --with-libxml2 Shell> make && make install >cp /opt/tools/zabbix-5.0.0/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ > /etc/init.d/zabbix_server start
客户端的配置文件如下:
vim /usr/local/zabbix/etc/zabbix_agentd.conf
PidFile=/tmp/zabbix_agentd.pid LogFile=/tmp/zabbix_agentd.log LogFileSize=0 Server=127.0.0.1,172.20.128.31 ServerActive=127.0.0.1,172.20.128.31 Hostname=vm201 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
登录web界面的默认账号密码:
Admin/zabbix
最终看看效果图
(1)因为Zabbix的4.4的下一个版本就是5.0,所以在功能上差异不大,只是5.0 的UI界面变了,不过具体的UI界面对应的功能差不多。
(2 )功能调试:
#如果启动脚本启动不成功(不管是服务器端还是客户端),就前台启动一下看报错什么 /etc/init.d/zabbix_agentd #前台启动 /usr/local/zabbix/sbin/zabbix_agentd #或者看日志文件 /tmp/zabbix_agentd.log