Centos 上部署 Nagios
1.概述Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。2.Nagios部署2.1.环境配置1.Yum 安装所需的软件包和支持库Yum install-y httpd httpd-manualhttpd-devel gd gd-develperl-GDmysql-server mysql-devel php php-mysql php-gd php-pear perl-DBIperl-Digest-SHA1 perl-Digest-HMAC net-snmp-utils perl-socket6 perl-IO-INET6net-snmp-devel php-snmp dmidecodenet-snmp-perl perl-Crypt-DES fping perl-Config-IniFiles graphviz gcc-c++glib2-devel php-gd php-pdophp-ldap php-mbstring php-xml libYum-yinstall gccopenssl-develpcre-devel zlib-devel2.Sendmail部署Ø首先要确保sendmail相关组件的完整安装,我们可以使用如下的命令来完成sendmail的安装:# yum install -y sendmail*Ø然后重新启动sendmail服务:# service sendmail restartØ然后发送测试邮件,验证sendmail的可用性:# echo "Hello World" | mail abc@abc.com
mail yanjuxian@126.com testsdf(内容)ctrl +D2.2.Nagios部署Nagios 之前的准备,特别需要安装 Gd-devel,另外安装Nagios时需要加 –with-gd-lib=/usr/lib –with-gd-inc=/usr/include;不然不能生成 statusmap.cgi 也就不能看到状态图了1.创建运行帐户Groupadd nagiosUseradd –g nagios nagiosPasswd nagios
Mkdir /usr/local/nagiosChown –R nagios:nagios /usr/local/nagiosChmod 755 /usr/local/nagios/Usermod –G nagios apacheGrep ^User /etc/httpd/conf/httpd.confUser apach查看运行Apache的帐户2.Nagios主程序安装:Tar zxvf nagios-3.4.3.tar.gz
Cd nagios-3.4.3./configure –prefix=/usr/local/nagios--with-gd-lib=/usr/lib--with-gd-inc=/usr/include--enable-event-brokerMake allMake all installMake install-init//安装启动脚本到/etc/init.d/Make install-commandmodeMake install-config//安装初始配置文件到/usr/local/naigos3.Nagios-plugins的安装Tar zxvf nagios-plugins-1.4.14.tar.gzCd nagios-plugins-1.14./configure –prefix=/usr/local/nagios-pluginsMakeMake install安装完成以后在/usr/local/nagios-plugins 会产生一个Libexc的目录,将该目录全部移动至/User/local/nagios目录下即可。如下:Mv /usr/local/nagios-plugins/libexec/usr/local/nagios/
4.现在配置Apache:在apache的httpd.conf文件中加入以下内容:Vi /etc/httpd/conf/httpd.conf
ScriptAlias /nagios/cgi-bin/usr/local/nagios/sbin<Directory"/usr/local/nagios/sbin">Options ExecCGIAllowOverride NoneOrder allow,denyAllow from allAuthName "Nagios Access"AuthType BasicAuthUserFile/usr/local/nagios/etc/htpasswd.usersRequire valid-user</Directory>Alias /nagios /usr/local/nagios/share<Directory"/usr/local/nagios/share">Options NoneAllowOverride NoneOrder allow,denyAllow from allAuthName "Nagios Access"AuthType BasicAuthUserFile/usr/local/nagios/etc/htpasswd.usersRequire valid-user</Directory>重启ApacheService httpd restart
#vi/usr/local/nagios/etc/objects/contacts.cfg修改Nagiosadmin 这行其中的邮件地址为你的Email地址,以将报警邮件发到你的邮箱5.设置登陆Web 界面时HTTP验证的帐户密码Htpasswd –c/usr/local/nagios/etc/htpasswd.users nagiosadmin
重启动apacheService httpd restart
重启动NagiosService nagios restart
6.配置和启动Nagios7.Cd /usr/local/nagios/etc里面如果有cfg-sample,就把目录里的cgf-sample文件全部拷贝成.cfg例如:Cp nagios.cfg-sample nagios.cfg没有的话直接修改:Vi cgi.cfgUse_authentication=1 改称 use_authentication=0 即不用验证,不然有些页面不会显示。8.修改后用如下命令检查配置文件是否正常:/usr/local/nagios/bin/nagios –v /usr/local/nagios/etc/nagios.cfg如果出现如下显示就是说明配置没问题 Total Warnings:0 Total Errors:0如果有错误,用以下命令检查那里有错误:CD /usr/local/nagios/bin/ -d /usr/local/nagios/etc/nagios.cfg
Chown –R nagios.nagios nagios.logService nagios restartNagios部署完毕Http://IP/nagios/
3.Nagios邮件报警配置1.配置Contacts.cfg
1.vim /etc/nagios/objects/contacts.cfg2.3.define contact{ //30行4. contact_name nagiosadmin5.use generic-contact6. alias Nagios Admin7. email xxxx@163.com //这里改成自己的邮箱8. }
2.配置Nagios.cfg和Localhost.cfg查看复制打印?1.vim /etc/nagios/nagios.cfg2.3.enable_notifications=1 //807行,开启报警4.确认nagios.cfg里面的interval_length,通过那个,算出相应的5.normal_check_interval比如interval_length=60,那6.normal_check_interval=107.max_check_attempts=38.retry_check_interval=19.这样就实现在10分钟一次检测,重试3次,重试时间1分钟!10.11.上面的总的开启也就是nagios装的所有插件,出现问题都会报警12.13.vim /etc/nagios/objects/localhost.cfg14.15.define service{ //以processes为例16.use local-service ; Name of service template to use17. host_name localhost18. service_description Total Processes19. check_command check_local_procs!250!400!RSZDT20. notifications_enabled 121. }22.如果总的没有开启,Localhost,cfg里面可以一个一个配置,这样比较麻烦,如果总的开启了,里面的不想启动就可以Notifications_enables设置成0这样,就不会发报警,其他的发送报警。
3.添加发报警用户
1.# cyradm -u cyrus localhost --auth plain2.verify error:num=18:self signed certificate3.Password:4.IMAP Password:5.localhost> cm nagios6.localhost> quit
可以看一下nagios发邮件配置文件commands.cfg
4.配置Templates.cfg
Check_interval 5 检测时间;Retry_interval 1 重试间隔;Max_check_attempts 10 最大重试次数;Notification_interval 120 通告间隔,默认2个小时,这个设定的是再次发送通告的周期,
在一辆拥挤的公车上,一位女郎忽然叫了起来:别挤啦!别挤啦!把人家的奶都挤出来啦!(她拿着酸奶呢)。 老天,你让夏天和冬天同房了吧?生出这鬼天气! 美女未抱身先走,常使色狼泪满襟。。。。。。 天塌下来你顶着,我垫着! 写的真的很不错 所有刻骨铭心的爱都灵魂游离于床上的瞬间!
页:
[1]