Chinaunix首页 | 论坛 | 博客
  • 博客访问: 151120
  • 博文数量: 20
  • 博客积分: 2535
  • 博客等级: 少校
  • 技术积分: 410
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-17 11:59
文章分类

全部博文(20)

文章存档

2009年(18)

2008年(2)

我的朋友

分类: LINUX

2009-04-28 15:35:32

Nagios安装
1.系统:CentOS 5.2

2.安装前准备:
1).安装好apache,GD库(我的GD库安装在/usr/local/libgd)。
2).下载Nagios3.0.5,Nagios-plugins1.4.11,nrpe2.12,nsclient++
#

wget
wget

# Nagios3.0.5,Nagios-plugins1.4.11,nrpe2.12安装在监控服务器上。
# 去addons/下载nrpe和nsclient++插件。
# nrpe2.12安装在Linux/Unix被监控端。
# nsclient++安装在Windows被监控端。
3).创建帐号及组
# 创建帐号

/usr/sbin/useradd -m nagios
passwd nagios

# 创建组

/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -a -G nagcmd nagios
/usr/sbin/usermod -a -G nagcmd daemon

# daemon为运行apache的帐号。

3.安装nagios

tar xzf nagios-3.0.5.tar.gz
cd nagios-3.0.5
./configure –with-command-group=nagcmd –with-gd-lib=/usr/local/libgd/lib/ –with-gd-inc=/usr/local/libgd/include/
make all
# 使用make install来安装主程序,CGI和HTML文件
make install
# 使用make install-init在/etc/rc.d/init.d安装启动脚本
make install-init
# 使用make install-cofig来安装示例配置文件,安装的路径是/usr/local/nagios/etc.
make install-config
# 使用make install-commandmode来配置目录权限
make install-commandmode

nagios目录功能的简要说明:

  • bin Nagios执行程序所在目录,nagios文件即为主程序
  • etc Nagios配置文件位置
  • sbin Nagios Cgi文件所在目录,也就是执行外部命令所需文件所在的目录
  • Share Nagios网页文件所在的目录
  • var Nagios日志文件、spid 等文件所在的目录
  • var/archives 日志归档目录
  • var/rw 用来存放外部命令文件

配置apache
将现面行加入apache配置文件的alias模块

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


# SSLRequireSSL
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
AuthName “Nagios Access”
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user

Alias /nagios “/usr/local/nagios/share”


# SSLRequireSSL
Options None
AllowOverride None
Order allow,deny
Allow from all
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
AuthName “Nagios Access”
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user

----------------------------------------

# 创建apache目录验证文件

/usr/local/apache/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password: (输入密码)
Re-type new password: (再输入一次密码)
Adding password for user nagiosadmin

# 重启apache:

/usr/local/apache/bin/apachectl -k restart

# 配置nagios配置文件

vi /usr/local/nagios/etc/objects/contacts.cfg
# 将里面的email地址改为自己的email地址。

4.安装Nagios插件

tar xzf nagios-plugins-1.4.11.tar.gz
cd nagios-plugins-1.4.11
./configure –with-nagios-user=nagios –with-nagios-group=nagios
make
make install

5.启动Nagios

# 配置机器启动时自动启动Nagios
chkconfig –add nagios
chkconfig nagios on
# 检查Nagios配置文件
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
# 启Nnagios
service nagios start

6.SELinux及防火墙设置
1).关闭SELinux

vi /etc/selinux/config
# 将下面行设为disabled
SELINUX=disabled

# 重启系统

2).如果开启防火墙,应该允许访问apache(一般为80端口)并允许nagios去抓取被监控机信息(一般nrpe为5666端口)。

7.访问Nagios服务器


输入用户名及密码登录。

8.安装nrpe插件,用来监控Linux机器

tar xzvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all

# 在Nagios服务器端只要安装nrpe监控插件就行

make install-plugin

在/usr/local/nagios/etc/objects/commands.cfg中定义check_nrpe命令

vi /usr/local/nagios/etc/objects/commands.cfg
############################################################
#
# 2008.11.18 add by Stone
# NRPE COMMAND
#
############################################################
# ‘check_nrpe ‘ command definition
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

9.在被监控服务器(Linux/unix)上安装Nagios-plugins和nrpe

useradd nagios
tar xzvf nagios-plugins-1.4.13.tar.gz
cd nagios-plugins-1.4.13

# Nagios-plugins默认安装到/usr/local/nagios

./configure
make
make install
chown nagios.nagios /usr/local/nagios/
chown -R nagios.nagios /usr/local/nagios/libexec/

tar xzvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all

# 安装nrpe插件,本监控端可以不装
make install-plugin
# 安装nrpe守护进程
make install-daemon
# 安张nrpe配置文件
make install-daemon-config
# 修改nrpe配置文件,允许Nagios监控服务器(192.168.0.19)监控
vi nrpe.cfg
# 多台机器用逗号隔开
allowed_hosts=127.0.0.1,192.168.0.19
# 以独立守护进程启动nrpe,也可以使用xinetd启动nrpe,具体清查看nrpe官方文档。
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
# 开机自动启动nrpe
vi /etc/rc.d/rc.local
# 加入下面行
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
# 检查nrpe是否安装正常
[root@wiki etc]# /usr/local/nagios/libexec/check_nrpe -H localhost
NRPE v2.12
# 返回nrpe版本说明安装没问题。

# 查看启动端口

[root@wiki ~]# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN 27387/nrpe

如果有防火墙应该开放5666端口:

iptables -I eth0 -p tcp -m tcp -dport 5666 -j ACCEPT

*********************************************
注意:我们需要在/usr/local/nagios/etc/nrpe.cfg中定义我们用到的监控本地资源的命令。
下面的命令是默认定义的:

command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/hda1
command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200

下面的命令是自己定义的:
# 监控交换分区的使用情况,使用超过20%时为警告状态,超过10%时为严重状态

command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%

# 监控根分区磁盘使用情况

command[check_disk_root]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /

*********************************************

阅读(1346) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~