安装基于LAMP的zabbix4.0监控
Zabbix-server端安装
zabbix服务端基础环境:LAMP(Linux+Apache+mysql+php)
未安装基础环境的同学,可以看看我之前写的文章
https://blog.csdn.net/PAIverson/article/details/100744713
安装zabbix4.0
安装zabbix-server、zabbix-agent及相关组件
#rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
$ yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
创建数据库 zabbix 并授权
$ mysql -uroot -pxxxxxx
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by ‘xxxxxxxx’;(数据库密码自己设置)
quit
#导入zabbix初始化数据
$ zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
系统将提示您输入新创建的数据库密码。也就是创建的zabbix数据库的密码
#修改zabbix-server配置文件
$ vim /etc/zabbix/zabbix_server.conf
修改连接数据库的配置
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=xxxxxxxx
#修改PHP时区
$ vim /etc/httpd/conf.d/zabbix.conf
将下面这行修改为亚洲上海
php_value date.timezone Asia/Shanghai
#启动zabbix-server、zabbix-agent、httpd
$ systemctl restart zabbix-server zabbix-agent httpd
$ systemctl enable zabbix-server zabbix-agent httpd
报错的话,看看selinux有没有关闭
getenforce
或者:
可以通过ipcs -lm命令查看目前系统共享内存的参数限制。
cat /proc/sys/kernel/sem
然后尝试将kernel.sem参数设置的大一点
vim /etc/sysctl.conf
在最后加入
fs.file-max=65535
kernel.sem = 500 64000 64 256 //kernel.sem这个可以根据需求在适当的调大一些。
[root@qiniu zabbix]# sysctl -p //使之设置生效
重启zabbix-agent,zabbix-server
打开浏览器,访问http://192.168.2.205/zabbix
如果修改了apach的默认端口80,则需要加上端口号才能打开
如果出现问题:
配置页面报错与前端数据库不匹配的话就是前面数据库zabbix设置有问题,可以根据上面的语句
再仔细配置一次。不行就自己在zibbix数据库下创建一个用户登录
找这个文件
zabbix/conf/zabbix.conf.php
文件里面也有数据库的配置不正确(见下面红色字体),修改后,可以正常显示zabbix页面。
$DB[‘DATABASE’] = ‘zabbix’;
$DB[‘USER’] = ‘zabbix’;
$DB[‘PASSWORD’] = ‘zabbix’;
Zabbix-agent端安装(被监控端)
Centos7:
$ yum install -y zabbix-agent zabbix-get
2.2.配置zabbix-agent
$ vim /etc/zabbix/zabbix_agentd.conf # 修改agent配置文件
Server=192.168.2.205 # zabbix服务端内网IP
ServerActive=192.168.2.205 # zabbix服务端内网IP,Active表示agent主动推送
Hostname=Jump Server # zabbix客户端主机名称,需要和web端添加的名称一致
Include=/etc/zabbix/zabbix_agentd.d/*.conf
把zabbix客户端加入开机自启动
sed -i ‘/subsys/a/etc/init.d/zabbix-agent start’ /etc/rc.local
启动zabbix-agent服务
systemctl start zabbix-agent.service
systemctl enable zabbix-agent.service //加入开机自启
netstat -lntup|grep zabbix_agentd //查看客户端服务占用端口
ubuntu 安装
apt-get install -y zabbix-agent
配置:
vim /etc/zabbix/zabbix_agentd.conf
#在配置文件将zabbix server 默认地址改为你设置的zabbix server服务端地址
Server=192.168.2.205 # zabbix服务端IP
ServerActive=192.168.2.205 # zabbix服务端IP,Active表示agent主动推送
Hostname=Jump Server # zabbix客户端主机名称,需要和web端添加的名称一致
Include=/etc/zabbix/zabbix_agentd.d/*.conf
有些ubuntu的没有server或者ServerActive,需要改
SourceIP=服务端ip地址
ufw disable #关闭防火墙
启动:
/etc/init.d/zabbix-agent start 或者 service zabbix-agent start
九、安装过程问题汇总以及解决方法
报错1:数据库不匹配1
配置页面报错与前端数据库不匹配的话就是前面数据库zabbix设置有问题,可以根据上面的语句
再仔细配置一次数据库。不行就自己在zibbix数据库下创建一个用户登录
报错2:数据库不匹配2
已经安装完成后,再对数据库信息进行了修改,需要在php页面里也要修改相关信息
找这个文件
zabbix/conf/zabbix.conf.php
文件里面也有数据库的配置不正确(见下面红色字体),修改后,可以正常显示zabbix页面。
$DB[‘DATABASE’] = ‘zabbix’;
$DB[‘USER’] = ‘zabbix’;
$DB[‘PASSWORD’] = ‘zabbix’;
报错3:启动zabbix-agent失败
报错的话,看看selinux有没有关闭、防火墙有没有关
getenforce
或者:
可以通过ipcs -lm命令查看目前系统共享内存的参数限制。
cat /proc/sys/kernel/sem
然后尝试将kernel.sem参数设置的大一点
vim /etc/sysctl.conf
在最后加入
fs.file-max=65535
kernel.sem = 500 64000 64 256 //kernel.sem这个可以根据需求在适当的调大一些。
[root@qiniu zabbix]# sysctl -p //使之设置生效
重启zabbix-agent
报错4:导入zabbix数据库时报No database selected
使用如下命令导入Zabbix数据库时报错
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p
Enter password: ERROR 1046 (3D000) at line 1: No database selected
解决办法:
//1,先把原始的数据库压缩包备份
cp /usr/share/doc/zabbix-server-mysql/create.sql.gz{,.bak}cd /usr/share/doc/zabbix-server-mysql
//2,解压数据库
gunzip create.sql.gz
//3,安装nano编辑数据库信息
yum -y install nano
nano create.sql
//在第一行加上
USE zabbix;
//然后重新导入库即可
cat create.sql | mysql -uroot -p
写完保存,ctrl+x,然后输入y,跳到最后一个页面然后回车
问题2:zabbix-server is not running
在zabbix页面查看到,zabbix服务并没有被拉起来在运行。
使用netstat -antp查看
Zabbix-server确实没有启动
解决方法:
查看selinux有没有关闭
getenforce
输出Enforcing 则没有关闭
临时关闭:
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
Permissive
永久关闭:
[root@localhost ~]# vim /etc/sysconfig/selinux
SELINUX=enforcing 改为SELINUX=disabled
重启服务source /etc/sysconfig/selinux
然后再重启zabbix-server
service zabbix-server restart
netstat -antp
现在看到zabbix-server服务已经拉起
Zabbix仪表盘也更新了