zabbix两种安装方式:
一、进入官网进行下载rpm版本:https://www.zabbix.com/
官方zabbix安装文档:
全看你选择后的官方教程啦!
二、tar包安装:
或者:百度网盘资源: https://pan.baidu.com/s/1b75C8x0PWqGV1uVN6EKCqQ
提取码:mcsj
实验拓扑图:
服务器名称 | ip |
---|---|
zabbixserver | 192.168.78.129 |
zabbix-web1 | 192.168.78.130 |
步骤一:部署监控服务器
部署LNMP,zabbix中web监控管理界面,需要LNMP架构支持
1)安装部署nginx相关操作:
yum -y install gcc pcre-devel openssl-devel
tar -xvf nginx-1.16.1.tar.gz
cd 到解压的nginx目录中:
./configure --with-http_ssl_module
make &&make install
安装数据库和PHP
yum -y install php php-mysql php-fpm mariadb mariadb-devel mariadb-server
yum -y install php-fpm-5.4.16-42.el7.x86_64.rpm
//注意:php-fpm软件包 在上方百度网盘链接里!
2)修改Nginx配置文件
http{
… …
fastcgi_buffers 8 16k; #缓存php生成的页面内容,8个16k
fastcgi_buffer_size 32k; #缓存php生产的头部信息
fastcgi_connect_timeout 300; #连接PHP的超时时间
fastcgi_send_timeout 300; #发送请求的超时时间
fastcgi_read_timeout 300; #读取请求的超时时间
开启动态PHP解析:
sed -i '70,76s/#//' /usr/local/nginx/conf/nginx.conf
注释掉改行 fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
sed -i '74s/^/#/' /usr/local/nginx/conf/nginx.conf
修改一下配置文:include fastcgi_params
sed -i '75s/fastcgi_params/fastcgi.conf/' /usr/local/nginx/conf/nginx.conf
3)启动服务
启动Nginx、PHP-FPM、MariaDB服务,关闭SELinux与防火墙
systemctl restart mariadb //启动mariadb
systemctl restart php-fpm //启动php
/usr/local/nginx/sbin/nginx //启动nginx
setenforce 0 //关闭selinux
firewall-cmd --set-default-zone=trusted //设置防火墙为宽松模式
4)测试一下LNMP环境:
cat /usr/local/nginx/html/test.php
<?php
$i=33;
echo $i;
?>
curl http://localhost/test.php
步骤二:部署监控服务器Zabbix Server
1)源码安装Zabbix Server
yum -y install net-snmp-devel curl-devel
//安装相关依赖包
yum -y install libevent-devel-2.0.21-4.el7.x86_64.rpm
//libevent-devel也在百度网盘
tar -xvf zabbix-4.4.4.tar.gz
解压zabbix源码包
进入zabbix目录
进行配置
./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
创建数据库,上线Zabbix的Web页面
mysql //登录mysql
mysql> create database zabbix character set utf8;
//创建数据库,支持中文字符集
mysql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';
//创建可以访问数据库的账户与密码
cd /root/zabbix-4.4.4/database/mysql
mysql -uzabbix -pzabbix zabbix < schema.sql
mysql -uzabbix -pzabbix zabbix < images.sql
mysql -uzabbix -pzabbix zabbix < data.sql
//刚刚创建是空数据库,zabbix源码包目录下,有提前准备好的数据
//使用mysql导入这些数据即可(注意导入顺序)
上线Zabbix的Web页面:
cd /root/zabbix-4.4.4/frontends/php/
cp -r * /usr/local/nginx/html/
chmod -R 777 /usr/local/nginx/html/*
修改Zabbix_server配置文件,设置数据库相关参数,启动Zabbix_server服务:
vim /usr/local/etc/zabbix_server.conf
DBHost=localhost
//数据库主机,默认该行被注释,在85行
DBName=zabbix
//设置数据库名称,在第94行
DBUser=zabbix
//设置数据库账户,在第110行
DBPassword=zabbix
//设置数据库密码,默认该行被注释,在118行
LogFile=/tmp/zabbix_server.log
//设置日志,仅查看以下即可,在第38行
useradd -s /sbin/nologin zabbix
//创建不可以登录的zabbix用户,不创建用户无法启动服务
zabbix_server //启动服务
netstat -ntplu | grep zabbix_server //确认连接状态,端口10051
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 50231/zabbix_server
提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_server,
一定要先使用killall zabbix_server关闭服务后,再重新启动一次。
修改Zabbix_agent配置文件,启动Zabbix_agent服务
vim /usr/local/etc/zabbix_agentd.conf
Server=127.0.0.1,192.168.78.129
//允许哪些主机监控本机,本机是服务端也要监控自己,配置在94行
ServerActive=127.0.0.1,192.168.78.129
//允许哪些主机通过主动模式监控本机,配置在135行
Hostname=zabbix_server
//设置本机主机名,配置在146行,给它改变一下
LogFile=/tmp/zabbix_server.log
//设置日志文件,配置在30行
UnsafeUserParameters=1
//是否允许自定义key,配置在303行,默认是0
zabbix_agentd //启动监控agent
netstat -ntplu | grep zabbix_agentd //查看端口信息为10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 50527/zabbix_agentd
提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_agentd,
一定要先使用killallzabbix_agentd关闭服务后,再重新启动一次。
浏览器访问Zabbix_server服务器的Web页面
根据错误提示,修改PHP配置文件,满足Zabbix_server的Web环境要求
php-bcmath和php-mbstring都在lnmp_soft目录下有提供软件包
yum -y install php-gd php-xml php-bcmath php-mbstring
//一定要坚持 rpm -q php-bcmath 是否安装成功,版本是否是下面的哪个,是就不执行下方命令
//一定要坚持 rpm -q php-mbstring 是否安装成功,版本是否是下面的哪个,是就不执行下方命令
yum -y 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
//设置时区,配置在878行
max_execution_time = 300
//最大执行时间,秒 配置在384行
post_max_size = 32M
//POST数据最大容量,配置在672行
max_input_time = 300
//服务器接收数据的时间限制,配置在394行
memory_limit = 128M
//内存容量限制,配置在405行
systemctl restart php-fpm //重启php-fpm
这里重新去看web页面:
这里提示看的出显示的是php的LDAP没有安装,我们之前没使用源码安装php,现在就不编译了直接yum安装:
yum -y install php-ldap
//安装完毕后,重启web服务后在访问
/usr/local/nginx/sbin/nginx -s stop
//重启nginx,先停止在启动
systemctl restart mariadb
//重启mariadb
systemctl restart php-fpm
//重启php-fpm
killall zabbix_agent //停止agent服务zabbix_agentd
//启动zabbix_agentd服务
killall zabbix_server //停止server服务zabbix_server
//启动server监控服务,默认应该杀不掉,执行一下放心点,放心不会造成出错!
看情况安装软件,可以不安装,ZABBIX-monitor
安装完毕,地址/usr/local/nginx/html/conf/zabbix.conf.php
进入首页看到的是英文状态,我们现在去设置语言为中文:
//完美的中文!
这里的一台监控是因为上面配置的agentd
,被监控端也指向了自己,就是也监控自己,正常监控端只配置server
,被监控端才配置agentd
**
配置别监控端,下一篇在写!
**