實戰CentOS 6.0+Nagios中文版+PNP+Nagios Web管理工具nagiosQL中文版

Nagios網上的教程百度一下一大把,發現有些教程講法有點出入,估計有些都是拷貝亂貼亂飛,按有些說法去作,根本就作不下去,今天我親自實踐,現場抓圖讓你看得清楚看得明白,以及中間遇到什麼問題,怎麼解決,都會分享給你們,抓圖再寫出來有點辛苦,關鍵能學到東西一切都是值得滴,Follow me~!php

下載centOS 6.0而後安裝好系統,最好用vmware來作最好.mysql

CentOS 6.0最新版國內下載地址:http://mirrors.163.com/centos/6.0/isos/i386/linux

自行裝好系統之後如今開始裝備安裝前的環境準備
我把命令貼出來,爲了方便你們操做你只要跟着我把命令拷貝和粘貼便可,省去敲打命令的麻煩也避免失誤出錯(小技巧提醒:裝好centOS之後進入x-windows裏面裝個vmware tools就能夠實現物理機和虛擬機之間的拷貝和粘貼,方法很簡單這裏就不說了)
yum -y install httpd gettext mysql mysql-server mysql-devel php php-mysql php-pearios

p_w_picpath

yum install php-mysql mysql perl mysql-server perl-DBI perl-DBD-MySQL httpd gcc glibc glibc-common gd gd-devel phpweb

p_w_picpath

在線下載nagios程序和插件sql

wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.15.tar.gz (如今最新版本的插件)
wget http://sourceforge.net/projects/nagios-cn/files/sourcecode/zh_CN%203.2.3/nagios-cn-3.2.3.tar.bz2/download(最新版爲3.3.1,裝上去以爲界面變得很差看,順便就找了箇中文版的)數據庫

p_w_picpath

p_w_picpath

p_w_picpath

用戶和組的準備apache

p_w_picpath

p_w_picpath

開始安裝主程序windows

p_w_picpath

./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-command-group=nagcmdcentos

p_w_picpath

完成之後發現執行make all命令的時候出現如下錯誤

p_w_picpath

貌似CentOS下默認系統沒有安裝編譯器,安裝一下:

yum -y install gcc automake autoconf libtool make

p_w_picpath

繼續作make all操做,發現最後報錯了,

p_w_picpath

先執行make clean操做,而後再執行 ./configure && make all 操做經過(問題分享)接着再執行如下命令便可,沒有出現任何情況.

p_w_picpath

p_w_picpath

p_w_picpath

p_w_picpath

p_w_picpath

接下來安裝插件

p_w_picpath

./configure --with-nagios-user=nagios --with-nagios-group=nagios

p_w_picpath

p_w_picpath

添加訪問頁面用戶nagiosadmin及密碼,這裏要記住此密碼不要忘記了.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

p_w_picpath

接下來啓動相關服務

p_w_picpath

p_w_picpath

檢查配置文件是否正確

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

p_w_picpath

[經驗分享:因爲這一串檢查的命令很長,應用率也比較高,這裏咱們能夠自定義一個命令來代替這一長串的命令

編輯.bashrc這個文件

p_w_picpath

在裏面用alias 來自定義一個命令來代替,這裏我用check

p_w_picpath

用source命令在當前bash環境下讀取並執行bashrc中的命令

p_w_picpath

這樣咱們自定義的命令就生效了,之後只要輸入check就能夠檢查nagios配置文件是否存在錯誤了,簡單方便.]

發現沒有警告和錯誤就表示經過了

p_w_picpath

如今就能夠用http://serverip/nagios 方式訪問nagios web訪問控制檯了.

開了防火牆記得要開放80端口,要否則鏈接不到,或者直接關閉防火牆用命令service iptables stop關閉便可.

p_w_picpath

問題分享:進入頁面的時候點主機或其它選項的時候報此錯誤,後面百度一下原來是開啓了selinux強制訪問控制安全模塊所致

p_w_picpath

注意:若是你開啓了selinux 須要配置以下二步:
chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/
chcon -R -t httpd_sys_content_t /usr/local/nagios/share/

p_w_picpath

這樣正宗的中文版出來了,總算邁出了成功的一小步,耐心堅持讓咱們繼續吧~~!

p_w_picpath

[經驗分享:我這裏用虛擬機作的,記得系統和網絡相關參數配置好之後作一個系統的快照,配到這裏nagios安裝成功之後咱們再作一個快照,以避免後面配亂出問題的時候咱們能夠返回到這裏從新再配置,方便快捷,記住作快照的時候先把虛擬機關閉之後再作,要否則快照出來的文件大得嚇人,而關閉之後作快照文件才幾百KB.]

SNAGHTMLbffa284

ok下面咱們接着來

