步骤二:部署监控服务器Zabbix Server
1)源码安装Zabbix Server
多数源码包都是需要依赖包的,zabbix也一样,源码编译前需要先安装相关依赖包。
- [root@zabbixserver lnmp_soft]# yum -y install net-snmp-devel \
- > curl-devel
- //安装相关依赖包
- [root@zabbixserver lnmp_soft]# yum -y install \
- > libevent-devel-2.0.21-4.el7.x86_64.rpm
- //注意libevent-devel这个软件包在lnmp_soft目录下有提供
没有这个包可以到 www.centos.org 下载
也可以做一个网络yum源 ,最好用国内的yum源 阿里云 华为云 一般公司都用网络yum源
- [root@zabbixserver lnmp_soft]# tar -xf zabbix-3.4.4.tar.gz
- [root@zabbixserver lnmp_soft]# cd zabbix-3.4.4/
- [root@zabbixserver 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等服务,测试被监控主机服务的状态
- [root@zabbixserver zabbix-3.4.4]# make && make install
2)初始化Zabbix
创建数据库,上线Zabbix的Web页面
- [root@zabbixserver ~]# mysql
- mysql> create database zabbix character set utf8;
- //创建数据库,支持中文字符集
- mysql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';
- //创建可以访问数据库的账户与密码
- [root@zabbixserver ~]# cd lnmp_soft/zabbix-3.4.4/database/mysql/
- [root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix <</span> schema.sql
- [root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix <</span> images.sql
- [root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix <</span> data.sql
- //刚刚创建是空数据库,zabbix源码包目录下,有提前准备好的数据
- //使用mysql导入这些数据即可(注意导入顺序)
上线Zabbix的Web页面
- [root@zabbixserver ~]# cd lnmp_soft/zabbix-3.4.4/frontends/php/
- [root@zabbixserver php]# cp -r * /usr/local/nginx/html/
- [root@zabbixserver php]# chmod -R 777 /usr/local/nginx/html/*
修改Zabbix_server配置文件,设置数据库相关参数,启动Zabbix_server服务
- [root@zabbixserver ~]# vim /usr/local/etc/zabbix_server.conf ————所有的都是有模板
- DBHost=localhost
- //数据库主机,默认该行被注释
- DBName=zabbix
- //设置数据库名称
- DBUser=zabbix
- //设置数据库账户
- DBPassword=zabbix
- //设置数据库密码,默认该行被注释
- LogFile=/tmp/zabbix_server.log
- //设置日志,仅查看以下即可
- [root@zabbixserver ~]# useradd -s /sbin/nologin zabbix
- //不创建用户无法启动服务 ————无法用超级管理员来启动服务,必须创建普通用户
- [root@zabbixserver ~]# zabbix_server //启动服务
- [root@zabbixserver ~]# 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关闭服务后,再重新启动一次。
启动不了,就是进程影响了服务
修改Zabbix_agent配置文件,启动Zabbix_agent服务
- [root@zabbixserver ~]# 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
- [root@zabbixserver ~]# zabbix_agentd //启动监控agent
- [root@zabbixserver ~]# 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关闭服务后,再重新启动一次。
浏览器访问Zabbix_server服务器的Web页面
- [root@zabbixserver ~]# firefox http://192.168.2.5/index.php
- //第一次访问,初始化PHP页面会检查计算机环境是否满足要求,如果不满足会给出修改建议
- //默认会提示PHP的配置不满足环境要求,需要修改PHP配置文件
根据错误提示,修改PHP配置文件,满足Zabbix_server的Web环境要求
php-bcmath和php-mbstring都在lnmp_soft目录下有提供软件包。
- [root@zabbixserver ~]# yum -y install php-gd php-xml
- [root@zabbixserver ~]# yum install php-bcmath-5.4.16-42.el7.x86_64.rpm
- [root@zabbixserver ~]# yum install php-mbstring-5.4.16-42.el7.x86_64.rpm
- [root@zabbixserver ~]# vim /etc/php.ini
- date.timezone = Asia/Shanghai //设置时区
- max_execution_time = 300 //最大执行时间,秒
- post_max_size = 32M //POST数据最大容量
- max_input_time = 300 //服务器接收数据的时间限制
- memory_limit = 128M //内存容量限制
- [root@zabbixserver ~]# systemctl restart php-fpm
修改完PHP配置文件后,再次使用浏览器访问服务器,则会提示如图-1和图-2所示的提示信息。