zabbix4.4编译安装

软件版本如下:zabbix4.4.3;php7.2.25;apache2.4.41;mysql5.6.46(软件下载地址请自行百度并安装)

注:安装之前请提前准备好LAMP环境

1、关闭防火墙

Centos 7.5开始iptables就不存在了改成firewalld了,生产环境根据需要进行开启。

systemctl stop firewalld.service
systemctl disable firewalld.service

2、关闭SElinux

SElinux是美国国家安全局开发的安全子系统(SELinux策略是白名单原则,所以你需要非常清楚你的各项操作都需要哪些访问权限),建议关闭、生产环境根据需要进行开启。

vim /etc/selinux/config
# 把SELNUX=enforcing换成SELINUX=disabled

3、安装依赖包

yum -y install gcc gcc-c++ make unixODBC-devel net-snmp-devel libssh2-devel OpenIPMI-devel libevent-devel mysql-devel httpd mysql-server mysql mysql-devel php php-mysql fping

4、解压并编译安装

zabbix下载地址:[https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.3/zabbix-4.4.3.tar.gz](https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX Latest Stable/4.4.3/zabbix-4.4.3.tar.gz)

tar -zxvf zabbix-4.4.3.tar.gz(选择自己下载的版本)
./configure –prefix=/usr/local/zabbix –enable-server –enable-agent –with-mysql –enable-ipv6 –with-net-snmp –with-libcurl –with-libxml2 && make && make install
# 注:编译安装命令这里就不解释了、不懂的请自行百度。

# 这里补充一下Zabbix_agent客户端和Zabbix_Java_Gateway安装方式:
./configure –prefix=/usr/local/zabbix –enable-agent && make && make install
./configure –prefix=/usr/local/zabbix –enable-java && make && make install

5、创建用户和组

groupadd –system zabbix
useradd –system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c “Zabbix Monitoring System” zabbix

6、复制启动脚本

cp misc/init.d/fedora/core/zabbix_* /etc/init.d/
ll -d /etc/init.d/zabbix_*
chmod +x /etc/init.d/zabbix_*

7、重启数据库并导入数据表

systemctl start mysqld.service
systemctl enable mysqld.service

mysqladmin -uroot password ‘123123’(设置root用户密码为123123)
mysql -uroot -p123123(登录mysql)
create database zabbix character set utf8 collate utf8_bin;(创建数据库,名称为zabbix,并将其字符集设置为UTF-8)
grant all privileges on zabbix.* to zabbix@localhost identified by ‘123456’;(对用户进行授权,请记住密码,输入密码)
grant all privileges on zabbix.* to zabbix@127.0.0.1 identified by ‘123456’;
flush privileges;(刷新权限,使其立即生效)
mysql> quit;

# 导入表结构
cd zabbix-4.2.5(数据表结构在安装包的database文件夹里面)
mysql -uzabbix -p123456 zabbix < database/mysql/schema.sql  //表结构
mysql -uzabbix -p123456 zabbix < database/mysql/images.sql  //图片相关数据
mysql -uzabbix -p123456 zabbix < database/mysql/data.sql //模版相关数据

8、配置LAMP

配置 php 环境,修改 php.ini,目的是 zabbix 的 web 代码要求这么配置才能正常运行,所以,不修改的后果就是无法安装,无法获得正常的环境。

[root@ localhost zabbix-4.2.5]# vim /etc/php.ini
878 date.timezone =Asia/Shanghai
384 max_execution_time = 300
672 post_max_size = 32M
394 max_input_time = 300
405 memory_limit = 128M  //如果web页面提示内存不够使用,请调整此值
1704 mbstring.func_overload = 0

9、重启HTTP服务

systemctl restart httpd.service
systemctl enable httpd.service

# 创建日志目录
cd /usr/local/zabbix
mkdir logs
chown zabbix:zabbix logs

10、修改zabbix_sever.conf服务器端的配置