[nrpe_plugins指標採集程序主要是用來分析nrpe客戶端的plugin腳本採集性能指標數據。目前實現的有cpu、memory、disk、buffer、singleprocess、oracle、sybase等方面的性能指標的分析,這個插件須要分別安裝在主控端和被控端上,這個插件須要openssl的支持,沒有就直接在線安裝一下(yum install openssl-devel)因此還需在nagios主機和被控端安裝,感受挺麻煩,沒辦法它須要我們就跟着作哈.]

先把nrpe下載下來先.

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz

p_w_picpath

解壓文件

p_w_picpath

編譯安裝

p_w_picpath

p_w_picpath

完成之後沒有出錯就能夠看到如下生成的文件了

p_w_picpath

二:配置PNP

[PNP是一個基於php和perl,用rrdtool將nagios採集的數據繪製圖表的工具,因此安裝pnp以前必須先安裝php perl  and rrdtool這裏用yum直接來安裝rrdtool,單獨下載安裝有不少依存關係,挺麻煩.]

p_w_picpath

我這裏找到最新的版本是0.6.15

wget http://sourceforge.net/projects/pnp4nagios/files/PNP-0.6/pnp4nagios-0.6.15.tar.gz/download

p_w_picpath

p_w_picpath

p_w_picpath

編譯的時候報錯了.

p_w_picpath

yum install perl-Time-HiRes

p_w_picpath

繼續編譯發現有個perl modules沒有發現,好像提示用來加速什麼的,暫時無論它了

p_w_picpath

p_w_picpath

根據提示須要繼續

p_w_picpath

p_w_picpath

p_w_picpath

p_w_picpath

而後把相關後綴帶sample文件變動成無sample後綴

p_w_picpath

配置Nagios來啓用PNP

p_w_picpath

enable_environment_macros=1默認是開啓了的
 

p_w_picpath

