Linux下nginxnagios 监控平台搭建_第1页
Linux下nginxnagios 监控平台搭建_第2页
Linux下nginxnagios 监控平台搭建_第3页
Linux下nginxnagios 监控平台搭建_第4页
Linux下nginxnagios 监控平台搭建_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Linux下nginx+nagios 监控平台搭建】随着linux服务器可用性、稳定性逐步增强,企业对线上服务也要求越来越严格,需要有专门的监控系统监控服务的正常运转,并有问题及时发邮件、报警给linux SA。我们大多数nagios、cacti监控都基于apache搭建,今天我们讲一种新平台搭建nginx平台的nagios监控!一、系统运行环境:服务器系统版本:Centos 5.3x64nginx版本:nginx-二、下载所需包:所有安装所需的源码包:本站点集成下载:Nginx 安装请参考: 【nginx安装】nginx安装完毕后。三、正式安装nagios:创建nagios用户和组,并把ww

2、w加入nagios管理组:useraddnagios &groupadd nagcmd & usermod -g nagcmd nagios & usermod -g nagcmd wwwcd /usr/scr & tar xzf nagios-3.2.3.tar.gz & cd nagios-3.2.3 & ./configure -with-command-group=nagcmd -prefix=/usr/local/nagios & make all & make install &make install-init & make install-config & make insta

3、ll-commandmodenagios安装完毕:验证程序是否被正确安装。切换目录到安装路径(这里是/usr/local/nagios),看是否存在 etc、bin、 sbin、 share、 var这五个目录,如果存在则可以表明程序被正确的安装到系统了。接下来编译并安装nagios插件 nagios-pluginscd /usr/src &tar zxvf nagios-plugins-1.4.13.tar.gz &cd nagios-plugins-1.4.13 &./configure -perfix=/usr/local/nagios -with-nagios-user=nagios

4、-with-nagios-group=nagios& make & make install插件安装完毕!ls /usr/local/nagios/libexec会显示安装的插件文件,即所有的插件都安装在libexec这个目录下。四、创建一个nagiosadmin用户:用于Nagios的WEB接口登录。记下你所设置的登录口令,一会儿你会用到它这里要借助于apche的htpasswd,在有apache机器上执行下列命令/usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd nagiosadmin输入两次一样的密码即可。启

5、动nagios ;chkconfig add nagios 添加到service 中,chkconfig nagios level 35 on 设置成开机启动。【把selinux、iptables关闭,或者更改iptables策略需要访问nagios】五、安装perl fcgi模块:【首先得安装php并编译fastcGI模块】安装php可参考 (1)、安装FCGIcd /usr/src & tar -zxvf FCGI-0.67.tar.gz &cd FCGI-0.67 & perl Makefile.PL & make & make install(2)、安装FCGI-ProcManager

6、:cd ./ & tar -xzxf FCGI-ProcManager-0.18.tar.gz &cd FCGI-ProcManager-0.18 & perl Makefile.PL &make & make install安装完毕即可。mkdir -p /usr/local/nagios/share/nagios &ln -s /usr/local/nagios/share/images /usr/local/nagios/share/nagios/images &ln -s /usr/local/nagios/share/stylesheets /usr/local/nagios/sha

7、re/nagios/stylesheets 避免无法显示图片。接下来配置cgi脚本、nginx配置文件:cd/usr/local/nagios/bin/ 下新建文件,并写入以下内容 vi perl-cgi.pl#!/usr/bin/perluse FCGI;#perl -MCPAN -e install FCGIuse Socket;#this keeps the program alive or something after execing perl scriptsEND()BEGIN()*CORE:GLOBAL:exit=subdie“fakeexitnrc=”.shift().”n”;

8、evalqexit;if($)exitunless$=/fakeexit/;&main;sub main #$socket = FCGI:OpenSocket( “:3461, 10 ); #use IP sockets$socket= FCGI:OpenSocket(“/var/run/nagios.sock”,10);#use UNIX sockets user running this script must have w access to the nginx folder!$request= FCGI:Request(*STDIN,*STDOUT,*STDERR,%ENV,$sock

9、et);if($request)request_loop();FCGI:CloseSocket($socket);sub request_loop while($request-Accept()=0)#processing any STDIN input from WebServer (for CGI-GET actions)$env=$request-GetEnvironment();$stdin_passthrough=”;$req_len=0+$ENVCONTENT_LENGTH;if($ENVREQUEST_METHODeqGET)$stdin_passthrough.=$ENVQUE

