概述:公司的生产机器一共有12台,2台LVS(主备)、2台nginx、2台tomcat、1台后台服务器(nginx_tomcat)、3台mysql(主+备+异地灾备)、1台图片服务器、2台memcached.
可以看出网站的架构就是基于高可用的原理的,每个层面都做了主备、系统的PV不高,对于并发布,高性能没有那么苛求,对于系统安全、稳定有较高要求,前期已经对系统做了各种日志分析,WAF配置,漏洞扫面等等,现在还需要对系统进行监控,考虑再三还是决定使用Nagios来做。
PS:之前的同事用的Zabbix,表示我这十几台机器真是伤不起。。。
照着网上的材料来做,有的地方实在是坑。。把自己整理出来的结果发出来,给大家做个参考
--------------------------------------分割线 --------------------------------------
在Ubuntu下配置Mrtg监控Nginx和服务器系统资源
使用 snmp+Mrtg 监控 Linux 系统
在RHEL5.3上配置基本的Nagios系统(使用Nagios-3.1.2)
CentOS 5.5+Nginx+Nagios监控端和被控端安装配置指南
Ubuntu 13.10 Server 安装 Nagios Core 网络监控运用
--------------------------------------分割线 --------------------------------------
一、安装Nagios
1、安装依赖包
#rpm -q gcc glibc glibc-common gd gd-devel xinetd openssl-devel
#yum install -y gcc glibc glibc-common gd gd-devel xinetd openssl-devel
#yum - y install httpd php mysql-devel php-mysql
2、添加用户和组
#groupadd nagcmd
#useradd -G nagcmd nagios
#passwd nagios
#usermod -a -G nagcmd apache
3、编译安装
#tar nagios-3.4.3.tar.gz
#cd nagios
#./configure --sysconfdir=/etc/nagios --with-command-group=nagcmd --enable-event-broker
#make all
#make install
#make install-init
#make install-commandmode
#make install-config
在http的配置文件目录【conf.d】中创建nagios的web程序配置文件
#make install-webconf
创建一个登陆nagios web程序的用户,用这个账号登陆nagios(这是彻底的弱口令,配置完建议把密码修改掉)
#htpasswd -c /etc/nagios/htpasswd.users nagiosadmin
#密码:nagios
以上配置过程需重新启动httpd:
service httpd restart
报错信息:Could not reliably determine the server's fully qualified
vi /etc/httpd/conf/httpd.conf
加入:ServerName localhost:80
4、安装nagios-plugins
#tar zxvf nagios-plugins-1.4.13.tar.gz
#cd nagios-plugins-1.4.13
注意:组不使用nagcmd
#./configure --with-nagios-user=nagios --with-nagios-group=nagios
#make all
#make install
5.配置并启动nagios
(1)加入开机启动--
# chkconfig --add nagios<BR># chkconfig --level 35 nagios on<BR># chkconfig --list nagios
(2)检查其配置文件的语法是否正确
#/usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg
(3)启动nagios
#service nagios restart
(4)配置selinux【会阻止CGI脚本】
1 <SPAN>#getenforce<BR>#setenfore 0<BR>#vi /etc/sysconfig/selinux ->SELINUX=disabled</SPAN>
二、Nagios配置
这里只做简要说明,后续会贴出具体的配置
cgi.cfg
控制CGI访问的配置文件,如何新加了cgi配置文件,需要在这里增加
nagios.cfg
Nagios 主配置文件
resource.cfg
变量定义文件,又称为资源文件,在些文件中定义变量,以便由其他配置文件引用,如$USER1$,好吧,其实就就是全局变量
objects
objects 是一个目录,在此目录下有很多配置文件模板,用于定义Nagios 对象
objects/commands.cfg
命令定义配置文件,其中定义的命令可以被其他配置文件引用
objects/contacts.cfg
定义联系人和联系人组的配置文件
objects/localhost.cfg
定义监控本地主机的配置文件
objects/printer.cfg
定义监控打印机的一个配置文件模板,默认没有启用此文件
objects/switch.cfg
定义监控路由器的一个配置文件模板,默认没有启用此文件
objects/templates.cfg
定义主机和服务的一个模板配置文件,可以在其他配置文件中引用
objects/timeperiods.cfg
定义Nagios 监控时间段的配置文件
objects/windows.cfg
监控Windows 主机的一个配置文件模板,默认没有启用此文件
三、NRPE安装【客户端】