Nagios+飞信的安装与配置.docx

上传人:b****5 文档编号:7431333 上传时间:2023-01-23 格式:DOCX 页数:15 大小:24.38KB
下载 相关 举报
Nagios+飞信的安装与配置.docx_第1页
第1页 / 共15页
Nagios+飞信的安装与配置.docx_第2页
第2页 / 共15页
Nagios+飞信的安装与配置.docx_第3页
第3页 / 共15页
Nagios+飞信的安装与配置.docx_第4页
第4页 / 共15页
Nagios+飞信的安装与配置.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

Nagios+飞信的安装与配置.docx

《Nagios+飞信的安装与配置.docx》由会员分享,可在线阅读,更多相关《Nagios+飞信的安装与配置.docx(15页珍藏版)》请在冰豆网上搜索。

Nagios+飞信的安装与配置.docx

Nagios+飞信的安装与配置

此平台是基于

CentOS5.4+nagios-3.2.1.tar.gz+nagios-plugins-1.4.14.tar.gz+nrpe-2.12.tar.gz+fetion2009等软件的组合搭建而成。

二、下载所需软件-Nagios主程序下载:

wget-Nagios-plugins下载

wget-Nrpe下载

wget-fetion机器人程序下载:

wgethttp:

//www.it-

三、服务端环境配置

安装apache+php

yum-yinstallhttpdphpphp-gdphp-develphp-snmp

为了支持Nagios安装完后statusmap,trend等完全显示,需要gd库的支持

yum-yinstallgd*

四、nagios主程序安装

useraddnagios

[root@mailnagios]#tarzxvfnagios-3.2.1.tar.gz

[root@mailnagios]#cdnagios-3.2.1

[root@mailnagios]#./configure--prefix=/usr/local/nagios\--with-gd-lib=/usr/local/lib–with-gd-inc=/usr/local/include

[root@mailnagios]#makeall

[root@mailnagios]#makeinstall//安装主程序,CGI和HTML文件

[root@mailnagios]#makeinstall-init//在/etc/rc.d/init.d安装启动脚本

[root@mailnagios]#makeinstall-commandmode//配置目录权限

[root@mailnagios]#makeinstall-config//安装示例配置文件

五、验证安装是否成功-验证程序是否被正确安装,我们切换目录到安装路径(我们这里用的是/usr/local/nagios),看是否存在etc、bin、sbin、share、var、这五个目录,如果存在说明程序被正确安装到系统了,下面我们对这五个目录功能做简要说明:

bin:

nagios执行程序所在的目录,nagios文件即为主程序。

etc:

nagios配置文件目录,当makeinstall-config完以后etc下面就会出现默认的配置文件。

sbin:

nagiosCGI文件所在目录,这里存放的是一些外部命令执行程序。

share:

nagios网页文件目录,存放一些html文件。

var:

nagios日志文件、spid等文件目录。

六、安装nagios-plugins

1.nagios-plugins的安装

[root@mailnagios]#tarzxvfnagios-plugins-1.4.14.tar.gz

[root@mailnagios]#cdnagios-plugins-1.4.14

[root@mailnagios-plugins-1.4.14]#./configure--prefix=/usr/local/nagios

make

makeinstall

这个装完之后会在/usr/local/nagios/多出一个libexec的文件夹,这里存放nagios所要用到的所有插件。

2.将apache的运行用户加到nagios组里面

grep^User/etc/httpd/conf/httpd.conf

usermod-Gnagiosapache//我的用户是apache

3.修改apache配置

修改apache的配置文件,增加nagios的目录,并且访问此目录需要进行身份验证。

vim/etc/httpd/conf/httpd.conf在最后增加以下内容:

ScriptAlias/nagios/cgi-bin/usr/local/nagios/sbin

OptionsExecCGI

AllowOverrideNone

Orderallow,deny

Allowfromall

AuthName"NagiosAccess"

AuthTypeBasic