pnp4nagios有不少種工做模式,這裏咱們選用同步模式,想選其它模式能夠看說明都有詳細配置教程(不一樣模式配置不一樣

p_w_picpath

這裏咱們按說明的設定方法來作

p_w_picpath

[這裏先把pnp4nagios執行數據收集的文件拷貝到nagios的libexec下,方便統一命令的執行路徑.]
cp /usr/local/pnp4nagios/libexec/process_perfdata.pl /usr/local/nagios/libexec/

p_w_picpath

而後在commands.cfg裏面加入以下(這裏是同步模式設定方法

p_w_picpath

#process-host-perfdata' command definition
define command{
        command_name    process-host-perfdata
        command_line    $USER1$/process_perfdata.pl -d HOSTPERFDATA
        }

#process-service-perfdata' command definition
define command{
        command_name    process-service-perfdata
        command_line    $USER1$/process_perfdata.pl
        }
 

p_w_picpath

而後添加小太陽模版,鑲嵌在nagios頁面上
[這裏有兩種查看圖的方法,第一種方法是你當太陽的圖標的時候會在新窗口中打開圖形查看,第二種方法是你只須要把鼠標移動到太陽圖標上面就會自動彈出圖形出來,如下兩種方法你能夠根據本身喜愛選其中一種便可]
第一種方法在templates.cfg裏面加入以下

p_w_picpath

define host {
   name       host-pnp
   action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_
   register   0
}

define service {
   name       srv-pnp
   action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
   register   0
}
 

p_w_picpath

第二種方法按照說明加入以下

p_w_picpath

拷貝status-header.ssi到/usr/local/nagios/share/ssi/目錄下面來(這一步很重要,要否則移動到太陽標記上出不來圖

p_w_picpath

define host {
   name       host-pnp
   action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=_HOST_
   register   0
}

define service {
   name       srv-pnp
   action_url /pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$' class='tips' rel='/pnp4nagios/index.php/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
   register   0
}
第二種方法最終效果圖

p_w_picpath

爲目標主機圖標旁邊添加一個小太陽標記

p_w_picpath

p_w_picpath

爲相關服務添加一個小太陽標記

p_w_picpath

p_w_picpath

先作一下pnp4nagios環境測試,發現php-gd模塊無效,用命令yum install php-gd安裝成功之後仍是不行,後來經老男孩指點用yum install php* -y安裝而後重啓系統成功經過,

p_w_picpath

p_w_picpath

p_w_picpath

按要求重命名install.php

p_w_picpath

作好相關配置之後請用命令重啓一下nagios的服務

p_w_picpath

ok,到此總算配置好了PNP,配置了這麼多有點累了,但咱們還要繼續,配置本章最後一個Nagios WEB管理工具叫NagiosQL(注:還有一樣一個Nagios WEB管理工具叫Nconf)

wget http://sourceforge.net/projects/nagiosql/files/nagiosql/NagiosQL%203.1.1/nagiosql_311.tar.gz/download

p_w_picpath

NagiosQL是一個WEB管理工具,只要把其放到下Apache便可。由於這裏它要和Nagios整合到一塊兒,爲了方便管理,把其放在Nagios目錄下

p_w_picpath

p_w_picpath

創建nagiosQL導出nagios配置文件的目錄,並修改權限

建目錄和改權限
mkdir -p /etc/nagiosql/{hosts,services,backup/{,hosts,services},import}
chown -R apache:nagios /etc/nagiosql/
chmod -R 755 /etc/nagiosql
chmod 777 /usr/local/nagios/nagiosql/config

p_w_picpath

Nagios相關文件權限的設定
chown nagios:apache /usr/local/nagios/etc
chown nagios:apache /usr/local/nagios/etc/{nagios.cfg,cgi.cfg}
chown nagios:apache /usr/local/nagios/etc/*
chmod 664 /usr/local/nagios/etc/{nagios.cfg,cgi.cfg}
chmod 775 /usr/local/nagios/etc

p_w_picpath

設定nagios二進制文件的權限,以便其可以經過Web程序執行
chown nagios:apache /usr/local/nagios/bin/nagios
chmod 750 /usr/local/nagios/bin/nagios
chown -R apache.nagios /usr/local/nagios/var/spool/
chown nagios:apache /usr/local/nagios/var/rw/nagios.cmd
chmod 660 /usr/local/nagios/var/rw/nagios.cmd

p_w_picpath

爲apache添加nagiosQL虛擬目錄

p_w_picpath

Alias /nagiosQL "/usr/local/nagios/nagiosql"
<Directory "/usr/local/nagios/nagiosql">
# SSLRequireSSL
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>

p_w_picpath

從新加載httpd服務和啓動mysqld服務

p_w_picpath

創建nagiosql安裝文件
touch /usr/local/nagios/nagiosql/install/ENABLE_INSTALLER

p_w_picpath

訪問http://ip/nagiosQL進行安裝

問題分享:我在訪問的時候提示沒有權限訪問,搞了半天原來是SElinux惹的禍,修改SELinux的實時運行模式,setenforce 0 (設置SELinux 成爲permissive模式)這個只是臨時解決方法,優勢是不需重啓系統生效,但若是要完全禁用SELinux 須要在/etc/sysconfig/selinux中設置參數selinux=0

p_w_picpath

選取中文而後點開始安裝按鈕

p_w_picpath

測試所需環境經過,直接按下一步便可

p_w_picpath

刪除安裝目錄,這裏使用改權限:chmod 000 /usr/local/nagios/nagiosql/install

p_w_picpath

p_w_picpath

到這裏安裝步驟總算結束了,下面咱們還須要進行相關配置工做.

p_w_picpath

管理-域-localhost---點「修改」

p_w_picpath

按如圖所示更改相應的路徑便可

p_w_picpath

工具-導入數據 右邊會列出一些配置文件,選擇導入便可。
導入只是把配置文件內容導入到Mysql數據庫,而使用其配置文件時,是一個個cfg文件,因此下面要進行寫入過程

p_w_picpath

工具-nagios控制-寫入檢測數據-寫入其餘數據

p_w_picpath

檢查配置文件成功

p_w_picpath

p_w_picpath

寫入以後就能夠看到相應的cfg文件了,查看寫入是否成功,由下面的輸出能夠看出寫入是成功滴.

p_w_picpath

修改nagios的配置文件,將原有以cfg_file開頭項所有註釋掉,加入上面新寫入的配置文件

p_w_picpath

註釋掉

p_w_picpath

加入新的配置文件路徑
cfg_dir=/etc/nagiosql/hosts/
cfg_dir=/etc/nagiosql/services/
cfg_file=/etc/nagiosql/commands.cfg
cfg_file=/etc/nagiosql/contactgroups.cfg
cfg_file=/etc/nagiosql/contacts.cfg
cfg_file=/etc/nagiosql/contacttemplates.cfg
cfg_file=/etc/nagiosql/hostdependencies.cfg
cfg_file=/etc/nagiosql/hostescalations.cfg
cfg_file=/etc/nagiosql/hostextinfo.cfg
cfg_file=/etc/nagiosql/hostgroups.cfg
cfg_file=/etc/nagiosql/hosttemplates.cfg
cfg_file=/etc/nagiosql/servicedependencies.cfg
cfg_file=/etc/nagiosql/serviceescalations.cfg
cfg_file=/etc/nagiosql/serviceextinfo.cfg
cfg_file=/etc/nagiosql/servicegroups.cfg
cfg_file=/etc/nagiosql/servicetemplates.cfg
cfg_file=/etc/nagiosql/timeperiods.cfg

p_w_picpath

檢查nagios的配置文件是否有問題,而後生重啓nagios服務,至此整個搭建過程終於完成了,下一節將講解重頭戲,怎麼用nagiosQL添加須要監控的主機以及啓用nagios報警機制,待續~~!

NagiosQL添加監控主機及Nagios上啓用報警機制

http://allanfan.blog.51cto.com/520839/704288

相關文章
相關標籤/搜索