centos7 安装 zabbix3.4(源代码安装)

Author Avatar
doubledna 1 月 20 日

(先理清一个概念 zabbix 的服务端(就是 zabbix_server)就是用来收集各个服务器信息的机器,而且 zabbix 的 web 界面也在这台机器上并需要安装数据库。而 zabbix_agent 就是安装在你要收集信息的机器上,一般安装这一个服务器就够了。)
1. 关闭 selinux #setenforce 0 临时关闭
需要关闭 selinux,一定要关闭这个,开启 selinux 会引起一连串问题,甚至 zabbix 的 discovery 功能也不能正常使用

sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config

确认是否修改成功

grep SELINUX /etc/selinux/config

然后重启系统即可

reboot

关闭防火墙

systemctl start firewalld.service# 启动 firewall
systemctl stop firewalld.service# 停止 firewall
systemctl disable firewalld.service# 禁止 firewall 开机启动

2.YUM 安装 LAMP 环境(这里就不详写)

3. 安装编译依赖包:yum -y install gcc net-snmp-devel libxml2-devel libcurl libcurl-devel libevent libevent-devel

3. 下载 zabbix3.4 源码压缩包,解压后进入解压包编译安装:

./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2(这里指定 --with-mysql 位置,具体看你的数据库安装在什么位置,zabbix_server,zabbix_proxy 都需要数据库)

make && make install

4. 创建 zabbix 用户:
groupadd zabbix
useradd -r -g zabbix zabbix
cd /usr/local && chown -R zabbix:zabbix zabbix

5. 创建 zabbix 数据库,并导入表结构:

mysql -uroot -p

mysql> create database if not exists zabbix default character set utf8 collate utf8_general_ci;
mysql> use zabbix;
mysql> source /tmp/zabbix-3.4.2/database/mysql/schema.sql;
mysql> source /tmp/zabbix-3.4.2/database/mysql/images.sql;
mysql> source /tmp/zabbix-3.4.2/database/mysql/data.sql;
创建 mysql 的 zabbix 用户用于后期 zabbix 安装:grant all privileges on zabbix.* to zabbix@127.0.0.1 identified by "zabbix";

6. 创建日志目录

cd /usr/local/zabbix

mkdir logs

chown zabbix:zabbix logs

7. 修改 zabbix_server.conf

vim ./etc/zabbix_server.conf

LogFile=/usr/local/zabbix/logs/zabbix_server.log
PidFile=/tmp/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/tmp/mysql.sock
Include=/usr/local/zabbix/etc/zabbix_server.conf.d/*.conf

8. 修改 zabbix_agent.conf

vim ./etc/zabbix_agentd.conf

PidFile=/tmp/zabbix_agentd.pid
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf

9. 启动 zabbix_server 和 zabiix_agent 服务

/usr/local/zabbix/sbin/zabbix_server

/usr/local/zabbix/sbin/zabbix_agent

10. 拷贝 WEB 应用程序,/data/html 为 nginx 或者 Apache 的运行 PHP 程序的目录

mv /tmp/zabbix-3.4.2/frontends/php/ /var/wwww/html/zabbix

chown -R www:www /var/www/html/zabbix

11. 访问 zabbix:http://ip/zabbix,初始化安装的默认账号:Admin,密码:zabbix
进入安装界面:
安装的第二步出现很多有关 php 的参数不对,请修改 php.ini 相关参数文件和安装一下库
yum install php-bcmath
yum install php-mbstring
yum -y install php-gd
yum -y install php-xml
yum -y install php-ldap
知道第二步显示全部 OK,
安装完成后进入 zabbix 主界面

12. 将 zabbix_server 和 zabbix_agentd 加入开机启动项:(这个有问题暂时不用!)
#cp /usr/local/zabbix/sbin/zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
#chmod +x /etc/rc.d/init.d/zabbix_agentd
#cd /etc/rc.d/init.d/
#chkconfig zabbix_agentd on
zabbix_server 按相同方式加入启动项即可,
以下为启动 zabbix 的两个服务
511 /etc/init.d/zabbix_server
512 /etc/init.d/zabbix_agentd

13. 以上为服务端和 web 端安装教程以下为客户端安装(zabbix_agent):
tar -zxvf zabbix-3.4.2.tar.gz
88 cd zabbix-3.4.2
89 ls
90 setenforce 0
91 sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
92 grep SELINUX /etc/selinux/config
93 systemctl stop firewalld.service
94 systemctl disable firewalld.service
96 yum -y install gcc net-snmp-devel libxml2-devel libcurl libcurl-devel libevent libevent-devel
97 ./configure --prefix=/usr/local/zabbix --enable-agent --with-net-snmp --with-libcurl --with-libxml2
98 make && make install
99 cd /usr/local/zabbix/
100 mkdir logs
101 groupadd zabbix
102 useradd -r -g zabbix zabbix
103 cd ..
104 chown -R zabbix:zabbix zabbix
105 cd zabbix/
106 ls -lrt
107 vim etc/zabbix_agentd.conf
(具体修改一下参数:
PidFile=/tmp/zabbix_agentd.pid
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
Server=192.168.147.128(这个是 zabbix_server 服务器的 ip)
Hostname=localhost

108 cd sbin/
109 ls
110 cp zabbix_agentd /etc/rc.d/init.d/zabbix_agentd
111 cd /etc/rc.d/init.d/
112 chmod +x zabbix_agentd
122 /etc/init.d/zabbix_agentd

在 zabbix_server 机器上执行:# zabbix_get -s 192.168.147.130 -p 10050 -k "system.uname" 有返回结果这表示配置 ok!
zabbix 登入用户:Admin 密码:zabbix
Grafana 用户:admin 密码:admin