cd /usr/local/zabbix/etc/
vim zabbix_server.conf
38行 LogFile=/usr/local/zabbix/logs/zabbix_server.log  //日志路径
68行 PidFile=/tmp/zabbix_server.pid  # 指定zabbix的pid文件
85行 DBHost=localhost  //数据库的地址
95行 DBName=zabbix  //数据库名称
111行 DBUser=zabbix  //数据库用户
119行 DBPassword=zabbix //数据库密码
126行 DBSocket=/var/lib/mysql/mysql.sock    //根据实际填写路径,此处为 YUM 安装的
134行 DBPort=3306  //数据库端口
574行 Include=/usr/local/zabbix/etc/zabbix_server.conf.d/*.conf
StartDiscoverers=10  //自动发现进程个数
StartPollers=100   //约5台服务器开一个进程,最大1000
StartIPMIPollers=10  //视IPMI监控主机个数而定
StartPollersUnreachable=10  //不可达主机重试获取数据进程个数
StartTrappers=10   //Trapper进程个数
StartPingers=10   //ping进程个数
AlertScriptsPath=/usr/lib/zabbix/alertscripts  //放脚本目录

11、修改zabbix_agentd.conf客户端代理参数

agentd 的作用就是获得 host 数据,然后将收集到的数据发送给 server。或者是 server 主动来拿取数据:

# /usr/local/zabbix/etc/配置目录

cp zabbix_agentd.conf zabbix_agentd.conf.origin
vim zabbix_agentd.conf
30行 LogFile=/usr/local/zabbix/logs/zabbix_agentd.log //日志路径
11行 PidFile=/tmp/zabbix_agentd.pid # 指定zabbix的pid文件
265行 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf  //自定义的 agentd 配置文件存放路径
93行 Server=127.0.0.1,175.25.184.132  //服务端 IP
134行 ServerActive=175.25.184.132:10051  //服务端 IP,端口固定
280行 UnsafeUserParameters=1 //自定义脚本功能,1 为开启,默认 0 为关闭

12、部署PHP页面文档

[root@localhost ~]# cd zabbix-4.4.3
[root@localhost zabbix-4.4.5]# cp -rf frontends/php/ /var/www/html/zabbix
[root@localhost zabbix-4.4.5]# chown -R apache.apache /var/www/html/zabbix/

注:zabbix前端页面采用PHP进行开发、这一步的目的是为了把前端页面拷贝进apache的运行目录。

13、访问浏览器

http://127.0.0.1/zabbix/

注:这一步我没截图、网上找的图片。嘿嘿

img

img

注:上面这一步如果有提示错误的、请自行百度相关PHP配置项。

img

img

img

img

注:zabbix4.4.3会提示无法配置zabbix.conf.php,点击页面上的链接下载zabbix.conf.php文件,上传到 var/www/html/zabbix/conf/ 文件夹下面,然后再点击完成、切记一定是上传完成以后在点击完成,也不要刷新页面。

img

# 默认账号:admin
# 默认密码:zabbix

img

设置语言为中文:

img

img

img

登录系统之后会提示zabbix服务未运行,并且页面系统信息zabbix server is running也显示为No,可能存在两个原因:

img

img

1、查看zabbix服务是否已经开启(10050端口是否正常)

2、如果zabbix服务一直无法启动、检查一下zabbix的两个启动路径。一个是/usr/local/zabbix/sbin/zabbix_server,另外一个是/etc/init.d/zabbix_server(这个地方有个坑、坑在通过vi编辑/etc/init.d/zabbix_server文件会发现、zabbix服务启动路径不对、导致zabbix服务无法开启)

3、zabbix_agentd同理

zabbix服务开启之后稍等1分钟、刷新页面会看到下面的错误已经消失、页面上系统信息也刷新出来了。

img

# 锁定安装页面(防止重新安装):
[root@localhost ~]# cd /var/www/html/zabbix/
[root@localhost zabbix]# mv setup.php setup.php.lock
[root@localhost zabbix]# chmod 600 setup.php.lock

14、启动zabbix_server服务

/etc/init.d/zabbix_server start
/etc/init.d/zabbix_agentd start
systemctl enable zabbix_agentd
systemctl enable zabbix_server

15、查看服务和端口

netstat -anpt | grep zabbix

img

推荐文章