AuthUserFile/usr/local/nagios/etc/.htpasswd//用于此目录访问身份验证的文件

Requirevalid-user

Alias/nagios/usr/local/nagios/share

OptionsNone

AllowOverrideNone

Orderallow,deny

Allowfromall

AuthName"NagiosAccess"

AuthTypeBasic

AuthUserFile/usr/local/nagios/etc/.htpasswd//用于此目录访问身份验证的文件

Requirevalid-user

4.增加验证用户:

也就是通过web访问nagios的时候,必须要用这个用户登陆.在这里我们增加用户test:

密码为123456

/htpasswd-c/usr/local/nagios/etc/.htpasswdtest//test为用户

Newpassword:

//(输入123456)

Re-typenewpassword:

//(再输入一次密码)

Addingpasswordforusertest

5.查看认证文件的内容:

less/usr/local/nagios/etc/.htpasswd

test:

OmWGEsBnoGpIc//前半部分是用户名test,后面是加密后的密码

到这里nagios的安装也就基本完成了,你可以通过web来访问了.

http:

//IP/nagios

会弹出对话框要求输入用户名密码

输入test,密码123456,就可以进入nagios的主页面了

但是可以发现什么也点不开,因为nagios还没启动呢!

下面的工作就是修改配置文件,增加要监控的主机和服务。

nagios要用起来,就必须修改配置文件,增加要监控的主机和服务才行.在具体做这个动作之前,下面的概念必须要了解.

 

七、nagios的典型配置

1.预备知识:

联系人contact出了问题向谁报告?

一般当然是系统管理员了

监控时间段timeperiod7X24小时不间断还是周一至周五,或是自定义的其他时间段被监控主机Host所需要监控的服务器,当然可以是监控机自己监控命令commandnagios发出的哪个指令来执行某个监控,这也是自己定义的

被监控的服务Service例如主机是否存活,80端口是否开,磁盘使用情况或者自定义的服务等

注意:

多个被监控主机可以定义为一个主机组,多个联系人可以被定义为一个联系人组

2.修改配置文件Ø修改nagios的主配置文件nagios.cfg

vi/usr/local/nagios/etc/nagios.cfg

cfg_file=/usr/local/nagios/etc/objects/localhost.cfg//在前面加#

cfg_file=/usr/local/nagios/etc/object/contacts.cfg//联系人配置文件路径

cfg_file=/usr/local/nagios/etc/object/contactgroups.cfg//联系人组配置文件路径

cfg_file=/usr/local/nagios/et/objectc/commands.cfg//命令配置文件路径

cfg_file=/usr/local/nagios/etc/object/host.cfg//主机配置文件路径

cfg_file=/usr/local/nagios/etc/object/hostgroups.cfg//服务器组配置文件

cfg_file=/usr/local/nagios/etc/object/templates.cfg//模板配置文件路径

cfg_file=/usr/local/nagios/etc/object/timeperiods.cfg//监视时段配置文件路径

cfg_file=/usr/local/nagios/etc/object/services.cfg//服务配置文件

其他配置文件以实际情况来进行配置

改check_external_commands=0为check_external_commands=1.这行的作用是允许在web界面下执行重启nagios、停止主机/服务检查等操作。

把command_check_interval的值从默认的1改成command_check_interval=10s(根据自己的情况定这个命令检查时间间隔,不要太长也不要太短)

主配置文件要改的基本上就是这些,通过上面的修改,发现/usr/local/nagios/etc并没有文件hosts.cfg等一干文件,怎么办?

稍后手动创建它们。

3.然后检查配置文件是否出错

/usr/local/nagios/bin/nagios-v/usr/local/nagios/etc/nagios.cfg

出现TotalWarnings:

0

TotalErrors:

0//这样表示配置文件没有错误

4.修改CGI脚本控制文件cgi.cfgØvi/usr/local/nagios/etc/cgi.cfg//它的作用是控制相关cgi脚本

先确保use_authentication=1。

