1、部署监控服务器Zabbix Server
环境 RHEL7.4
安装依赖
yum -y install net-snmp-devel curl-devel libevent-devel
源码包安装 zabbix-3.4.4.tar.gz
tar -xf zabbix-3.4.4.tar.gz
cd zabbix-3.4.4/
./configure --enable-server \
--enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config
--with-net-snmp --with-libcurl
// --enable-server安装部署zabbix服务器端软件
// --enable-agent安装部署zabbix被监控端软件
// --enable-proxy安装部署zabbix代理相关软件
// --with-mysql配置mysql_config路径
// --with-net-snmp允许zabbix通过snmp协议监控其他设备
// --with-libcurl安装相关curl库文件,这样zabbix就可以通过curl连接http等服务,测试被监控主机服务的状态
make && make install
2、初始化Zabbix
安装mairadb、mariadb-server
创建数据库,上线Zabbix的Web页面
create database zabbix character set utf8;
grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';
exit
cd lnmp_soft/zabbix-3.4.4/database/mysql/
mysql -uzabbix -pzabbix zabbix < schema.sql
mysql -uzabbix -pzabbix zabbix < images.sql
mysql -uzabbix -pzabbix zabbix < data.sql
刚刚创建是空数据库,zabbix源码包目录下,有提前准备好的数据
使用mysql导入这些数据即可(注意导入顺序)
2.1 上线Zabbix的Web页面
cd lnmp_soft/zabbix-3.4.4/frontends/php/
cp -r * /usr/local/nginx/html/
chmod -R 777 /usr/local/nginx/html/
2.2 修改Zabbix_server配置文件,设置数据库相关参数,启动Zabbix_server服务
vim /usr/local/etc/zabbix_server.conf
DBHost=localhost
//数据库主机,默认该行被注释
DBName=zabbix
//设置数据库名称
DBUser=zabbix
//设置数据库账户
DBPassword=zabbix
//设置数据库密码,默认该行被注释
LogFile=/tmp/zabbix_server.log
//设置日志
useradd -s /sbin/nologin Zabbix
//不创建用户无法启动服务
zabbix_server //启动服务
ss -ntulp |grep zabbix_server //确认连接状态,端口10051
tcp LISTEN 0 128 *:10051 *:* users:(("zabbix_server",pid=23275,fd=4),("zabbix_server",pid=23274,fd=4)
提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_server,一定要先使用killall zabbix_server关闭服务后,再重新启动一次。
2.3 修改Zabbix_agent配置文件,启动Zabbix_agent服务
vim /usr/local/etc/zabbix_agentd.conf
Server=127.0.0.1,192.168.2.5 //允许哪些主机监控本机
ServerActive=127.0.0.1,192.168.2.5 //允许哪些主机通过主动模式监控本机
Hostname=zabbix_server //设置本机主机名
LogFile=/tmp/zabbix_server.log //设置日志文件
UnsafeUserParameters=1 //是否允许自定义key
zabbix_agentd //启动监控agent
ss -ntulp |grep zabbix_agentd //查看端口信息为10050
tcp LISTEN 0 128 *:10050 *:* users:(("zabbix_agentd",pid=23505,fd=4),("zabbix_agentd",pid=23504,fd=4)
提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_agentd,一定要先使用killall zabbix_agentd关闭服务后,再重新启动一次。
2.4 浏览器访问Zabbix_server服务器的Web页面
firefix http://zabbixserver/index.php
第一次访问,初始化PHP页面会检查计算机环境是否满足要求,如果不满足会给出修改建议
默认会提示PHP的配置不满足环境要求,需要修改PHP配置文件
根据错误提示,修改PHP配置文件,满足Zabbix_server的Web环境要求
php-bcmath和php-mbstring都在lnmp_soft目录下有提供软件包。
yum -y install php-gd php-xml
yum install php-bcmath-5.4.16-42.el7.x86_64.rpm
yum install php-mbstring-5.4.16-42.el7.x86_64.rpm
vim /etc/php.ini
date.timezone = Asia/Shanghai //设置时区
max_execution_time = 300 //最大执行时间,秒
post_max_size = 32M //POST数据最大容量
max_input_time = 300 //服务器接收数据的时间限制
memory_limit = 128M //内存容量限制
至此,sever端已安装完成
3、部署被监控主机Zabbix Agent
3.1 源码安装Zabbix agent软件
useradd -s /sbin/nologin zabbix
yum -y install gcc pcre-devel
tar -xf zabbix-3.4.4.tar.gz
cd zabbix-3.4.4/
./configure --enable-agent
make && make install
拷贝启动脚本,有启动脚本可以方便管理服务,启动与关闭服务。启动脚本位于zabbix源码目录下
cd misc/init.d/fedora/core
cp zabbix_agentd /etc/init.d/
/etc/init.d/Zabbix_agentd start
/etc/init.d/Zabbix_agentd stop
/etc/init.d/Zabbix_agentd status
/etc/init.d/Zabbix_agentd restart
3.2 修改agent配置文件,启动Agent
vim /usr/local/etc/zabbix_agentd.conf
Server=127.0.0.1,192.168.2.5 //谁可以监控本机(被动监控模式)
ServerActive=127.0.0.1,192.168.2.5 //谁可以监控本机(主动监控模式)
Hostname=zabbix_client_web1 //被监控端自己的主机名
EnableRemoteCommands=1 //监控异常后,是否允许服务器远程过来执行命令,如重启某个服务
UnsafeUserParameters=1
zabbix_agentd //启动agent服务