共计 5575 个字符,预计需要花费 14 分钟才能阅读完成。
这篇文章主要为大家展示了“Nagios 如何监控服务器”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让丸趣 TV 小编带领大家一起研究并学习一下“Nagios 如何监控服务器”这篇文章吧。
Nagios 是一个监视系统运行状态和网络信息的监视系统。Nagios 能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等 Nagios 可运行在 Linux/Unix 平台之上,同时提供一个可选的基于浏览器的 WEB 界面以方便系统管理人员查看网络状态,各种系统问题,以及日志等等。
一、Nagios 的主要功能特点:
监视网络服务 (SMTP, POP3, HTTP, NNTP, PING 等)
监视主机资源 (进程, 磁盘等)
简单的插件设计可以轻松扩展 Nagios 的监视功能
服务等监视的并发处理
准备软件包:
Nagios Core nagios-3.2.2.tar.gz
Nagios Plugins nagios-plugins-1.4.15.tar.gz
Nagios Addons nrpe-2.12.tar.gz
二、服务器端安装
查看安装服务器环境(LAMP) #rpm -qa | grep httpd #rpm -qa | grep php 没有的话安装 # yum -y install gcc glibc glibc-common gd gd-devel php openssl-devel httpd 创建用户: # useradd -m -s /bin/bash nagios # groupadd nagios # usermod -G nagios nagios # vi /etc/passwd nagios:x:500:500::/home/nagios:/sbin/nologin 改成: nagios:x:500:500::/home/nagios:/bin/bash 创建一个用户组名为 nagcmd 用于从 Web 接口执行外部命令。将 nagios 用户和 apache 用户都加到这个组中。 因为要用到 CGI 的 Web 监控面板,所以这里我们还要添加一个 nagcmd 组,用于 CGI 执行相关指令。 # /usr/sbin/groupadd nagcmd # /usr/sbin/usermod -G nagcmd nagios # /usr/sbin/usermod -a -G nagcmd daemon (因为是编译方式安装的 apache,默认是以 daemon 用户运行)
下载相关的软件包,服务器端需要安装以下三个包,客户端只需要安装后两个插件包:
[root@server ~]#cd /usr/local/src/tarbag/ [root@server tarbag]#wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.2.tar.gz [root@server tarbag]#wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz [root@server tarbag]#wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz
解压并编译安装 Nagios:
# tar xvzf nagios-3.2.2.tar.gz # cd nagios-3.2.2
运行 Nagios 配置脚本并使用先前开设的用户及用户组:
# ./configure --prefix=/usr/local/nagios --with-command-group=nagcmd
编译 Nagios 程序包源码:
# make all
安装二进制运行程序、初始化脚本、配置文件样本并设置运行目录权限:
# make install # make install-init // 在 /etc/rc.d/init.d 安装启动脚本 # make install-config // 安装示例配置文件, 安装的路径是 /usr/local/nagios/etc # make install-commandmode // 配置目录权限 #ls /usr/local/nagios/ bin etc libexec sbin share var
三、对 nagios 进行配置
样例配置文件默认安装在这个目录下 /usr/local/nagios/etc,这些样例文件可以配置 Nagios 使之正常运行,只需要做一个简单的修改 …
用你擅长的编辑器软件来编辑这个 /usr/local/nagios/etc/objects/contacts.cfg 配置文件,更改 email 地址 nagiosadmin 的联系人定义信息中的 EMail 信息为你的 EMail 信息以接收报警内容。
vi /usr/local/nagios/etc/objects/contacts.cfg
1、安装 nagios 插件
#cd ../ #tar zxvf nagios-plugins-1.4.16.tar.gz #cd nagios-plugins-1.4.16 #./configure --with-nagios-user=nagios --with-nagios-group=nagios --prefix=/usr/local/nagios/ // 指定安装目录及用户和组 #make;make install 配置 httpd 生成 Nagios 的 Apache 配置文件 # cd nagios-3.2.2 # make install-webconf /usr/bin/install -c -m 644 sample-config/httpd.conf /etc/httpd/conf.d/nagios.conf # cd sample-config 参考 sample-config/httpd.conf 配置内容添加到 Apache 的 httpd.conf 配置文件中 创建一个 nagiosadmin 的用户用于 Nagios 的 Apache 接口登录。记下你所设置的登录口令,一会儿你会用到它。 # ./htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin 密码:nagiosmonitor 重启 Apache 服务以使设置生效。 安装 NRPE 插件,想获取客户机上更为详细的信息,还必须在服务器及客户端上安装 NRPE 插件。 #cd .. #tar zxvf nrpe-2.14.tar.gz #cd nrpe-2.14 #./configure --with-nagios-user=nagios --with-nagios-group=nagios --prefix=/usr/local/nagios/ # make all
# make install-plugin;make install-daemon;make install-daemon-config # ls /usr/local/nagios/libexec/ check_apt check_ftp check_mailq check_overcr check_tcp ....... 验证 Nagios 的样例配置文件 # /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 如果没有报错,可以启动 Nagios 服务 启动 httpd 及 nagios 服务并验证 #chkconfig --add nagios // 设置 nagios 及 http 开机自启动 #chkconfig nagios on #chkconfig httpd on #service nagios start #service httpd start
2、客户端安装
#useradd -s /sbin/nologin nagios // 添加 nagios 用户 安装 nagios-plugins # tar -zxvf nagios-plugins-1.4.15.tar.gz # cd nagios-plugins-1.4.15 # ./configure --prefix=/usr/local/nagios # make # make install # chown nagios.nagios /usr/local/nagios/ # chown -R nagios.nagios /usr/local/nagios/libexec/ 安装 nrpe 插件 # tar -zxvf nrpe-2.12.tar.gz # cd nrpe-2.12 # ./configure --prefix=/usr/local/nagios/ # make all
# make install-plugin 安装 check_nrpe 这个插件 # make install-daemon 安装 daemon # make install-daemon-config 安装配置文件 如果安装时报错:checking for SSL headers... configure: error: Cannot find ssl headers # rpm -qa|grep openssl openssl-devel-0.9.8e-12.el5_4.6 openssl-0.9.8e-12.el5_4.6 yum install openssl-devel 或者下载:http://www.openssl.org/source/ tar zxvf openssl-1.0.0a.tar.gz cd openssl-1.0.0a ./config make make test make install 修改客户端配置文件 vi /usr/local/nagios/etc/nrpe.cfg server_port:5666 allowed_hosts=127.0.0.1,192.168.1.95 // 添加服务器端的 IP 地址 指定 nagios 监控主机 ip, 多个 ip 用逗号分隔,后面的 IP 地址,是 nagios 服务端的 ip 地址,也就是说只允许指定的 ip 通过 nrpe 开的端口 5666 取得本机的信息。 然后修改 nrpe.cfg 中的 command 部分。 启动 NRPE 守护进程:(可以将此命令加入 /etc/rc.local,以便开机自动启动) #/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d 可以将此命令加入 /etc/rc.local,以便开机自动启动 echo /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d /etc/rc.local #netstat -utpln |grep nrpe // 查看 nrpe 进程是否已正常启动 #/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 NRPE v2.14 //nrpe 测试结果,此结果为 nrpe 已经正常工作了 然后在 nagios 监控服务器上测试 #/usr/local/nagios/libexec/check_nrpe -H 192.168.1.77// 被监控主机 ip 返回信息被监控服务器上安装的 NRPE 版本:NRPE v2.12
3、定义监控内容
# vi /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 #监控 CPU 的负载 command[check_sda2]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda2 # 监控磁盘利用率,这里的 sda2 必须是实际的硬盘分区,可使用 fdisk ndash;l 查 command[check_swap]=/usr/local/nagios//libexec/check_swap -w 20 -c 10 #监控交换空间 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 # 监控所有进程 注意:command 后面括号中的内容就是定义的变量,变量名可以任意指定,只需和服务器配置文件中的一致即可
以上是“Nagios 如何监控服务器”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!