接下来修改default_user_name=test(前面创建的用户名).

再后面的修改在下表列出:

authorized_for_system_information=nagiosadmin,mandahang,test//后面跟的都是用户名authorized_for_configuration_information=nagiosadmin,mandahang,test

authorized_for_system_commands=mandahang,testauthorized_for_all_services=nagiosadmin,mandahang,testauthorized_for_all_hosts=nagiosadmin,mandahang,test

authorized_for_all_service_commands=nagiosadmin,mandahang,test

authorized_for_all_host_commands=nagiosadmin,mandahang,test

注意:

在上面的配置文件里面加上新加的用户test,那么上述用户名打那里来的呢?

是执行命令

/usr/local/apache2/bin/htpasswd-c/usr/local/nagios/etc/htpasswdtest//(用户名test)所生成的

5.配置各种配置文件Ø定义监控时间段,创建配置文件timeperiods.cfg:

vitimeperiods.cfg

definetimeperiod{

timeperiod_name24x7//时间段的名称,这个地方不要有空格

alias24HoursADay,7DaysAWeek

sunday00:

00-24:

00

monday00:

00-24:

00

tuesday00:

00-24:

00

wednesday00:

00-24:

00

thursday00:

00-24:

00

friday00:

00-24:

00

saturday00:

00-24:

00

}

定义了一个监控时间段,它的名称是24x7,监控的时间是每天全天24小时:

定义联系人,创建配置文件contacts.cfg

vicontacts.cfg

definecontact{

contact_nametest//联系人的名称,这个地方不要有空格

aliassysadmin

service_notification_period24x7

host_notification_period24x7

service_notification_optionsw,u,c,r

host_notification_optionsd,u,r

service_notification_commandsnotify-by-email

host_notification_commandshost-notify-by-email

emailtfhudong@

pager1391119xxxx

}

创建了一个名为test的联系人,下面列出其中重要的几个选项做说明:

service_notification_period24x7

服务出了状况通知的时间段,这个时间段就是上面在timeperiods.cfg中定义的.

host_notification_period24x7

主机出了状况通知的时间段,这个时间段就是上面在timeperiods.cfg中定义的

service_notification_optionsw,u,c,r

当服务出现w-报警(warning),u-未知(unkown),c-严重(critical),或者r-从异常情况恢复正常,在这四种情况下通知联系人.host_notification_optionsd,u,r

当主机出现;-当机(down),u-返回不可达(unreachable),r-从异常情况恢复正常,在这3种情况下通知联系人

service_notification_commandsnotify-by-email,notity-by-fetion

服务出问题通知采用的命令notify-by-email,这个命令是在commands.cfg中定义的,作用是给联系人发邮件,同时飞信发手机短信给联系人.host_notification_commandshost-notify-by-email,host-notify-fetion

同上,主机出问题时采用的也是发邮件和飞信的方式通知联系人。

emailyahoon@

很明显,联系的人email地址

Pager137XXXXXXXX

联系人接收报警信息电话

}

下面就可以将多个联系人组成一个联系人组,创建文件contactgroups.cfg:

vicontactgroups.cfg

definecontactgroup{

contactgroup_nameyunwei//联系人组的名称,同样不能空格

aliasSystemAdministrators//别名

memberstest

//组的成员,来自于上面定义的contacts.cfg,如果有多个联系人则以逗号相隔

}

定义被监控主机,创建文件hosts.cfg:

vihosts.cfg

definehost{

host_namenagios//被监控主机的名称,最好别带空格

aliasnagios//别名

address192.168.8.240//被监控主机的IP地址

check_commandcheck-host-alive

//监控的命令check-host-alive,这个命令来自commands.cfg,用来监控主机是否存活

max_check_attempts5//检查失败后重试的次数

check_period24x7

//检查的时间段24x7,同样来自于我们之前在timeperiods.cfg中定义的

contact_groupsyunwei

//联系人组,上面在contactgroups.cfg中定义的yunwei

notification_interval10

//提醒的间隔,每隔10秒提醒一次

notification_period24x7

//提醒的周期,24x7,同样来自于我们之前在timeperiods.cfg中定义的

notification_optionsd,u,r

//指定什么情况下提醒

}

