




已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Nagios:企業(yè)級系統(tǒng)監(jiān)控方案在大多數(shù)情況下Cacti + RRDtool已經(jīng)實(shí)現(xiàn)對系統(tǒng)各種參數(shù)的監(jiān)測。但很多企業(yè)可能不滿足于僅僅監(jiān)測系統(tǒng)基本參數(shù)的需求,而是需要監(jiān)測除基本參數(shù)之外的各種應(yīng)用程序的運(yùn)行狀況。很顯然在這種情況下對于一些系統(tǒng)或者是自定義的程序Cacti + RRDtool的局限性就顯示出來了。而此時(shí)就輪到了另外一種監(jiān)測系統(tǒng)的登場。這就是我們現(xiàn)在要介紹的Nagios。Nagios是一個(gè)功能非常強(qiáng)大的開源的系統(tǒng)網(wǎng)絡(luò)監(jiān)測程序,通過訪問可以了解其基本特性。Nagios不但能夠?qū)崿F(xiàn)對系統(tǒng)CPU,磁盤、網(wǎng)絡(luò)等方面參數(shù)的基本系統(tǒng)監(jiān)測,而且還能夠監(jiān)測包括SMTP,POP3,HTTP,NNTP等各種基本的服務(wù)類型。另外通過一些插件的安裝和監(jiān)測腳本自定義用戶可以針對自己的應(yīng)用程序?qū)崿F(xiàn)監(jiān)測,并針對大量的監(jiān)測主機(jī)和多個(gè)對象部署層次化的監(jiān)測架構(gòu)。而且在監(jiān)測信息統(tǒng)計(jì)方面,Nagios也能夠和例如Cacti等程序結(jié)合來提供動態(tài)統(tǒng)計(jì)圖表。除此之外Nagios擁有強(qiáng)大的日志管理系統(tǒng),可以實(shí)現(xiàn)詳細(xì)的日志記錄以及回卷。針對架構(gòu)的擴(kuò)展和服務(wù)器數(shù)量的增加可以方便地實(shí)現(xiàn)監(jiān)測區(qū)域擴(kuò)展。最難能可貴的是Nagios提供了優(yōu)秀的事件報(bào)警功能,能夠?qū)⒁恍┩话l(fā)的事件以電子郵件的形式通知管理員并能夠針對出現(xiàn)的問題提供一些主動的解決建議和方案,并支持冗余監(jiān)視。相對于Mrtg以及RRDtool + Cacti而言Nagios最大的特點(diǎn)之一是其設(shè)計(jì)者將Nagios設(shè)計(jì)成監(jiān)測的管理中心盡管其功能是監(jiān)測服務(wù)和主機(jī),但是他自身并不包括這部分功能的代碼,所有的監(jiān)測、監(jiān)測功能都是由相關(guān)插件來完成的,包括報(bào)警功能。Nagios自身也沒有報(bào)警部分的代碼和插件,而是交給用戶或者其他相關(guān)開源項(xiàng)目組去完成。對于Nagios這個(gè)監(jiān)測中心來說,細(xì)致的工作必然是交給其他的軟件來實(shí)現(xiàn)。下面我們就開始實(shí)施Nagios的基本安裝和配置。我的操作環(huán)境是:監(jiān)測主機(jī):IP:0 操作系統(tǒng):RHEL 5u8被監(jiān)測主機(jī):IP:20 操作系統(tǒng):RHEL 5u8Nagios的所有軟件包可以從其官方網(wǎng)站獲得/download/。這里無論是基本軟件包還是插件我都使用的最新版本。因?yàn)槲沂褂玫牟僮飨到y(tǒng)是Red Hat最新版本,原則上對于較新的操作系統(tǒng)版本通常我們都選擇配合最新版本的第三方軟件以避免兼容性問題。首先在監(jiān)測主機(jī)也就是0上安裝Nagios的基本軟件包,在安裝Nagios之前首先需要保證系統(tǒng)中有下面這些軟件包:Apache,gcc,gd,gd-devel,glibc,glibc-devel??梢杂胷pm qa | grep的方式去逐一檢查。如果確認(rèn)上面這些包都安裝之后需要先建立Nagios的用戶和nagcmd組:# useradd -m nagios Enter # passwd nagios Enter 并將nagios以及apache用戶加入到nagcmd組中# groupadd nagcmd Enter # usermod -G nagcmd nagios Enter # usermod -G nagcmd apache Enter 完成之后將下載的nagios壓縮包拷貝到/usr/local目錄中,并且執(zhí)行下面的步驟進(jìn)行編譯和安裝:# tar -zxf nagios-3.0.3.tar.gz Enter # cd nagios-3.0.3 Enter 首先初始化和建立編譯的環(huán)境# ./configure -with-command-group=nagcmd Enter 如果能看到下面的基本配置信息則說明初始的環(huán)境已經(jīng)成功配置完成:* Configuration summary for nagios 3.0.3 06-25-2008 *: General Options: - Nagios executable: nagios Nagios user/group: nagios,nagios Command user/group: nagios,nagcmd Embedded Perl: no Event Broker: yes Install $prefix: /usr/local/nagios Lock file: $prefix/var/nagios.lock Check result directory: $prefix/var/spool/checkresults Init directory: /etc/rc.d/init.d Apache conf.d directory: /etc/httpd/conf.d Mail program: /bin/mail Host OS: linux-gnu Web Interface Options: - HTML URL: http:/localhost/nagios/ CGI URL: http:/localhost/nagios/cgi-bin/ Traceroute (used by WAP): /bin/traceroute Review the options above for accuracy. If they look okay,type make all to compile the main program and CGIs.之后按照提示執(zhí)行命令來進(jìn)行編譯:# make all Enter 如果編譯過程順利完成,則需要執(zhí)行下面的命令:# make install Enter # make install-init Enter # make install-config Enter # make install-commandmode Enter 分別用于安裝二進(jìn)制文件、初始化腳本、示例配置文件和設(shè)置目錄權(quán)限。# ls /usr/local/nagios Enter 安裝完成之后,在/usr/local/nagios目錄下如果能夠看到這些目錄:bin etc sbin share var就表示Naigos安裝成功了。不過在完成之后還不能啟動Nagios,因?yàn)檫€有一些操作需要執(zhí)行。Nagios的樣例配置文件默認(rèn)安裝在/usr/local/nagios/etc目錄下,這些樣例文件可以配置Nagios使之正常運(yùn)行,只需要做一個(gè)簡單的修改。用你擅長的編輯器軟件來編輯這個(gè)/usr/local/nagios/etc/objects/contacts.cfg配置文件,更改email部分,在nagiosadmin的聯(lián)系人定義信息中的EMail信息為你的EMail信息以接收報(bào)警內(nèi)容。# vi /usr/local/nagios/etc/objects/contacts.cfg Enter 之后執(zhí)行下面的命令來安裝Nagios的WEB配置文件到Apache的conf.d目錄下:# make install-webconf Enter 在Apache中使用基本認(rèn)證的方式創(chuàng)建一個(gè)nagiosadmin的用戶用于Nagios的WEB界面登錄。記下你所設(shè)置的登錄口令。該用戶登錄口令和賬號信息會存儲到/usr/local/nagios/etc/passwd.users文件中:# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin Enter 在Nagios主程序安裝之后會自動將相關(guān)apache配置文件放到/etc/http/conf.d目錄下,文件名是nagios.conf。文件內(nèi)容如下:# cat /etc/httpd/conf.d/nagios.conf Enter ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin Options ExecCGI AllowOverride None Order allow,deny Allow from all AuthName Nagios Access AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user Alias /nagios /usr/local/nagios/share Options None AllowOverride None Order allow,deny Allow from all AuthName Nagios Access AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users Require valid-user這就意味著只有通過認(rèn)證用戶才可以通過http訪問/usr/loca/nagios/share以及/usr/local/nagios/sbin目錄下內(nèi)容。而這個(gè)能夠通過認(rèn)證的用戶也就是nagiosadmin,之后可以重啟apache來應(yīng)用配置: # service httpd restart Enter # chkconfig -level 345 httpd on Enter 剛才已經(jīng)提到Nagios主程序只是一個(gè)控制中心,而能夠起到服務(wù)監(jiān)測和系統(tǒng)監(jiān)測等功能的是眾多Nagios的插件,沒有插件的Nagios系統(tǒng)其實(shí)只是一個(gè)空殼。因此在安裝了Nagios平臺之后我們還需要安裝插件。Nagios插件同樣是在其官方網(wǎng)站下載,目前版本是1.4.12。我將下載的源碼包放到/usr/local目錄下,按照下面的步驟進(jìn)行解壓,編譯和安裝:# tar -zxf nagios-plugins-1.4.12.tar.gz Enter # cd nagios-plugins-1.4.12 Enter # ./configure -with-nagios-user=nagios -with-nagios-group=nagios Enter # make Enter # make install Enter 然后把Nagios加入到服務(wù)列表中以使之在系統(tǒng)啟動時(shí)自動啟動:# chkconfig -add nagios Enter # chkconfig nagios on Enter 執(zhí)行下面的命令來驗(yàn)證Nagios的樣例配置文件:# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg Enter 如果最后的結(jié)果類似下面而沒有報(bào)錯(cuò),可以啟動Nagios服務(wù):Total Warnings: 0Total Errors: 0 Things look okay - No serious problems were detected during the pre-flight check# service nagios start之后可以在瀏覽器上訪問鏈接0/nagios,如果能夠正??吹巾撁妫C明主程序和插件都安裝和配置成功(如圖pic32.png所示)!點(diǎn)擊“Service Detail”的鏈接來查看你本機(jī)的監(jiān)視詳情。此時(shí)可能需要給點(diǎn)時(shí)間讓Nagios來檢測你機(jī)器上所依賴的服務(wù)(如圖pic33.png-pic34.png所示)。實(shí)際上在裝完Nagios之后此時(shí)網(wǎng)絡(luò)監(jiān)測工作只是剛剛開始而已,毫無疑問用戶的需求不是只監(jiān)測本地系統(tǒng),而是大量的遠(yuǎn)程服務(wù)器上的系統(tǒng)狀況以及服務(wù)運(yùn)行狀況。有幾種不同方式來監(jiān)測遠(yuǎn)程Linux/UNIX服務(wù)器的服務(wù)與屬性。其中之一是應(yīng)用共享式SSH密鑰,即運(yùn)行check_by_ssh插件來執(zhí)行對遠(yuǎn)程主機(jī)的檢測。這種方法會導(dǎo)致安裝有Nagios的監(jiān)測服務(wù)器產(chǎn)生很高的系統(tǒng)負(fù)荷,尤其是要同時(shí)監(jiān)測成百個(gè)主機(jī)中的上千個(gè)服務(wù)時(shí),這是因?yàn)橐⒋罅康腟SH連接的總開銷會很高。另一種方法是使用NRPE外部構(gòu)件監(jiān)測遠(yuǎn)程主機(jī)。NRPE外部構(gòu)件可以在遠(yuǎn)程的Linux/Unix主機(jī)上執(zhí)行插件程序。如果是要象監(jiān)測本地主機(jī)一樣對遠(yuǎn)程主機(jī)的磁盤利用率、CPU負(fù)荷和內(nèi)存占用率等情況下,NRPE外部構(gòu)件將非常有用。提到“外部構(gòu)件”這個(gè)概念的時(shí)候需要說明一下,Nagios有許多外部構(gòu)件軟件包可供使用。外部構(gòu)件可以擴(kuò)展Nagios的應(yīng)用并使之與其他軟件集成,而且能夠通過WEB接口來實(shí)現(xiàn)管理配置文件,監(jiān)測遠(yuǎn)程主機(jī)(*NIX,Windows等),對遠(yuǎn)程主機(jī)的強(qiáng)制監(jiān)測,減化并擴(kuò)展告警邏輯等功能。NRPE是一個(gè)可在遠(yuǎn)程Linux/Unix主機(jī)上執(zhí)行的插件的外部構(gòu)件包。如果你需要監(jiān)測遠(yuǎn)程的主機(jī)上的本地資源或?qū)傩?,如磁盤利用率、CPU負(fù)荷、內(nèi)存利用率等時(shí)是很有用的。最終效果和用check_by_ssh插件來實(shí)現(xiàn)的功能一樣,但是他不需要占用更多的監(jiān)測主機(jī)的CPU負(fù)荷,所以當(dāng)你需要監(jiān)測大量的主機(jī)時(shí)這個(gè)構(gòu)件將起到很重要的作用(如圖pic35.png所示)。通過該圖可以看出,我們需要在被監(jiān)測主機(jī)上部署NRPE,他相當(dāng)于一個(gè)守護(hù)進(jìn)程負(fù)責(zé)監(jiān)聽。而監(jiān)測主機(jī)使用check_nrpe并通過SSL連接訪問這個(gè)daemon,然后調(diào)用被監(jiān)測方的check_disk,check_load等腳本獲取信息并將結(jié)果傳遞到監(jiān)測主機(jī)。同時(shí)這些腳本也有能力監(jiān)測到其他主機(jī)的相關(guān)信息。NRPE的使用環(huán)境有direct check和indirect check兩種,direct check指的是NRPE運(yùn)行在被監(jiān)測主機(jī)的本地,而indirect check意味著運(yùn)行NRPE的服務(wù)器只是一個(gè)中間人,他會繼續(xù)通過剛才所提及的腳本來監(jiān)測其他更多遠(yuǎn)程主機(jī)上的服務(wù)和系統(tǒng)信息。層次化的監(jiān)測就是通過這種方式來實(shí)現(xiàn)。為了簡單說明問題,我們將部署的是基于direct check的環(huán)境部署NRPE。所以下面的操作將會在被監(jiān)測主機(jī)20上進(jìn)行。首先要建立Nagios賬號,這里我使用同樣的密碼:# useradd nagios Enter # passwd nagios Enter 之后按照和上面相同的步驟來編譯和安裝nagios-plugin軟件:# tar -zxf nagios-plugins-1.4.12.tar.gz Enter # cd nagios-plugins-1.4.12 Enter # ./configure Enter # make Enter # make install Enter 然后對相關(guān)的目錄設(shè)置權(quán)限和所屬用戶組:# chown nagios.nagios /usr/local/nagios Enter # chown R nagios.nagios /usr/local/nagios/libexec Enter 接著NRPE包放到/usr/local目錄下,按照下面的步驟解壓縮,并且編譯和安裝:# tar -zxf nrpe-2.12.tar.gz Enter # cd nrpe-2.12 Enter # ./configure Enter # make all Enter # make install-plugin Enter # make install-daemon Enter # make install-daemon-config Enter 同時(shí)安裝NRPE的插件、進(jìn)程以及進(jìn)程范例配置文件。接著執(zhí)行命令將nrpe安裝為依賴xinetd超級進(jìn)程的非獨(dú)立服務(wù),那么前提是必須安裝xinetd。不過一般系統(tǒng)都會自動安裝該服務(wù)。 最后執(zhí)行下面的命令將NRPE安裝為xinetd超級進(jìn)程所管理的進(jìn)程之一。# make install-xinetd Enter 完成之后需要編輯/etc/xinetd.d目錄下的nrpe文件,并且在最后添加允許實(shí)施監(jiān)測的主機(jī)IP地址,這里是0,那么整個(gè)配置文件全文如下:# cat /etc/xinetd.d/nrpe Enter service nrpe flags = REUSE socket_type = stream port = 5666 wait = no user = nagios group = nagios server = /usr/local/nagios/bin/nrpe server_args = -c /usr/local/nagios/etc/nrpe.cfg -inetd log_on_failure += USERID disable = no only_from = 0然后修改/etc/services檔,并添加下面的內(nèi)容:nrpe 5666/tcp # nrpe重啟服務(wù):# /etc/init.d/xinetd restart Enter 此時(shí)檢查nrpe服務(wù)啟動狀況如下:# netstat -nl | grep 5666 Enter tcp 0 0 :5666 :* LISTEN # lsof -i:5666COMMAND PID USER FD TYPE DEVICE SIZE NODE NAMExinetd 9949 root 5u IPv4 28764 TCP *:nrpe (LISTEN)現(xiàn)在最關(guān)鍵的一步是確保安裝的NRPE進(jìn)程能夠正常工作,所以要使用check_nrpe插件進(jìn)行測試。在監(jiān)測主機(jī)0上執(zhí)行命令:# /usr/local/nagios/libexec/check_nrpe -H 20 Enter 如果能夠出現(xiàn)如下的版本號顯示,則證明在被監(jiān)測主機(jī)上配置的NRPE已經(jīng)正常工作,并且監(jiān)測主機(jī)能夠通過SSL與被監(jiān)測主機(jī)上的NRPE正常通信。NRPE v2.12但是如果出現(xiàn)一些error信息,則需要檢查配置,檢查的內(nèi)容包括主要有下面幾項(xiàng):1. nrpe的版本號和nrpe-plugin的版本號是否一致。版本不一致極有可能造成該問題。2. SSL是否被關(guān)閉。確保NRPE以及check_nrpe插件在編譯的時(shí)候都加入了SSL支持,同時(shí)在運(yùn)行時(shí)都開啟SSL。不過一般編譯過程中默認(rèn)都會假如支持SSL選項(xiàng)。3. 確保NRPE的配置文件nrpe.cfg文件可以被nagios用戶讀取并且nagios用戶可以執(zhí)行nrpe二進(jìn)制程序。4. 確認(rèn)在/etc/xinetd.d/nrpe文件的“only_from=x.x.x.x”中x.x.x.x是訪問NRPE的監(jiān)測主機(jī)的IP地址。NRPE的配置文件/usr/local/nagios/etc/nrpe.cfg中實(shí)際上已經(jīng)包含了一些對系統(tǒng)進(jìn)行監(jiān)測的命令。由于NRPE安裝在本地,這些命令可以直接協(xié)助NRPE從被監(jiān)測主機(jī)獲取系統(tǒng)和服務(wù)運(yùn)行狀況,而且都是在剛才通過nagios-plugin安裝的。如果從監(jiān)測主機(jī)上運(yùn)行這些命令進(jìn)行監(jiān)測,一切正確可以看到下面的效果。那么不難看出其中的奧妙,即實(shí)際上完全可以利用在/usr/local/nagios/libexec/中的各種腳本并添加各項(xiàng)參數(shù)來定制自己的監(jiān)測內(nèi)容。(如圖pic36.png所示)那么到此為止我們就完成了在遠(yuǎn)程被監(jiān)測主機(jī)上安裝和配置RNPE的任務(wù)。現(xiàn)在需要在監(jiān)測主機(jī),也即是0上面安裝和配置check_nrpe插件。步驟大概分為:第一,安裝check_nrpe插件;第二,為使用check_nrpe插件建立Nagios命令定義;第三,建立Nagios host以及服務(wù)定義由于我們剛才已經(jīng)在安裝Nagios之后安裝了nrpe,所以實(shí)際上第一個(gè)步驟已經(jīng)完成?,F(xiàn)在開始執(zhí)行第二步驟建立命令定義:這里需要花點(diǎn)時(shí)間特別說明一下Nagios利用命令定義進(jìn)行監(jiān)測的原理:在安裝nagios成功之后可以看到在/usr/local/nagios/libexec目錄下有很多可執(zhí)行監(jiān)測程序或者腳本,其名稱類似check_icmp這樣的格式。Nagios并沒有提供針對這些監(jiān)測程序的腳本的說明文檔,想了解這些腳本如何工作,需要通過h參數(shù),顯示其使用方法和參數(shù),并會給出一些實(shí)際的例子。例如:./check-disk h。那么我們可以嘗試按照其中一個(gè)例子執(zhí)行該腳本,執(zhí)行和顯示的結(jié)果如下:# ./check_disk -w 10% -c 5% -p /tmp -p /var -C -w 100000 -c 50000 -p /dev/sda3 Enter DISK OK - free space: / 2124 MB (41% inode=90%);| /=2955MB;4820;5088;0;5356可以看到狀態(tài)值“OK”,以及一些詳細(xì)的數(shù)據(jù)信息。上述操作說明這些插件都是可以獨(dú)立使用。Nagios有很多個(gè)cfg配置文件用來定義各式各樣的信息,其中template.cfg是用來定義主機(jī)和服務(wù)信息的模板文件,在目錄/usr/local/nagios/etc/objects下。我們將按照這些模板來建立新的配置文件,例如同樣目錄下的server.cfg來定義監(jiān)測內(nèi)容,那么這些插件就會從server.cfg中調(diào)用。例如要定義一個(gè)需要監(jiān)測的SSH服務(wù),名稱為TestSSH:按照其格式:define service host_name x.x.x.xservice_description check_ssh check_command check_ssh host_name項(xiàng)說明該服務(wù)所在的主機(jī)名,service_description項(xiàng)為服務(wù)的說明信息,這項(xiàng)內(nèi)容會顯示在nagios頁面中。check_command項(xiàng)說明要使用的命令,這個(gè)例子中的命令check_ssh就是一個(gè)插件了。這個(gè)服務(wù)定義明確了nagios在需要監(jiān)測的內(nèi)容和監(jiān)測的手段,即使用check_ssh插件來監(jiān)測主機(jī)x.x.x.x上的ssh服務(wù)情況。除了直接使用插件來做check_command項(xiàng)的參數(shù)以外,還可以使用自己定義的命令來做check_command參數(shù)。例如,定義一個(gè)需要監(jiān)測的主機(jī),名字是localhost.localdomain:define host host_name localhost.localdomainalias remotehost01address check_command check-host-alive 在此例中,check_command項(xiàng)的參數(shù)“check-host-alive”并非一個(gè)插件,而是在commands.cfg檔中定義的一個(gè)命令。那么在相同目錄的command.cfg中對該命令又被定義為:# check-host-alive command definition define command command_name check-host-alive command_line $USER1$/check_ping -H 20 -w 300.0,80% -c 500.0,100% -p 1 首先,$USER1$這個(gè)參數(shù)在resource.cfg中定義,這個(gè)值會指向插件的目錄(如:/usr/local/nagios/libexec)?!?H 20”定義目標(biāo)主機(jī)的地址,-w說明后面的一對值對應(yīng)的是“WARNING”狀態(tài),“80%”是其臨界值?!?c 500.0,100%” 其中“-c”說明后面的一對值對應(yīng)的是 CRITICAL,“100%”是其臨界值。“-p 1”說明每次探測發(fā)送一個(gè)包。所以歸根結(jié)底就是說通過ping這種方式來證明某臺主機(jī)處于alive狀態(tài)。而至于如何監(jiān)聽非默認(rèn)端口的服務(wù)。下面我也舉例說明一下這個(gè)問題:例如:現(xiàn)需檢查的一個(gè)運(yùn)行在8080埠上的http服務(wù)。那么我們可以對commands.cfg檔中對關(guān)于check_http的聲明做如下修改。# check_http command definition define command command_name check_http command_line $USER1$/check_http -H 20 -p $ARG1$ 其中$ARG1$是指在調(diào)用這個(gè)命令的時(shí)候,命令后面的第一個(gè)參數(shù)。再把services.cfg中,對應(yīng)服務(wù)的檢測命令后面加一個(gè)參數(shù):define service host_name .check_command check_http!8080這樣就可以對8080埠的http服務(wù)進(jìn)行監(jiān)測了。如果要添加多個(gè)參數(shù)的時(shí)候,也可以類似操作。 綜上所述,插件的安裝和調(diào)用方法也就舉例介紹完畢了,大家在使用中也可以使用自己寫的檢測腳本來完成比較特殊的檢測功能。所以按照上面所敘述的原理,我們開始第二步和第三步的配置,為使用check_nrpe插件建立Nagios命令定義以及服務(wù)定義:修改配置文件/usr/local/nagios/etc/objects/command.cfg并增加下面的內(nèi)容:define commandcommand_name check_nrpecommand_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$然后針對要監(jiān)測的目標(biāo)主機(jī)建立主機(jī)定義,主機(jī)定義的項(xiàng)目和內(nèi)容有很多,所以定義的項(xiàng)目如下:host_name host_name # 簡短的主機(jī)名alias alias # 別名,可以更詳細(xì)的說明主機(jī)address address # ip地址,當(dāng)然如果DNS服務(wù)可用也可以寫名稱。如果你不定義該值,nagios將會用host_name去尋找主機(jī)。parents host_names # 上一節(jié)點(diǎn)的名稱,也就是指從nagios服務(wù)器到被監(jiān)測主機(jī)之間經(jīng)過的節(jié)點(diǎn), 可以是路由器、交換機(jī)、主機(jī)等等。這個(gè)節(jié)點(diǎn)也要定義并且要被nagios監(jiān)測。hostgroups # 簡短的主機(jī)組名稱check_command # 檢查命令的簡短名稱,如果此項(xiàng)留空,nagios將不會去判斷該主機(jī)是否alive。 max_check_attempts # 當(dāng)檢查命令的返回值不是“OK”時(shí),重試的次數(shù)check_interval # 循環(huán)檢查的間隔時(shí)間。active_checks_enabled # 是否啟用“active_checks”passive_checks_enabled # 是否啟用“passive_checks”,及“被動檢查”check_period # 檢測時(shí)間段簡短名稱,此處只是名稱,具體的時(shí)間段要寫在其他的配置文件obsess_over_host # 是否啟用主機(jī)操作系統(tǒng)探測。check_freshness # 是否啟用freshness測試。freshness測試是對于啟用被動測試模式的主機(jī)而言的,其作用是定期檢查該主機(jī)報(bào)告的狀態(tài)信息,如果該狀態(tài)信息已經(jīng)過期,freshness將會強(qiáng)制作主機(jī)檢查。freshness_threshold # fressness的臨界值,單位為秒。 如果定義為0,則為自動定義。event_handler # 當(dāng)主機(jī)發(fā)生狀態(tài)改變時(shí),采用的處理命令的簡短的名字(可以在commands.cfg中對其定義) event_handler_enabled # 是否啟用event_handlerlow_flap_threshold # 抖動的下限值。所謂抖動,主要定義了這樣一種現(xiàn)象:在一段時(shí)間內(nèi),主機(jī) (或服務(wù))的狀態(tài)值頻繁發(fā)生變化,類似一個(gè)問題風(fēng)暴或者一個(gè)網(wǎng)絡(luò)問題。 high_flap_threshold # 抖動的上限值flap_detection_enabled # 是否啟用抖動檢測process_perf_data # 是否啟用processing of performance dataretain_status_information # 程序重啟時(shí),是否保持主機(jī)狀態(tài)相關(guān)的信息retain_nonstatus_information # 程序重啟時(shí),是否保持主機(jī)狀態(tài)無關(guān)的信息contact_groups # 聯(lián)系人組(這個(gè)組會在contactgroup.cfg文件中定義),在此組中的聯(lián)系人都 會受到該主機(jī)的告警提醒信息。notification_interval # 告警臨界值。達(dá)到此次數(shù)之后,才會發(fā)送該機(jī)的報(bào)警提醒信息。 notification_period # 告警時(shí)間段notification_options # 告警包括的狀態(tài)變化結(jié)果notifications_enabled # 是否啟用告警提醒功能stalking_options o,d,u # 持續(xù)狀態(tài)檢測參數(shù),o = 持續(xù)的UP狀態(tài),d = 持續(xù)的DOWN狀態(tài),and u = 持續(xù)的UNREACHABLE狀態(tài).當(dāng)然在企業(yè)的監(jiān)測環(huán)境中很多項(xiàng)目可能都不一定能夠用上,這里我只是通過一個(gè)簡單的例子說明其用法就好了。所以修改/usr/local/nagios/etc/objects/localhost.cfg文件,于該文件的“HOST DEFINITION”部分,在原來的基礎(chǔ)上增加自己的主機(jī)定義內(nèi)容:define host use linux-box ; Inherit default values from a template host_name localhost ; The name were giving to this server alias RHEL5u2 ; A longer name for the server address 20 ; IP address of the server 同時(shí)在“HOST GROUP DEFINITION”部分,將20這臺主機(jī)加入到linux-servers這個(gè)hostgroup中。如果有多臺主機(jī)都屬于這個(gè)hostgroup,可以用逗號將其隔開。以下是我添加的內(nèi)容:define hostgroup hostgroup_name linux-servers ; The name of the hostgroup alias Linux Servers ; Long name of the group members 20 ; Comma separated list of hosts that belong to this group 而在最后的“SERVICE DEFINITION”部分,所有未注釋的部分實(shí)際上是關(guān)于對localhost也就是本機(jī)所要監(jiān)測的內(nèi)容。其格式和語法就是我在提到Nagios監(jiān)測原理方面舉例說明的內(nèi)容。對于localhost來說不需要修改了,但是可以把他的內(nèi)容復(fù)制到自定義的cfg檔中并照葫蘆畫瓢修改成對20這臺 主機(jī)的命令定義。我們下面就來做這樣的操作:在/usr/local/nagios/etc/objects目錄下針對監(jiān)測的服務(wù)建立服務(wù)定義,建立一個(gè)新的文件remotehosts.cfg,加入下面內(nèi)容:下面是自定義的:define serviceuse generic-servicehost_name localhostservice_description CPU Loadcheck_command check_nrpe!check_load表示監(jiān)測遠(yuǎn)程主機(jī)的CPU負(fù)載。如果要監(jiān)測當(dāng)前在遠(yuǎn)程主機(jī)的磁盤空間,則加入:define serviceuse generic-servicehost_name localhostservice_description /dev/sda3 Free Spacecheck_command check_nrpe!check_disk /dev/sda3如果要監(jiān)測當(dāng)前遠(yuǎn)程主機(jī)的僵死進(jìn)程數(shù),則加入:define serviceuse generic-servicehost_name localhostservice_description Zombie Processescheck_command check_nrpe!check_zombie_procs同時(shí)使用vi編輯器末行模式的r功能讀取當(dāng)前目錄下的localhost.cfg檔,刪除“HOST DEFINITION”和“HOST GROUP DEFINITION”部分。只保留“SERVICE DEFINITION”部分并修改為下面的內(nèi)容:第一個(gè)命令定義:通過check_ping腳本確保監(jiān)測主機(jī)和被監(jiān)測主機(jī)的連通性,如果網(wǎng)絡(luò)丟包率到達(dá)20%則產(chǎn)生warning警告,到達(dá)60%則產(chǎn)生critical警告:define service use local-service ; Name of service template to use host_name 20 service_description PING REMOTE HOST check_command check_ping!100.0,20%!500.0,60% 第二個(gè)命令定義:監(jiān)測遠(yuǎn)程主機(jī)根分區(qū)磁盤狀況,如果根分區(qū)可用空間低于20%會產(chǎn)生Warning
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 如何在社交媒體中實(shí)現(xiàn)精細(xì)化運(yùn)營
- 社區(qū)家政業(yè)務(wù)方案
- 制造公司年度工作計(jì)劃框架
- 醫(yī)院項(xiàng)目商業(yè)計(jì)劃書
- 保密知識考試題庫含答案(典型題)
- 第17課挽救民族危亡的斗爭 同步訓(xùn)練(含答案) 2024-2025學(xué)年統(tǒng)編版歷史中外歷史綱要上冊
- 2025年中國文化消費(fèi)行業(yè)市場規(guī)模及投資前景預(yù)測分析報(bào)告
- 2025年中考?xì)v史總復(fù)習(xí)世界古代史知識必考重點(diǎn)知識梳理匯編
- 機(jī)關(guān)食堂食品安全風(fēng)險(xiǎn)防控工作指南
- 安全車輛測試題及答案
- 厭學(xué)怎么辦-主題班會課件
- 公務(wù)用車租賃服務(wù)采購項(xiàng)目比選文件
- 香港認(rèn)可的大陸工作證明范本
- 新建混凝土路面道路工程施工工程投標(biāo)書(技術(shù)方案)
- 旁站記錄新表(腳手架拆除)
- 低壓柜開關(guān)更換施工方案
- 織金新型能源化工基地污水處理廠及配套管網(wǎng)工程-茶店污水處理廠環(huán)評報(bào)告
- 陜西省2023年中考英語真題(附答案)
- 智慧能源(電力)大數(shù)據(jù)平臺建設(shè)方案
- 《兩個(gè)神秘的小鞋匠》課件
- 河南省平頂山市2022-2023學(xué)年八年級下學(xué)期期末物理試卷(含答案)
評論
0/150
提交評論