自动化监控系统
cacti : 基于snmp(简单的网络管理协议)协议的监控软件,强大的绘图软件 缺点: 自带的监控模板比较少,不能默认 自带监控报警功能(只能自己去官网下载模板)
Nagios: 插件极多,自己写监控脚本潜入到ngagios非常方便
基于agent监控(在被监控的机器上必须有agent服务),默认自己支持报警机制,缺点不能绘图
zabbix: 是以上两种的综合体 基于多种监控机制,支持分布式
zabbix软件介绍:
1. zabbix是一个高度集成的监控解决方案
2. 可以时间企业级的开源分布式监控
3. zabbix通过C/S模式采集监控数据 C/S client/server
4. zabbix通过B/S模式实现web管理 B/S 浏览器/服务器
监控服务器 S
-- 监控服务器可以用过snmp或agent采集数据
-- 数据可以写入MYSQL ORACLE等数据库中
-- 服务器使用LNMP时间web前端的管理
被监控主机 C
-- 被监控主机需要安装Agent
-- 常见的网络设备一般支持snmp
部署LNMP环境
安装前准备:
监控服务器:
-- 设置主机名(zabbix )
-- 设置IP地址(192.168.1.164)
-- 关闭防火墙 selinux
监控客户端:
-- 主机web1(192.168.1.162)
-- 关闭防火墙 selinux
[root@zabbix ~]# yum -y install gcc pcre-devel openssl-devel zlib-devel #编译安装神器
[root@zabbix ~]# tar -xf nginx-1.12.2.tar.gz #解包
[root@zabbix ~]# cd nginx-1.12.2/ #进入目录
[root@zabbix ~]# ./configure --with-http_ssl_module
[root@zabbix ~]# make && make install #编译安装nginx
[root@zabbix ~]# yum -y install php php-mysql mariadb mariadb-devel mariadb-server #安装mariadb
[root@zabbix ~]# yum -y install php-fpm-5.4.16-42.el7.x86_64.rpm
修改nginx配置文件使之可以支持php服务
[root@zabbix tts]# vim /usr/local/nginx/conf/nginx.conf
默认是在65-71行左右 模式人注释掉的 打开注释并改成以下模样
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf; #打开注释只要改这一行就行了
}
启动服务
[root@zabbix tts]# systemctl restart php-fpm.service #启动php-fpm服务
[root@zabbix tts]# ss -natulp| grep 9000 #php服务默认端口是9000 使用ss查看
[root@zabbix tts]# /usr/local/nginx/sbin/nginx #启动nginx服务
[root@zabbix tts]# ss -natulp|grep 80 #ngnx默认端口80 能查看到就是成功了
[root@zabbix tts]# systemctl restart mariadb.service #启动数据库服务
[root@zabbix tts]# ss -natulp | grep 3306 #查看数据库端口 3306
测试配置
[root@zabbix tts]# vim /usr/local/nginx/html/ce.php
<?php
$i=33;
echo $i;
?>
:x
[root@zabbix tts]# curl http://127.0.0.1/test.php
33 #看到33才算成功
部署zabbix服务
(1) 修改nginx配置文件设置服务运行,满足服务的运行需求
vim /usr/local/nginx/conf/nginx.conf
http { #写在http里面
include mime.types;
default_type application/octet-stream;
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; #读取请求的超时时间
:x
[root@zabbix tts]# /usr/local/nginx/sbin/nginx -s reload #重启nginx服务 没报错就是成功了
(2) 编译安装zabbix服务
[root@zabbix ~]# yum -y install libevent-devel-2.0.21-4.el7.x86_64.rpm net-snmp-devel curl--devel
[root@zabbix zabbix-3.4.4]# ./configure --enable-server \ #enable-server提供监控服务
--enable-proxy --enable-agent \ #提供代理服务 提供客户端服务
--with-mysql=/usr/bin/mysql_config \ ##使用的数据库服务及路径
--with-net-snmp \ #让自己支持snmp服务
--with-libcurl #可以通过web页面查看监控信息
[root@zabbix zabbix-3.4.4]# make && make install