通过简单的复制修改就可以定义多个主机了.我们在这加上另外一台机器

 

与联系人可以组成联系人组一样,多个主机也可以组成主机组:

主机名为:

apache      ip:

192.168.8.208

创建文件hostgrops.cfg  

vihostgroups.cfg  

definehostgroup{  

      hostgroup_name      linux-servers  //主机组名称

      alias            linux-servers  //别名

      members            nagios,apache

//组的成员主机,多个主机以逗号相隔,必须是上面hosts.cfg中定义的  

      }  

下面是最关键的了,用nagios主要是监控一台主机的各种信息,包括本机资源,对外的服务等等.这些在nagios里面都是被定义为一个个的项目(nagios称之为服务,为了与主机提供的服务相区别,我这里用项目这个词),而实现每个监控项目,则需要通过commands.cfg文件中定义的命令. 

例如我们现在有一个监控项目是监控一台机器的web服务是否正常,我们需要哪些元素呢?

最重要的有下面三点:

首先是监控哪台机,然后是这个监控要用什么命令实现,最后就是出了问题的时候要通知哪个联系人?

  

 

定义监控的项目,也叫服务,创建services.cfg:

#viservices.cfg  

defineservice{  

      host_name          nagios  //被监控的主机,hosts.cfg中定义的

      service_description    check-host-alive //这个监控项目的描述,这个会在web页面中出现  

    check_command        check-host-alive//所用的命令,是commands.cfg中定义的

      max_check_attempts    5  //重试的次数

      normal_check_interval  3  //循环检查的间隔时间

      retry_check_interval  2    

      check_period        24x7   //监控的时间段,是timeperiods.cfg中定义的 

      notification_interval  10  

      notification_period    24x7   //通知的时间段

notification_options  w,u,c,r  //在监控的结果是wucr时通知联系人

      contact_groups      sagroup  //联系人组,是contactgroups.cfg中定义的

      }  

这样整个的配置过程就结束了.虽然功能很简单,但是已经为以后扩展打下了良好的基础.

  

在运行nagios之前首先做测试  

/usr/local/nagios/bin/nagios-v/usr/local/nagios/etc/nagios.cfg  

看到下面这些信息就说明没问题了  

TotalWarnings:

0  

TotalErrors:

  0  

作为守护进程后台启动nagios  

/usr/local/nagios/bin/nagios-d/usr/local/nagios/etc/nagios.cfg 

登陆测试

http:

//ip/nagios/

先看一下map页面,大致如下:

 

再看hosts相关链接页面

看一下service页面

八、客户端软件的安装

Nagios客户端只需安装nagios-plugins和nrpe就可以的。

1.安装nagios-plugins

[root@mailnagios]#useraddnagios-s/sbin/nologin-M

[root@mailnagios]#tarzxvfnagios-plugins-1.4.14.tar.gz

[root@mailnagios]#cdnagios-plugins-1.4.14

[root@mailnagios-plugins-1.4.14]#./configure--prefix=/usr/local/nagios

[root@mailnagios-plugins-1.4.14]#make&&makeinstall

[root@mailnagios-plugins-1.4.14]#chown-Rnagios.nagios/usr/local/nagios/

2.安装nrpe

[root@mailnagios]#tarzxvfnrpe-2.12.tar.gz

[root@mailnagios]#cdnrpe-2.12

[root@mailnrpe-2.12]#./configure--prefix=/usr/local/nagios

[root@mailnrpe-2.12]#makeall

[root@mailnrpe-2.12]#makeinstall-plugin

[root@mailnrpe-2.12]#makeinstall-daemon//安装守护进程

[root@mailnrpe

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1