https://blog.csdn.net/shudaqi2010/article/details/53762125
1、zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
2、下载zabbix(请下载最新版本)
wget http://netix.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.7/zabbix-2.4.7.tar.gz
下载php-fpm: http://php-fpm.org/download
tar zxvf zabbix-2.4.7.tar.gz
3、安装所需要的基础组件
yum install -y curl curl-devel mydql-devel net-snmp snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
php-mbstring php-ldap php-odbc php-xmlrpc php-fpm
4、创建MySQL 数据库和用户
create database zabbixdb;
CREATE USER 'zabbix'@'%' IDENTIFIED BY 'Union@123456';
GRANT ALL ON *.* TO 'zabbix'@'%';
flush privileges;
5.数据库导入zabbix template
按顺序导入模板数据
source /root/ftpdir/zabbix/zabbix-2.4.7/database/mysql/schema.sql
source /root/ftpdir/zabbix/zabbix-2.4.7/database/mysql/images.sql
source /root/ftpdir/zabbix/zabbix-2.4.7/database/mysql/data.sql
6、编译安装zabbix
cd /root/ftpdir/zabbix/zabbix-2.4.7
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql --enable-
net-snmp --with-libcurl
make
make install
--prefix----> 指定zabbix安装目录
--enable-server----> 支持zabbix服务器
--enable-agent----> 支持zabbix代理
--enable-proxy----> 支持zabbix代理服务器
--with-libcurl----> 使用curl包
--with-net-snmp----> 使用net-snmp软件包,选择性地指定路径NET-SNMP配置
--with-mysql=/usr/bin/mysql_con
注:如出现configure: error: MySQL library not found错误,是因为缺少mariadb-devel该软件包,yum install mariadb-
devel进行安装
7、修改PHP设置(web安装监控时会检查该设置)
修改php.ini为zabbix 建议的设置
编辑文件 php.ini,
vi /etc/php.ini
max_execution_time = 600
max_input_time = 600
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = Asia/Shanghai
8、修改Firewall 和SELinux 设置
9、配置Zabbix server参数
编辑文件/etc/zabbix/zabbix_server.conf,
vi /usr/local/zabbix/etc/zabbix_server.conf
[...]
DBName=zabbix
[...]
DBUser=zabbix
[...]
DBPassword=zabbix
[...]
10、修改zabbix_agentd.conf
vi /usr/local/zabbix/etc/zabbix_agentd.conf
修改
Server=127.0.0.1 ##agent端的ip
ServerActive=127.0.0.1
Hostname=Monitor server ##必须与zabbix创建的hostname相同
重启
/usr/local/zabbix/sbin/zabbix_agentd
11.正确配置php-fpm
yum install -y php-fpm
设置php-fpm开机启动 chkconfig php-fpm on
修改nginx.conf
取消location ~ /.php$ {注释,修改为:
location ~ /.php$ {
try_files $uri =404;
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
}
两个中代理的不操作或者改动。
12、通过控制台配置Zabbix
浏览器访问http://ip-address/php/stup.php
问题处理:
1.未安装php-fpm,nginx不能与php连接,浏览器访问返回的是代码页面
正确安装php-fpm,修改nginx.conf配置文件,重启php-fpm
2.php.ini未设置参数
修改php.ini于推荐数据,重启php-fpm
systemctl restart php-fpm
3.PHP databases support off Fail
原因是安装php-mysql连接包不能支持,故删除多余的,更新可安装
yum list php*
yum remove php-mysql.x86_64
yum install php-mysqlnd.x86_64
重启php-fpm
4./usr/local/nginx/html/php/conf缺少zabbix.conf.php
将离线的zabbix.conf.php上传到该目录重启php-fpm即可
5.登录http://ip-address/php/stup.php
账号Admin密码zabbix 注意A大写,通用
6.中文语言
Profile--Language-Update
7.web页面显示:zabbix server is not running 警告
find / -name zabbix_server.log查到具体错误 修改
修改/usr/local/zabbix/etc/zabbix_server.conf配置文件重启服务
DBName=zabbixdb监控新建数据库名
DBUser=zabbix登录该数据库用户名
DBPassword=Union@12345登录数据库密码
DBPort=3306监听端口
DBHost=10.0.0.131不要写localhost,尽量写实际IP
kill 进程号 ---重启服务/usr/local/zabbix/sbin/zabbix_server
刷新页面
8、问题:
1、cannot send list of active checks to [127.0.0.1]: host [Zabbix server] not monitored
在监控中显示Zabbix状态:Zabbix服务端运行中 值是NO(不)
解决方法:
(1)检查端口是否已开启
(2)检查是否已打开防火墙,已打开,请加例外, 或者关闭防火墙
(3)服务端的主机名必须与客户端Hostname一样
/usr/local/nginx/html/php/conf/zabbix.conf.php文件中的$DB['SERVER'] 与$ZBX_SERVER同样名字
$DB['SERVER'] = 'localhost';
$ZBX_SERVER = 'localhost';
(4)关闭SELinux(Security Enhanced Linux[安全加强的 Linux])
gedit /etc/sysconfig/selinux
修改为:SELINUX=disabled
修改:/usr/local/zabbix/etc/zabbix_agentd.conf配置文件
在监听该端口ListenPort=10051 与server的连接
重启应用:cd /etc/rc.d/init.d/
./zabbix_server restart
修改日志文件权限,或安装时指定其他目录,查看agentd/server.log日志
cd /tmp
chown zabbix:zabbix -R /tmp
修改zabbix数据库连接nginx的配置文件
cd /usr/share/nginx/html/zabbix/conf
cd /usr/local/src/zabbix-2.2.6/conf
查看监听端口:监听端口起了才算正常,否则查看agentd/server.log日志
netstat -nutlp | grep zabbix