Nagios安装向导.docx
《Nagios安装向导.docx》由会员分享,可在线阅读,更多相关《Nagios安装向导.docx(25页珍藏版)》请在冰豆网上搜索。
![Nagios安装向导.docx](https://file1.bdocx.com/fileroot1/2023-1/10/66e474b6-40c3-43a9-a256-deeb5c6cc6be/66e474b6-40c3-43a9-a256-deeb5c6cc6be1.gif)
Nagios安装向导
Nagios安装监控中心向导(中文版)
目录内容
一.所需套件2
二.安装步骤:
3
2.1安装libxml--为安装GD作准备3
2.2安装zlib--为安装GD作准备3
2.3安装libpng:
--为安装GD作准备3
2.4安装freetype--为安装GD作准备3
2.5安装gd库3
2.6.httpd-2.2.11.tar.gz3
2.7.php-5.2.9.tar.gz4
2.8.nagios安装4
2.9.nagios-plugins的安装4
2.10.imagepak-base.tar.gz的安装5
2.11.安装nrpe-2.12.tar.gz5
三.配置Nagios5
3.1设置apache5
3.2.配置nagios监控本机信息7
3.2.1修改nagios.cfg主配置文件,只列出被修改之处7
3.2.2修改cgi.cfg配置文件,只列出被修改之处8
3.2.3修改commands.cfg配置文件,只列出被修改之处8
3.2.4定义联系人contacts.cfg配置文件,例:
8
3.2.5定义联系人列表contactgroups.cfg9
3.2.6定义被监控主机localhost.cfg9
3.2.8定义主机组hostgroups.cfg9
3.2.9定义监控的服务services.cfg10
3.2.10定义监近时间段timeperiods.cfg10
四.配置nagios服务端10
4.1监控Linux客户端10
4.1.1Linux客户端软件:
10
4.2监控windows客户端12
4.2.1win客户端软件12
五.配置nagios邮件通知16
六.Nagios的性能分析图表17
6.1rrdtool安装17
6.2PNP安装17
(注:
此版本测试只在CentOS&RedHat5.0以上版本完成通过)
#注:
所有红色字体均为注释,特此说明!
#注:
字符底纹为所输入的命令,特此说明!
一.所需套件
Nagios-3.0.6.tar.gz
nagios-plugins-1.4.tar
imagepak-base.tar.gz
nrpe-2.12.tar.gz
httpd-2.2.11.tar.gz
php-5.2.9.tar.gz
freetype-2.1.10.tar.gz
gd-2.0.35.tar.gz
libpng-1.2.35.tar.gz
libxml2-2.6.32.tar.gz
pnp-0.4.13.tar.gz
zlib-1.2.3.tar.gz
rrdtool-1.3.5.tar.gz
sendEmail-v1.55.tar.gz
NSClient++.exe(forWindows)
二.安装步骤:
2.1安装libxml--为安装GD作准备
tarxvflibxml2-2.6.32.tar.gz
cdlibxml2-2.6.32
./configure#(xml默认安装就可以,不要指定路径了,库文件默认放在/usr/local/lib里面。
因为安装时php可能找不到它,PHP5只支持libxml2-2.5.10以上版本)
make
makeinstall
2.2安装zlib--为安装GD作准备
tarvzxfzlib-1.2.3.tar.gz
cdzlib-1.2.3
./configure--prefix=/usr/local/zlib2#(注意,如果您以前没有安装zlib,可以不指定路径,我是没有删除以前的低版本才指定的!
以下雷同!
)
make
makeinstall
2.3安装libpng:
--为安装GD作准备
tarxzvflibpng-1.2.35.tar.gz
cdlibpng-1.2.35
cpscripts/makefile.stdmakefile#因为没有makefile
maketest
makeinstall
2.4安装freetype--为安装GD作准备
tarvzxffreetype-2.1.10.tar.gz
cdfreetype-2.1.10
./configure--prefix=/usr/local/freetype2
make
makeinstall
2.5安装gd库
tarxzvfgd-2.0.28.tar.gz
cdgd-2.0.28
./configure--prefix=/usr/local/gd2--with-zlib=/usr/local/zlib2--with-png=/usr/local/libpng2--with-freetype=/usr/local/freetype2#(请指定各插件的安装路径,否则安装php的时候可能出错!
)
make
makeinstall
2.6.httpd-2.2.11.tar.gz
#安装apache,(php5安装环境需要apache2.0.46以上版本,下载的时候注意!
)
#如果系统自带安装有apache请停止服务servicehttpdstop,并且chkconfighttpdoff
#删除自带的Apache
rpm–ehttpd
开始安装:
tarzxvfhttpd-2.2.11.tar.gz
cdhttpd-2.2.11.tar.gz
./configure--prefix=/usr/local/apache--enable-module=so--enable-so
make
makeinstall
2.7.php-5.2.9.tar.gz
tarzxvfphp-5.2.9.tar.gz
cdphp-5.2.9
#以下的路径要看仔细
./configure--prefix=/usr/local/php--with-apxs2=/usr/local/apache/bin/apxs--with-zlib–with-png--with-gd=/usr/local/gd2/--with-freetype-dir=/usr/local/freetype2
make
makeinstall
cpphp.ini-dist/usr/local/php/etc/php.ini#php的配置文件
#编辑PHP的配置文件是/usr/local/php/etc/php.ini,将其中的register_globals变量修改成On,默认是Off的。
需要将它改成On。
否则会出现php不能直接读不到post或get的数据的现象。
#编辑Apache的配置文件
vi/usr/local/apache/conf/httpd.conf
#在文件结尾加上以下两行行(添加支持PHP):
AddTypeapplication/x-httpd-php.php.phtml.php3.inc
AddTypeapplication/x-httpd-php-source.phps
#设置apache的默认文件名次序(下面是加上这几个)
DirectoryIndexindex.phpindex.php3index.htmlindex.htmindex.jsp
#启动apache:
/usr/local/apache/bin/apachectlstart
#然后可以用一个简单的php文件来测试PHP的安装,这个简单的PHP文件包含下列一行:
phpinfo();?
>
#将其保存为/usr/local/apache/htdocs/test.php,然后在浏览器中浏览,如果观看到以显示有“PHPVersion5.0.4”标题的页面就表示整合PHP与Apache成功了。
2.8.nagios安装
tar–xvzfnagios-3.0.6.tar.gz
mkdir/usr/local/nagios
useraddnagios–d/usr/local/nagios–s/sbin/nologin
chownnagios.nagos/usr/local/nagios
chmod755/usr/local/nagios
cdnagios-2.0
./configure--prefix=/usr/local/nagios
makeall
makeinstall
makeinstall-init
makeinstall-commandmode
makeinstall-config##将初始的配置文件安装到/usr/local/nagios/etc
2.9.nagios-plugins的安装
tar–xvzfnagios-plugins-1.4.tar
cdnagios-plugins-1.4
./configure--prefix=/usr/local/nagios
makeall
makeinstall
2.10.imagepak-base.tar.gz的安装
tar–xvzfimagepak-base.tar.gz#解压以后是base目录
cp–Rbase/usr/local/nagios/share/images/logos
2.11.安装nrpe-2.12.tar.gz
tarzvxfnrpe-2.12.tar.gz
cdnrpe-2.12
./configure--enable-ssl--enable-command-args
makeall
cpsrc/check_nrpe/usr/local/nagios/libexec
cpnrpe.cfg/usr/local/nagios/etc
cpsrc/nrpe/usr/local/nagios/bin
chmod755/usr/local/nagios/bin/nrpe
vi/usr/local/nagios/etc/checkcommands.cfg
#添加下面内容
definecommand{
command_namecheck_nrpe
command_line/usr/local/nagios/libexec/check_nrpe-H$HOSTADDRESS$-c$ARG1$
}
#添加端口说明
vi/etc/services#在最后面加上
nrpe5666/tcp#NRPE
#起动nrpe
/usr/local/nagios/bin/nrpe–c–n/usr/local/nagios/etc/nrpe.cfg-d
#到此Nagios监控中心已经安装完毕,接下来是开始配置Nagios.
三.配置Nagios
3.1设置apache
进入apache安装目录
cd/usr/local/apache/conf
#编辑httpd.conf
vihttpd.conf#在最后面加上以下语句,
ScriptAlias/nagios/cgi-bin/usr/local/nagios/sbin
AuthTypeBasic
OptionsExecCGI
AllowOverrideNone
Orderallow,deny
Allowfromall
AuthName"NagiosAccess"
AuthUserFile/usr/local/nagios/etc/htpasswd
Requirevalid-user
Alias/nagios/usr/local/nagios/share
AuthTypeBasic
OptionsNone
AllowOverrideNone
Orderallow,deny
Allowfromall
AuthName"NagiosAccess"
AuthUserFile/usr/local/nagios/etc/htpasswd
Requirevalid-user
#添加nagioswebuser,并自动生成文件,
/usr/local/apache/bin/htpasswd–c/usr/local/nagios/etc/htpasswdUSERNAME#重复输入密码就可以了
##########如果需要创建更多的用户请把-c的参数去掉就行了
##########测试nagios配置文件是否有通过
/usr/local/nagios/bin/nagios–v/usr/local/nagios/etc/nagios/cfg
##########起动apache和nagios
/usr/local/apache/bin/apachectlstart
/etc/init.d/nagiosstart
##########基本配置完成,好了现在可以试试打开nagios的web登陆界面了,输入:
http:
//ip/nagios,如下图
3.2.配置nagios监控本机信息
#由于nagios配置文件比较繁锁,故特意简单说明,详情请参阅nagios官方说明文档(所有配置文件的详细参数配置请参阅nagios官方文档,以下再不细述,请见谅)
#所有的配置文件都位于以下路径
/usr/local/nagios/etc/nagios.cfg,/usr/local/nagios/etc/nrpe.cfg,/usr/local/nagios/etc/objects目录下
3.2.1修改nagios.cfg主配置文件,只列出被修改之处
cd/usr/local/nagios/etc
vinagios.cfg#把前面”#”号注释去掉,如下:
#命令配置文件路径
cfg_file=/usr/local/nagios/etc/objects/commands.cfg
#联系人配置文件路径
cfg_file=/usr/local/nagios/etc/objects/contacts.cfg
#监视时段配置文件路径
cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg
#模版文件路径
cfg_file=/usr/local/nagios/etc/objects/templates.cfg
#服务配置文件路径
cfg_file=/usr/local/nagios/etc/objects/services.cfg
#主机组配置文件路径
cfg_file=/usr/local/nagios/etc/objects/hostgroups.cfg
#联系组配置文件路径
cfg_file=/usr/local/nagios/etc/objects/contactgroups.cfg
#主机配置文件路径
cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
#修改nagios用户和组,使用nagios用户和组运行nagios,如下:
nagios_user=nagios
nagios_group=nagios
#其它详细参数修改请参阅官方文档
3.2.2修改cgi.cfg配置文件,只列出被修改之处
#如有多个用户,中间用逗号隔开
authorized_for_system_information=username1,username2
authorized_for_configuration_information=username1,username2
authorized_for_system_commands=username1,username2
authorized_for_all_services=username1,username2
authorized_for_all_hosts=nagiosadmin,username1,username2
authorized_for_all_service_commands=username1,username2
authorized_for_all_host_commands=username1,username2
#在这里指定的用户"username1,username2"可以通过浏览器操纵nagios服务的关闭、重启等各种操作。
3.2.3修改commands.cfg配置文件,只列出被修改之处
#以下只有邮件警告部分,如有需要短信警告请参阅官方文档
#'notify-host-by-email'commanddefinition
definecommand{
command_namenotify-host-by-email
command_line/usr/bin/printf"%b""*****Nagios*****\n\nNotificationType:
$NOTIFICATIONTYPE$\nHost:
$HOSTNAME$\nState:
$HOSTSTATE$\nAddress:
$HOSTADDRESS$\nInfo:
$HOSTOUTPUT$\n\nDate/Time:
$LONGDATETIME$\n"|/usr/local/bin/sendEmail-fnagios@-t$CONTACTEMAIL$-s-u"**$NOTIFICATIONTYPE$HostAlert:
$HOSTNAME$is$HOSTSTATE$**"-xunagios-xp123456
}
#'notify-service-by-email'commanddefinition
definecommand{
command_namenotify-service-by-email
command_line/usr/bin/printf"%b""*****Nagios*****\n\nNotificationType:
$NOTIFICATIONTYPE$\n\nService:
$SERVICEDESC$\nHost:
$HOSTALIAS$\nAddress:
$HOSTADDRESS$\nState:
$SERVICESTATE$\n\nDate/Time:
$LONGDATETIME$\n\nAdditionalInfo:
\n\n$SERVICEOUTPUT$"|/usr/local/bin/sendEmail-fnagios@-t$CONTACTEMAIL$-s-u"**$NOTIFICATIONTYPE$ServiceAlert:
$HOSTALIAS$/$SERVICEDESC$is$SERVICESTATE$**"-xunagios-xp123456
}
(邮件警告需要用到邮件客户端,这里使用的客户端是sendEmail,可从网上找到,调用已有的邮件用户自动发送邮件,sendEmail的配置会在下面做介绍)
3.2.4定义联系人contacts.cfg配置文件,例:
definecontact{
contact_nameSamuel#这里请不要使用space空格键,请用Tab代替空格键
usegeneric-contact
aliasNagiosAdmin#定义别名
service_notification_period24x7#定义服务警告时段,我这里每周7天24小时不间断运行警告
host_notification_period24x7#定义主机警告时段,我这里每周7天24小时不间断运行警告
service_notification_optionsw,u,c,r
host_notification_optionsd,u,r
service_notification_commandsnotify-service-by-email#定义服务警告命令,我这里是邮件通知
host_notification_commandsnotify-host-by-email#定义主机警告命令,我这里是邮件通知
emailweishan_zeng@#定义收件人地址
}
#说明:
●服务通知选项w-warning,u-unknown,c-critical,r-recovery.
●主机通知选项d-down,u-unreacheable,r-recovery。
●服务通知命令行及服务通知命令行在配置文件commands.cfg中得到定义,如果有报警发生,则邮件发送给相关人,即下定义的email.
●收报警信息的邮件,如果有一个联系人有几个邮件地址,联系人邮件之间要用逗号分隔,多个不同联系人请重增加定义就行了。
●如果这里定义的用户需要通过浏览器察看他所负责的服务器监控状态的话,还需要用apache的工具htpasswd增加同名帐号。
3.2.5定义联系人列表contactgroups.cfg
definecontactgroup{
contactgroup_namevagroup#这里请不要使用space空格键,请用Tab代替空格键
aliasNagiosAdminGroup
memberssamuel
}
3.2.6定义被监控主机localhost.cfg
definehost{
host_namenagios_server#这里请不要使用space空格键,请用Tab代替空格键
aliasnagios-server#别名
address172.16.17.99#被监控主机的IP地址
contact_groupsvagroup#联系人组,来自contactgroups.cfg中定义的vagroup
check_commandcheck-host-alive#监控命令,来自commands.cfg,用来监控主机是否存活
notifications_enabled1#打开通知功能
process_perf_data1#PNP选项
max_check_attempts5#最大检查次数
notification_interval10#通知间隔,这里是每10秒一次
notification_period24x7#通知周期,24x7,来自timeperiods.cfg(在后面会说到)
notification_optionsd,u,r
}
3.2.8定义主机组hostgroups.cfg
definehostgroup{
hos