在 Debian Nginx 上安装 Nagios 3.2

2009-08-23 22:01  |  分类:应用技术

下载所需软件:
http://www.nagios.org/download/
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.0.tar.gz

创建 nagios 用户和组:
groupadd nagios
useradd -g nagios -d /usr/local/nagios -s /bin/bash nagios

创建一个 nagcmd 组用于从 Web 接口执行外部命令,并将 nagios 用户和 Web 用户都加到这个组中:
groupadd nagcmd
usermod -G nagcmd nagios
usermod -G nagcmd www-data

安装 Nagios:
apt-get install libgd2-xpm-dev
The following NEW packages will be installed:
defoma fontconfig-config libfontconfig1 libfreetype6 libgd2-xpm libjpeg62 libxpm4 ttf-dejavu ttf-dejavu-core ttf-dejavu-extra

tar zxvf nagios-3.2.0.tar.gz
cd nagios-3.2.0
./configure \
--prefix=/usr/local/nagios \
--with-command-group=nagcmd

make all

make install
make install-init
make install-config
make install-commandmode

配置 Nginx 支持 CGI ,然后在 Nginx 添加 Nagios 的配置如下:
全文阅读 »

1. 使用 SMTP 发送邮件
objects/commands.cfg 中有邮件提醒命令的设置
如要通过 SMTP 发送邮件,可以使用 sendEmail:
http://caspian.dotconf.net/menu/Software/SendEmail/

安装
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.55.tar.gz
tar zxvf sendEmail-v1.55.tar.gz
mv sendEmail-v1.55/sendEmail /usr/local/bin/

发送邮件的示例:
sendEmail -f nagios@test.com -t admin@test.com -s smtp.test.com -u "test" -xu nagios@test.com -xp password -m "test."

vi objects/commands.cfg
把 notify-host-by-email 和 notify-service-by-email 的邮件发送部分改为:

/usr/local/bin/sendEmail -f nagios@test.com -t $CONTACTEMAIL$ -s smtp.test.com -u "$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$" -xu nagios@test.com -xp password

全文阅读 »

Nagios 札记之三:安装配置 NRPE

2008-07-16 15:20  |  分类:应用技术

监控平台上的安装:
先安装 openssl-devel
yum install openssl-devel
Installing for dependencies: e2fsprogs-devel krb5-devel

再安装 NRPE:
tar zxvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all
make install-plugin

在 objects/commands.cfg 中定义 check_nrpe 使用的命令:

# 'check_nrpe' command definition
define command{
        command_name    check_nrpe
        command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
        }

被监控主机的安装:
同样需要安装 openssl-devel
创建 nagios 用户和组
groupadd nagios
useradd -g nagios -d /usr/local/nagios -s /sbin/nologin nagios

先安装 nagios-plugin:
tar zxvf nagios-plugins-1.4.12.tar.gz
cd nagios-plugins-1.4.12
./configure --prefix=/usr/local/nagios
make
make install

再安装 NRPE:
tar zxvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all
make install-plugin
make install-daemon
make install-daemon-config

chown -R nagios:nagios /usr/local/nagios

配置 NRPE:
vi /usr/local/nagios/etc/nrpe.cfg
allowed_hosts=127.0.0.1,$Nagios监控平台的地址或域名

启动 NRPE 守护进程:
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
可以将此命令加入 /etc/rc.local ,以便开机自动启动。

检查 NRPE 是否正常:
在被监控主机上
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1
在监控平台上
/usr/local/nagios/libexec/check_nrpe -H $目标主机地址
都应该可以输出 NRPE 的版本: NRPE v2.12

在被监控端的 nrpe.cfg 文件中,可以看到这样的配置:
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
这是用来检查 CPU 负载的。

这样,就可以在监控平台上定义如下服务来监控被监控端的 CPU 负载了:

define service{
host_name remotehost
service_description check_load
...
check_command check_nrpe!check_load }

Nagios 札记之二:配置

2008-07-15 12:13  |  分类:应用技术

主配置文件 nagios.cfg 需要更改的地方:
#cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
interval_length=1 ; 间隔时间基准由 60s 改为 1s
command_check_interval=10s ; 命令检查时间间隔,-1 表示尽可能频繁的进行检查
date_format=iso8601 ; 日期格式

objects/contacts.cfg 用来定义联系人:

define contact {
contact_name sa
alias System Administrator
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-service-by-email
host_notification_commands notify-host-by-email
email admin@test.com
}

再定义联系人组

define contactgroup {
contactgroup_name admins
alias Administrator Group
members sa    ; 添加其它联系人用 "," 分隔
}

全文阅读 »

Nagios 札记之一:安装

2008-07-14 22:42  |  分类:应用技术

下载所需软件:
http://www.nagios.org/download/

创建 nagios 用户和组
groupadd nagios
useradd -g nagios -d /usr/local/nagios -s /bin/bash nagios

创建一个 nagcmd 组用于从 Web 接口执行外部命令,并将 nagios 用户和 Apache 用户都加到这个组中
groupadd nagcmd
usermod -G nagcmd nagios
usermod -G nagcmd nobody

tar zxvf nagios-3.0.3.tar.gz
cd nagios-3.0.3
./configure \
--prefix=/usr/local/nagios \
--with-command-group=nagcmd

make all

make install
make install-init
make install-config
make install-commandmode

安装 Nagios 的 WEB 配置文件到 Apache 的 /etc/httpd/conf.d 目录下
make install-webconf

如果是编译安装的 Apache ,可以手动添加一下配置
cat sample-config/httpd.conf >> /usr/local/apache/conf/httpd.conf

创建 Nagios Web 接口登录的用户
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

确认加载了 cgi_module 和 alias_module ,然后重启 Apache
service httpd restart

安装 Nagios 插件
tar zxvf nagios-plugins-1.4.12.tar.gz
cd nagios-plugins-1.4.12
./configure \
--prefix=/usr/local/nagios \
--with-nagios-group=nagcmd

make
make install

添加 nagios 服务
chkconfig --add nagios
chkconfig nagios on

检查配置文件是否有错误
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

启动
service nagios start

通过 http://IP/nagios 输入用户名密码就可以打开 nagios 的页面了。
此时还只能简单的查看 localhost 的状态。