热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Nginx服务器环境下安装配置nagios监控系统

系统监控中,网上评论cacti+nagioslge两个组合,黄金搭档。nginx+php+mysql环境已配置好,cacti环境已配置好,见《cacti安装配置文档》[http://addcn.blogbus.com/logs/88849862.html],下面看下nagios的安装。1、创建nagios用户及组创建用

系统监控中,网上评论cacti+nagioslge两个组合,黄金搭档。
nginx+php+mysql环境已配置好,cacti环境已配置好,见《cacti安装配置文档》[http://addcn.blogbus.com/logs/88849862.html],下面看下nagios的安装。

1、创建nagios用户及组
创建用户组名为nagios用于从web接口执行外部命令。将nagios用户和nginx用户加入组中。
/usr/sbin/useradd nagios
passwd nagios
/usr/sbin/groupadd nagios
/usr/sbin/usermod -g nagios nagios
/usr/sbin/usermod -g nagios addcn

2、安装nagios及插件
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.3.tar.gz
tar zxvf nagios-3.2.3.tar.gz
cd nagios-3.2.3
./configure --with-command-group=nagios --with-user=nagios --prefix=/usr/local/nagios
make all
make install
make install-init
make install-config
make install-commandmode
注:
(1)make install 安装主要的程序、CGI及HTML文件
(2)make install-commandmode 给外部命令访问nagios配置文件权限
(3)make install-config 把配置文件的例子复制到nagios的安装目录
修改管理员邮件地址
vi /usr/local/nagios/etc/objects/contacts.cfg
搜索email,然后修改为你的contact email。

3、安装nagios-plugins
wget http://nchc.dl.sourceforge.net/project/nagiosplug/nagiosplug/1.4.15/nagios-plugins-1.4.15.tar.gz
tar -zxvf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install

4、启动nagios
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg #检验配置
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg #启动
/usr/local/nagios/bin/nagiostats #运行状态

5、搭建Perl环境
nagios依赖PHP环境和perl环境。PHP环境的配置请参考网上资料,下面来搭建Perl环境。
(1)安装perl fcgi模块
wget http://www.cpan.org/modules/by-module/FCGI/FCGI-0.67.tar.gz
tar -zxvf FCGI-0.67.tar.gz
cd FCGI-0.67
perl Makefile.PL
make && make install
(2)安装FCGI-ProcManager
wget http://search.cpan.org/CPAN/authors/id/G/GB/GBJK/FCGI-ProcManager-0.18.tar.gz
tar -xzxf FCGI-ProcManager-0.18.tar.gz
cd FCGI-ProcManager-0.18
perl Makefile.PL
make && make install
(3)安装perl-IO-ALL
wget http://search.cpan.org/CPAN/authors/id/I/IN/INGY/IO-All-0.39.tar.gz
tar zxf IO-All-0.39.tar.gz
cd IO-All-0.39
perl Makefile.PL
make && make install
注:perl模块可在shell下?绦?perl -MCPAN -e 'install FCGI'"进行安装。
(4)监听请求
nagios中web界面为cgi程序,我们使用unix socket来监听perl CGI请求并解析。
cd /usr/local/nginx/sbin/
wget http://addcn.googlecode.com/svn/trunk/conf/nagios/nginx-fcgi.pl
vi /usr/local/nginx/sbin/nginx-fcgi.pl
chmod +x /usr/local/nginx/sbin/nginx-fcgi.pl
启动nginx-fcgi.pl
/usr/local/nginx/sbin/nginx-fcgi.pl -l /usr/local/nginx/logs/nginx-fcgi.log -pid /usr/local/nginx/logs/nginx-fcgi.pid -S /usr/local/nginx/logs/nginx-fcgi.sock
添加nginx帐户权限
chown addcn:addcn /usr/local/nginx/logs/nginx-fcgi.sock
chmod 777 /usr/local/nginx/logs/nginx-fcgi.sock

6、配置nginx
nagios下share文件链接到网站根目录,并改名为nagios。
ln -s /usr/local/nagios/share /home/htdocs/nagios
vi /usr/local/nginx/conf/nginx.conf
server
{
    # nginx-fcgi.pl
    location ~ \.cgi$
    {
        root /usr/local/nagios/sbin;
        rewrite ^/nagios/cgi-bin/(.*)\.cgi /$1.cgi break;
        fastcgi_index index.cgi;
fastcgi_pass    unix:/usr/local/nginx/logs/nginx-fcgi.sock;
        fastcgi_param   SCRIPT_FILENAME             /usr/local/nagios/sbin$fastcgi_script_name;
        fastcgi_param   HTTP_ACCEPT_LANGUAGE        zh-cn;
        include /usr/local/nginx/conf/fastcgi.conf;
    }
    # nagios
    #location /nagios {
    #    gzip off;
    #    alias /usr/local/nagios/share/;
    #}
}
重启nginx
/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
kill -HUP `cat /usr/local/nginx/logs/nginx.pid`
查看访问
http://192.168.1.36/nagios/


推荐阅读
  • 在尝试加载支持推送通知的iOS应用程序的Ad Hoc构建时,遇到了‘no valid aps-environment entitlement found for application’的错误提示。本文将探讨此错误的原因及多种可能的解决方案。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 本文详细探讨了在Web开发中常见的UTF-8编码问题及其解决方案,包括HTML页面、PHP脚本、MySQL数据库以及JavaScript和Flash应用中的乱码问题。 ... [详细]
  • centos 7.0 lnmp成功安装过程(很乱)
    下载nginx[rootlocalhostsrc]#wgethttp:nginx.orgdownloadnginx-1.7.9.tar.gz--2015-01-2412:55:2 ... [详细]
  • 如何高效渲染JSON数据
    本文介绍了在控制器中返回JSON结果的方法,并详细说明了如何利用jQuery处理和展示这些数据,为Web开发提供了实用的技巧。 ... [详细]
  • Awk是一款功能强大的文本分析与处理工具,尤其在数据解析和报告生成方面表现突出。它通过读取由换行符分隔的记录,并按照指定的字段分隔符来划分和处理这些记录,从而实现复杂的数据操作。 ... [详细]
  • 为何Compose与Swarm之后仍有Kubernetes的诞生?
    探讨在已有Compose和Swarm的情况下,Kubernetes是如何以其独特的设计理念和技术优势脱颖而出,成为容器编排领域的领航者。 ... [详细]
  • CRZ.im:一款极简的网址缩短服务及其安装指南
    本文介绍了一款名为CRZ.im的极简网址缩短服务,该服务采用PHP和SQLite开发,体积小巧,约10KB。本文还提供了详细的安装步骤,包括环境配置、域名解析及Nginx伪静态设置。 ... [详细]
  • LNMP流程图nginxPHPMysqlNginxFastcgi_pass<-FastCGI->fastcgi-(php-fpm)<->wrapperPhp ... [详细]
  • 本文探讨了在Windows系统中运行Apache服务器时频繁出现崩溃的问题,并提供了多种可能的解决方案和建议。错误日志显示多个子进程因达到最大请求限制而退出。 ... [详细]
  • PHP环境下的ini配置详解:聚焦错误相关选项
    本文详细探讨了PHP环境中的ini配置,特别是与错误处理相关的配置项,旨在帮助开发者更好地理解和调整php.ini文件以适应不同的开发需求。 ... [详细]
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
author-avatar
lookzana
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有