10、RY_STRING;#running the cgi appif(-x $ENVSCRIPT_FILENAME)&#can I execute this?(-s$ENVSCRIPT_FILENAME)&#Is this file empty?(-r $ENVSCRIPT_FILENAME)#can I read this file?)#/perlipc.html#Safe-Pipe-Opensopen$cgi_app,-|,$ENVSCRIPT_FILENAME,$stdin_passthroughorprint(“Content-type: tex

11、t/plainrnrn”);print“Error: CGI app returned no output Executing $ENVSCRIPT_FILENAME failed !n”;if($cgi_app)print;close$cgi_app;elseprint(“Content-type: text/plainrnrn”);print“Error: No such CGI app $req_len $ENVCONTENT_LENGTH $ENVREQUEST_METHOD $ENVSCRIPT_FILENAME may not exist or is not executable

12、by this process.n”; 设置权限chmod +x perl-cgi.pl 即可!以下是我的nginx.conf文件server内容:serverlisten 80;server_name 9;root /usr/local/nagios/share;index index.php;auth_basic “You Name”;auth_basic_user_file /usr/local/nagios/etc/htpasswd;log_format nagios $remote_addr $remote_user $time_local “$request”

13、 $status $body_bytes_sent “$http_referer” ”$http_user_agent” $http_x_forwarded_for;access_log /usr/local/nginx/nagios.log nagios;location .*.(php|php5)?$#fastcgi_pass unix:/tmp/php-cgi.sock;fastcgi_pass :9000;fastcgi_index index.php;include fcgi.conf;location .cgi$ root /usr/local/nagios/sb

14、in;rewrite /nagios/cgi-bin/(.*).cgi /$1.cgi break;fastcgi_index index.cgi;fastcgi_pass unix:/var/run/nagios.sock;fastcgi_param SCRIPT_FILENAME /usr/local/nagios/sbin$fastcgi_script_name;fastcgi_param QUERY_STRING $query_string;fastcgi_param REMOTE_ADDR $remote_addr;fastcgi_param REMOTE_PORT $remote_

15、port;fastcgi_param REQUEST_METHOD $request_method;fastcgi_param REQUEST_URI $request_uri;fastcgi_param REMOTE_USER $remote_user;#默认没有红色这一句,如果没有,后面nagios页面会报错,具体错误后面给出。#fastcgi_param SCRIPT_NAME $fastcgi_script_name;fastcgi_param SERVER_ADDR $server_addr;fastcgi_param SERVER_NAME $server_name;fastcgi

16、_param SERVER_PORT $server_port;fastcgi_param SERVER_PROTOCOL $server_protocol;fastcgi_param SERVER_SOFTWARE nginx;fastcgi_param CONTENT_LENGTH $content_length;fastcgi_param CONTENT_TYPE $content_type;fastcgi_param GATEWAY_INTERFACE CGI/1.1;fastcgi_param HTTP_ACCEPT_ENCODING gzip,deflate;fastcgi_par

17、am HTTP_ACCEPT_LANGUAGE zh-cn;fcgi.conf文件内容如下:fastcgi_paramGATEWAY_INTERFACECGI/1.1;fastcgi_paramSERVER_SOFTWARE nginx;fastcgi_paramQUERY_STRING $query_string;fastcgi_paramREQUEST_METHOD $request_method;fastcgi_paramCONTENT_TYPE $content_type;fastcgi_paramCONTENT_LENGTH $content_length;fastcgi_param

18、SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_paramSCRIPT_NAME $fastcgi_script_name;fastcgi_paramREQUEST_URI $request_uri;fastcgi_paramDOCUMENT_URI $document_uri;fastcgi_paramDOCUMENT_ROOT $document_root;fastcgi_paramSERVER_PROTOCOL $server_protocol;fastcgi_paramREMOTE_ADDR $remote_addr

19、;fastcgi_paramREMOTE_PORT $remote_port;fastcgi_paramSERVER_ADDR $server_addr;fastcgi_paramSERVER_PORT $server_port;fastcgi_paramSERVER_NAME $server_name;# PHP only, required if PHP was built with enable-force-cgi-redirectfastcgi_paramREDIRECT_STATUS 200;以上可以把nginx中fastcGI部分整合到fcgi.conf中。启动nginx,确定有f

20、astcGI 9000端口。 后台启动screen ./perl-cgi.pl /dev/null;ctrl +a +d 退出screen。然后chmod777 /var/run/nagios.sock;并且重启service nagios restart六。安装完毕,然后访问:直接访问 会弹出登录框 ,输入用户名nagiosadmin 和密码,会看到nagios默认监控localhost!页面如下:而且点击详细服务关闭报警,也不报错: 这样的话,nginx+nagios 环境搭建完毕!剩下的就是具体监控客户端的配置啦!文章后续给出!本文环境已经测试通过,搭建的时候,也遇到了好多例如403、50

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论