设为首页 收藏本站
查看: 1045|回复: 0

Nagios之安装篇

[复制链接]

尚未签到

发表于 2019-1-15 11:12:47 | 显示全部楼层 |阅读模式
系统环境说明:
    基于Centos 5.8_x86_64最小化安装
    Nagios版本为当前最新:3.4.1
    Nagios-plugins版本为当前最新:1.4.16
    pnp4nagios版本为当前最新:0.6.19
    无特别说明依赖软件包均为yum安装,由于整个文档的都是在安装过程中作为笔记完成的,更倾向于用来在部署时复制粘贴完成繁琐的操作,所以没有附图片说明也没有详细的具体操作步骤说明,但是都是通过本人的多次安装测试整理出来的,有问题欢迎一起讨论。


一、编译安装nagios

1、解决依赖关系
httpd
php
gcc
gd
gd-devel
glibc
glibc-common

2、创建nagios运行需要的组和用户
groupadd nagcmd
useradd -G nagcmd nagios

把apache用户加入nagcmd组,以便于通过web访问时有足够权限
usermod -a -G nagcmd apache

3、编译安装nagios
tar zxf nagios-3.4.1.tar.gz
cd nagios
./configure --prefix=/usr/local/nagios --with-command-group=nagcmd --with-nagios-user=nagios --with-nagios-group=nagios
make all
make install
make install-init
make install-commandmode
make install-config
make install-webconf

4、创建用于控制访问nagios的用户
htpasswd -c /usr/loca/nagios/etc/htpasswd.users nagiosadmin

5、重启apache服务
service httpd restart

二、编译安装nagios-plugins

1、依赖关系,新版本的nagios-plugins-1.4.16必须指定--with-openssl
openssl-devel

2、编译安装
tar zxf nagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16
./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl=/usr/bin/openssl
make
make install

三、配置并启动nagios

1、把nagios加入服务管理,并设置开机自启动
chkconfig --add nagios
chkconfig nagios on

2、配置selinux,如果启用的话默认会拒绝nagios的cgi等运行
setenforce 0
也可通过修改/etc/sysconfig/selinux,使永久生效

3、检查主配置文件语法
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

4、启动nagios
service nagios start

四、配置nrpe


tar xf nrpe-2.13.tar.gz
cd nrpe-2.13
./configure  
make all
make install-plugin

五、被监控端配置:


1、安装前的工作
建立nagios用户
useradd nagios

解决依赖关系
yum install openssl-devel

2、编译安装nagios-plugins
tar zxf nagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16
./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl=/usr/bin/openssl
make
make install

3、编译安装nrpe

tar xf nrpe-2.13.tar.gz
cd nrpe-2.13
./configure  
make all
make install-plugin
make install-daemon
make install-daemon-config

4、配置nrpe
vim /usr/local/nagios/etc/nrpe.cfg  ==>  修改如下行为监控端IP地址

allowed_hosts=192.168.56.201

启动nrpe服务
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

netstat -tnlp   ==>  看到监听5666端口

添加nrpe到服务管理列表并设置开机启动
vim /etc/init.d/nrpe    ==>  添加如下内容

#!/bin/bash
# chkconfig: 2345 88 12
# description: NRPE DAEMON
NRPE=/usr/local/nagios/bin/nrpe
NRPECONF=/usr/local/nagios/etc/nrpe.cfg
case "$1" in
        start)
                echo -n "Starting NRPE daemon..."
                $NRPE -c $NRPECONF -d
                echo " done."
                ;;
        stop)
                echo -n "Stopping NRPE daemon..."
                pkill -u nagios nrpe
                echo " done."
        ;;
        restart)
                $0 stop
                sleep 2
                $0 start
                ;;
        *)
                echo "Usage: $0 start|stop|restart"
                ;;
        esac
exit 0

chmod +x /etc/init.d/nrpe
chkconfig --add nrpe
chkconfig nrpe on

