本篇內(nèi)容主要講解“LNMP環(huán)境下的Nagios搭建方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“LNMP環(huán)境下的Nagios搭建方法”吧!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、班戈網(wǎng)站維護(hù)、網(wǎng)站推廣。
安裝開始:
A、安裝前準(zhǔn)備
安裝的機(jī)器上必須有一個(gè)WEB服務(wù),本文是在Nginx環(huán)境上安裝的。
下載nagios主程序和相關(guān)插件程序包
#mkdir /tmp/nagios/Packages
#cd /tmp/nagios/Packages
#wget http://downloads.sourceforge.net/project/nagios/nagios-3.x/nagios-3.5.0/nagios-3.5.0.tar.gz
#wget http://nagios-plugins.org/download/nagios-plugins-1.4.16.tar.gz
#wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz
安裝GD庫(Nagios中的statusmap和trends模塊必須)
#yum -y install libgd2-noxpm libgd2-noxpm-devel
B、Nagios監(jiān)控端安裝
1、創(chuàng)建Nagios用戶及組
建立Nagios賬號
#/usr/sbin/useradd -m -s /sbin/nologin nagios
2、創(chuàng)建一個(gè)名為nagcmd的用戶組,用于從web接口執(zhí)行外部命令。將Nagios用戶和Nginx用戶加入組中。
#groupadd nagcmd
#usermod -a -G nagcmd nagios
#usermod -a -G nagcmd www
注:上面的www是Nginx用戶所屬的組,如有不同請自行調(diào)整。
3、編譯安裝Nagios
#tar zxvf nagios-3.5.0.tar.gz
#cd nagios
#./configure --prefix=/usr/local/install/nagios --with-group=nagios --with-user=nagios --with-command-group=nagcmd --with-gd-lib=/usr/lib --with-gd-inc=/usr/include
#make all
#make install
#make install-init
#make install-config
#make install-commandmode
注:
make install 用于安裝主要的程序、CGI及HTML文件
make install-init 用于生成init啟動腳本
make install-config 用于安裝示例配置文件
make install-commandmode 用于設(shè)置相應(yīng)的目錄權(quán)限
修改/usr/local/install/nagios/etc/objects/contacts.cfg
更改nagiosadmin 的聯(lián)系人定義信息中的 Email 信息為你的 Email 以接收報(bào)警內(nèi)容。
驗(yàn)證程序是否被正確安裝
切換目錄到安裝路徑,這里是/usr/local/install/nagios,看是否存在etc、bin、 sbin、 share、 var這五個(gè)目錄
#ls /usr/local/install/nagios/
bin/ etc/ sbin/ share/ var/
注;bin–Nagios執(zhí)行程序所在目錄,其中的nagios文件即為主程序。
etc–Nagios配置文件位置
sbin–Nagioscgi文件所在目錄,也就是執(zhí)行外部命令所需文件所在的目錄
Share–Nagios網(wǎng)頁文件所在的目錄
var–Nagios日志文件、spid 等文件所在的目錄
var/archives–日志歸檔目錄
var/rw–用來存放外部命令文件
4、編譯并安裝Nagios插件
由于Nagios主程序只是提供一個(gè)運(yùn)行框架,其具體監(jiān)控是靠運(yùn)行在其下的插件完成的,所以Nagios插件是必須安裝的。
#cd /tmp/nagios/Packages
#tar zxvf nagios-plugins-1.4.16.tar.gz
#cd nagios-plugins-1.4.16
#./configure --prefix=/usr/local/install/nagios --with-nagios-user=nagios --with-nagios-group=nagcmd
#make &&make install
#cd ..
驗(yàn)證Nagios插件是否正確安裝
#ls /usr/local/install/nagios/libexec #顯示安裝的插件文件
5、搭建 Perl 環(huán)境
#cd /tmp/nagios/Packages
#yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker
#yum install -y perl-devel perl-CPAN
tar -zxvf FCGI-0.74.tar.gz
cd FCGI-0.74
perl Makefile.PL
make && make install
cd ..
安裝FCGI-ProcManager
tar zxvf FCGI-ProcManager-0.24.tar.gz
cd FCGI-ProcManager-0.24
perl Makefile.PL
make && make install
cd ..
安裝IO/ALL 模塊
tar zxvf IO-1.25.tar.gz
cd IO-1.25
perl Makefile.PL
#make &&make install
#cd ..
tar zxvf IO-All-0.44.tar.gz
cd IO-All-0.44
perl Makefile.PL
make &&make install
#升級MakeMaker
tar zxvf ExtUtils-MakeMaker-6.62.tar.gz
cd ExtUtils-MakeMaker-6.62
perl Makefile.PL
make &&make install
安裝perl fcgi 模塊
啟動perl-cgi
我們使用 unix socket 來監(jiān)聽 perl CGI 請求并解析
cd /usr/local/install/nginx/sbin/
然后把http://addcn.googlecode.com/svn/trunk/conf/nagios/nginx-fcgi.pl
上的那段代碼copy下來,新建一個(gè)nginx-fcgi.pl放在/usr/local/install/nginx/sbin下
chmod +x nginx-fcgi.pl
啟動nginx-fcgi.pl
/usr/local/install/nginx/sbin/nginx-fcgi.pl-l /usr/local/install/nginx/logs/nginx-fcgi.log -pid /usr/local/install/nginx/logs/nginx-fcgi.pid-S /usr/local/install/nginx/logs/nginx-fcgi.sock
注意上面兩行是一條命令.
這時(shí)候報(bào)錯(cuò):
-bash: /usr/local/nginx/sbin/nginx-fcgi.pl: /usr/bin/perl^M:bad interpreter: No such file or directory
這個(gè)是文件格式的問題.
解決:
vi /usr/local/nginx/sbin/nginx-fcgi.pl
在命令模式下:
:set ff
可以看到格式是 doc
設(shè)置格式:
:set ff=unix
然后保存退出
:wq
再次執(zhí)行上面的
添加nginx帳戶權(quán)限
chown nagios:nagcmd /usr/local/install/nginx/logs/nginx-fcgi.sock
chown nagios:nagcmd /usr/local/install/nginx/logs/nginx-fcgi.pid
chmod 777 /usr/local/install/nginx/logs/nginx-fcgi.pid
chmod 777 /usr/local/install/nginx/logs/nginx-fcgi.sock
如果沒有相關(guān)權(quán)限,訪問的時(shí)候會報(bào) 502 錯(cuò)誤.
6、配置NGINX
1)、配置Nagios Web界面登陸帳號及密碼
#htpasswd –c /usr/local/install/nagios/etc/nagios passwd test
如果你沒有htpasswd(這個(gè)工具由Apache安裝包所提供),可在線生成需要加密數(shù)據(jù)。
a)、訪問http://www.4webhelp.net/us/password.php生成需要加密數(shù)據(jù)
b)、創(chuàng)建加密驗(yàn)證文件
#vi /usr/local/install/nagios/etc/nagiospasswd
#加入生成的加密數(shù)據(jù),冒號前是用戶名,后面是加密后的密碼
test:13MmxKsxRF36E
#vi /usr/local/install/nagios/etc/cgi.cfg
#以下幾項(xiàng)中分別加入新增的用戶,多用戶用逗號分隔。
default_user_name=test
authorized_for_system_information=nagiosadmin,test
authorized_for_configuration_information=nagiosadmin,test
authorized_for_system_commands=nagiosadmin,test
authorized_for_all_services=nagiosadmin,test
authorized_for_all_hosts=nagiosadmin,test
authorized_for_all_service_commands=nagiosadmin,test
authorized_for_all_host_commands=nagiosadmin,test
refresh_rate=30 #nagios主頁的刷新時(shí)間,我設(shè)置成30秒自動刷新
2)、修改NGINX配置,以支持WEB方式訪問Nagios
將nagios下share文件鏈接到網(wǎng)站根目錄,并改名為nagios。
ln -s /usr/local/install/nagios/share/usr/local/install/nginx/html/nagios
NGINX配置片斷如下:
server
{
listen 80;
server_name localhost;
include rewrite.conf;
index index.html index.htm index.php;
root html/;
auth_basic "NagiosAccess";
auth_basic_user_file /usr/local/install/nagios/etc/nagiospasswd;
location ~ .*\.(php|php5)?$
{
#fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
location ~.*\.(cgi|pl)?$
{
gzip off;
root /usr/local/install/nagios/sbin;
rewrite ^/nagios/cgi-bin/(.*)\.cgi/$1.cgi break;
fastcgi_pass unix:/usr/local/install/nginx/logs/nginx-fcgi.sock;
fastcgi_param SCRIPT_FILENAME /usr/local/install/nagios/sbin$fastcgi_script_name;
fastcgi_index index.cgi;
fastcgi_read_timeout 60;
fastcgi_param REMOTE_USER $remote_user;
include fastcgi.conf;
auth_basic "Nagios Access";
auth_basic_user_file /usr/local/install/nagios/etc/nagiospasswd;
}
}
7、啟動服務(wù)
chkconfig --add nagios
chkconfig --level 2345 nagios on
service nagios start
/usr/local/install/nagios/bin/nagios -v /usr/local/install/nagios/etc/nagios.cfg #檢驗(yàn)配置
/usr/local/install/nagios/bin/nagiostats #運(yùn)行狀態(tài)
8、安裝NRPE
1)、由于Nagios只能監(jiān)測自己所在的主機(jī)的一些本地情況,例如,cpu負(fù)載、內(nèi)存使用、硬盤使用等等。如果想要監(jiān)測被監(jiān)控的服務(wù)器上的這些本地情況,就要用到NRPE。NRPE(Nagios Remote Plugin Executor)是Nagios的一個(gè)擴(kuò)展,它被用于被監(jiān)控的服務(wù)器上,向Nagios監(jiān)控平臺提供該服務(wù)器的一些本地的情況。NRPE可以稱為Nagios的Linux客戶端。
由于NRPE是通過SSL方式在監(jiān)控和被監(jiān)控主機(jī)上進(jìn)行數(shù)據(jù)傳輸?shù)模员仨毾劝惭bssl相關(guān)的軟件包。
#cd /tmp/nagios/Packages
#tar zxvf nrpe-2.12.tar.gz
#cd nrpe-2.12
#./configure --prefix=/usr/local/install/nagios
#make all
#make install-plugin
注:監(jiān)控主機(jī)上只需要make install-plugin這一步就可以了。監(jiān)控機(jī)上只要有一個(gè)check_nrpe插件用于連接被監(jiān)控端nrpe的daemon就行了。
#ln -s /tmp/nagios/Packages/nrpe-2.12/src/nrpe /usr/local/install/nagios/bin/nrpe
#ln -s /tmp/nagios/Packages/nrpe-2.12/sample-config/nrpe.cfg /usr/local/install/nagios/etc/nrpe.cfg
啟動NRPE
#/usr/local/install/nagios/bin/nrpe -c /usr/local/install/nagios/etc/nrpe.cfg -d
驗(yàn)證NRPE是否正確安裝
#/usr/local/install/nagios/libexec/check_nrpe -H localhost
注:如果成功,會返回NRPE的版本號.
2)、修改NRPE配置文件,讓監(jiān)控主機(jī)可以訪問被監(jiān)控主機(jī)的NRPE。
缺省NRPE配置文件中只允許本機(jī)訪問NRPE的Daemon
#vi /usr/local/install/nagios/etc/nrpe.cfg
#缺省為127.0.0.1,只能本機(jī)訪問
allowed_hosts=127.0.0.1,192.168.1.108
3)、在commands.cfg中增加對check_nrpe的定義
# vi /usr/local/nagios/etc/objects/commands.cfg
#'check_nrpe' command definition
define command{ command_name check_nrpe # 定義命令名稱為check_nrpe,在services.cfg中要使用這個(gè)名稱. command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ #這是定義實(shí)際運(yùn)行的插件程序. }
4)、重啟nrpe的方法
killall nrpe
#/usr/local/install/nagios/bin/nrpe -c /usr/local/install/nagios/etc/nrpe.cfg -d
到此,相信大家對“LNMP環(huán)境下的Nagios搭建方法”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
分享名稱:LNMP環(huán)境下的Nagios搭建方法
URL網(wǎng)址:http://muchs.cn/article42/ihidec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、網(wǎng)站維護(hù)、網(wǎng)站收錄、網(wǎng)頁設(shè)計(jì)公司、手機(jī)網(wǎng)站建設(shè)、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)