Centos上部署Nagios

1.概述

Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。

创新互联专注于东城网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供东城营销型网站建设,东城网站制作、东城网页设计、东城网站官网定制、小程序设计服务,打造东城网络公司原创品牌,更为您提供东城网站排名全网营销落地服务。

2.Nagios部署

2.1.环境配置

1.Yum安装所需的软件包和支持库

Yum install  -y httpd httpd-manualhttpd-devel gd gd-devel  perl-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-INET6  net-snmp-devel php-snmp dmidecode  net-snmp-perl perl-Crypt-DES fping perl-Config-IniFiles graphviz gcc-c++  glib2-devel php-gd php-pdo  php-ldap php-mbstring php-xml lib

Yum  -y  install gcc  openssl-devel  pcre-devel zlib-devel

2.Sendmail部署

Ø首先要确保sendmail相关组件的完整安装,我们可以使用如下的命令来完成sendmail的安装:

# yum install -y sendmail*

Ø然后重新启动sendmail服务:

# service sendmail restart

Ø然后发送测试邮件,验证sendmail的可用性:

# echo "Hello World" | mail abc@abc.com

mail yanjuxian@126.com test

sdf(内容)

ctrl +D

2.2.Nagios部署

Nagios之前的准备,特别需要安装 Gd-devel,另外安装Nagios时需要加 –with-gd-lib=/usr/lib –with-gd-inc=/usr/include;不然不能生成 statusmap.cgi 也就不能看到状态图了

1.创建运行帐户

Groupadd nagios

Useradd –g nagios nagios

Passwd nagios

Mkdir /usr/local/nagios

Chown –R nagios:nagios /usr/local/nagios

Chmod 755 /usr/local/nagios/

Usermod –G nagios apache

Grep ^User /etc/httpd/conf/httpd.conf

User 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-broker

Make all

Make all install

Make install-init  //安装启动脚本到/etc/init.d/

Make install-commandmode

Make install-config  //安装初始配置文件到/usr/local/naigos

3.Nagios-plugins的安装

Tar zxvf nagios-plugins-1.4.14.tar.gz

Cd nagios-plugins-1.14

./configure –prefix=/usr/local/nagios-plugins

Make

Make 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

Options ExecCGI

AllowOverride None

Order allow,deny

Allow from all

AuthName "Nagios Access"

AuthType Basic

AuthUserFile/usr/local/nagios/etc/htpasswd.users

Require valid-user

Alias /nagios /usr/local/nagios/share

Options None

AllowOverride None

Order allow,deny

Allow from all

AuthName "Nagios Access"

AuthType Basic

AuthUserFile/usr/local/nagios/etc/htpasswd.users

Require valid-user

重启Apache

Service httpd restart

#vi/usr/local/nagios/etc/objects/contacts.cfg

修改Nagiosadmin 这行其中的邮件地址为你的Email地址,以将报警邮件发到你的邮箱

5.设置登陆Web 界面时HTTP验证的帐户密码

Htpasswd –c/usr/local/nagios/etc/htpasswd.users nagiosadmin

重启动apache

Service httpd restart

重启动Nagios

Service nagios restart

6.配置和启动Nagios

7.Cd /usr/local/nagios/etc

里面如果有cfg-sample,就把目录里的cgf-sample文件全部拷贝成.cfg例如:

Cp nagios.cfg-sample nagios.cfg

没有的话直接修改:

Vi cgi.cfg

Use_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.log

Service nagios restart

Nagios部署完毕

Http://IP/nagios/

3.Nagios邮件报警配置

1.配置Contacts.cfg

1.vim /etc/nagios/objects/contacts.cfg  

2.

3.define contact{                  //30行

4.        contact_name                    nagiosadmin  

5.use                             generic-contact  

6.        alias                           Nagios Admin  

7.        email                           xxxx@163.com    //这里改成自己的邮箱

8.        }  

2.配置Nagios.cfg和Localhost.cfg

查看复制打印?

1.vim /etc/nagios/nagios.cfg  

2.

3.enable_notifications=1                //807行,开启报警

4.确认nagios.cfg里面的interval_length,通过那个,算出相应的

5.normal_check_interval比如interval_length=60,那

6.normal_check_interval=10

7.max_check_attempts=3

8.retry_check_interval=1

9.这样就实现在10分钟一次检测,重试3次,重试时间1分钟!

10.

11.上面的总的开启也就是nagios装的所有插件,出现问题都会报警

12.

13.vim /etc/nagios/objects/localhost.cfg  

14.

15.define service{                  //以processes为例

16.use                             local-service         ; Name of service template touse

17.        host_name                       localhost  

18.        service_description             Total Processes  

19.        check_command                   check_local_procs!250!400!RSZDT  

20.        notifications_enabled           1  

21.        }  

22.

如果总的没有开启,Localhost,cfg里面可以一个一个配置,这样比较麻烦,如果总的开启了,里面的不想启动就可以Notifications_enables设置成0这样,就不会发报警,其他的发送报警。

3.添加发报警用户

1.[root@localhost objects]# cyradm -u cyrus localhost --auth plain  

2.verify error:num=18:self signed certificate  

3.Password:  

4.IMAP Password:  

5.localhost> cm nagios  

6.localhost> quit  

可以看一下nagios发邮件配置文件commands.cfg

4.配置Templates.cfg

Check_interval          5    检测时间;

Retry_interval          1    重试间隔;

Max_check_attempts      10    最大重试次数;

Notification_interval   120    通告间隔,默认2个小时,这个设定的是再次发送通告的周期,


新闻标题:Centos上部署Nagios
浏览路径:http://scyanting.com/article/ghdppd.html