六、配置pnp4nagios支持图表显示

1、解决依赖关系
rrdtool
php-gd

2、编译安装pnp4nagios
tar zxvf pnp4nagios-0.6.19.tar.gz
cd pnp4nagios-0.6.19
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make all
make install
make install-webconf
make install-config
make install-init

3、配置pnp4nagios
cd /usr/local/pnp4nagios/etc/
mv misccommands.cfg-sample misccommands.cfg
mv rra.cfg-sample rra.cfg
mv nagios.cfg-sample nagios.cfg
cd pages/
mv web_traffic.cfg-sample web_traffic.cfg
cd ../check_commands/
mv check_all_local_disks.cfg-sample check_all_local_disks.cfg
mv check_nrpe.cfg-sample check_nrpe.cfg
mv check_nwstat.cfg-sample check_nwstat.cfg
service npcd start
chkconfig npcd on

4、配置nagios数据输出
vim /usr/local/nagios/etc/nagios.cfg    ==>

process_performance_data=1     #默认为0,修改为1
host_perfdata_command=process-host-perfdata     #注释开头#号
service_perfdata_command=process-service-perfdata     #注释开头#号

5、修改commands.cfg
vim /usr/local/nagios/etc/objects/commands.cfg    ==>   修改原有的命令定义,为如下

# 'process-host-perfdata' command definition
define command{
        command_name    process-host-perfdata
        command_line    /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA
        }
# 'process-service-perfdata' command definition
define command{
        command_name    process-service-perfdata
        command_line    /usr/local/pnp4nagios/libexec/process_perfdata.pl
        }

6、在模版中添加pnp图表
vim /usr/local/nagios/etc/objects/templates.cfg    ==>   添加如下内容

define host {
name          host-pnp
action_url    /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=_HOST_
register   0
}
define service {
name         service-pnp
action_url   /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
register   0
}

7、在对应的host定义和service定义中使用刚刚定义的两个模版,并重启nagios和httpd。

注意:在通过web访问时点击图表会提示让删除/usr/local/pnp4nagios/share/install.php文件,手动删除即可。

七、对象相关概念解释(部分摘自nagios官网)

关于对象的解释
1、主机:主机是监控逻辑中的核心对象之一,其重要属性有:
    ==>主机通常是网络中的物理设备(如服务器、路由器、交换机、打印机等)
    ==>主机有某种形式的地址(如IP或MAC)
    ==>主机有一个或多个绑定的服务
    ==>主机与其他的主机可以有父/子节点的关系
2、主机组:主机组可以是一台或者多台主机的组合,利用主机组可以把处于不同区域主机分成不同的组以便于查看,也可用利用它来定义运行这相同服务的多台主机
3、服务:服务也是监控逻辑中的核心对象之一,其可以定义的属性有:
    ==>主机的属性(如CPU负载、磁盘利用率、启动时间、内存使用等)
    ==>主机提供的服务(如HTTP、MYSQL、SSH等)
    ==>其他与主机相关的信息(如DNS记录等)
4、服务组:与主机组类似,可以是一个或者多个服务的组合。
5、联系人:联系人是当监控的某个主机或服务发生故障是发送通知的对象,其可以定义的属性有:
    ==>接收通知的时间段(如7x24、工作日等)
    ==>在何中情况下接收通知(如主机状态为down、服务状态为warnning等)
    ==>接收通知的方式(如发送email、发送飞信等)
6、联系人组:一个或多个联系人的集合
7、时间周期:定义主机或服务的被监控的时间段、联系人可接收通知的时间
8、命令:命令定义了Nagios用哪个程序、脚本等,它在执行后必须可完成:
    ==>主机或服务的检测
    ==>对联系人的通知
    ==>事件处理
    ==>其他...




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-663532-1-1.html 上篇帖子: CentOS5.5X64安装配置Nagios监控 下篇帖子: 配置nagios和nconf使用短信报警
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表