欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Linux下Nagios的安裝與配置方法

這篇文章主要講解了“Linux下Nagios的安裝與配置方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Linux下Nagios的安裝與配置方法”吧!

成都網(wǎng)絡(luò)公司-成都網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司10年經(jīng)驗(yàn)成就非凡,專業(yè)從事成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì),成都網(wǎng)頁(yè)設(shè)計(jì),成都網(wǎng)頁(yè)制作,軟文發(fā)稿,廣告投放平臺(tái)等。10年來已成功提供全面的成都網(wǎng)站建設(shè)方案,打造行業(yè)特色的成都網(wǎng)站建設(shè)案例,建站熱線:028-86922220,我們期待您的來電!

一、Nagios簡(jiǎn)介

Nagios是一款開源的電腦系統(tǒng)和網(wǎng)絡(luò)監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機(jī)狀態(tài),交換機(jī)路由器等網(wǎng)絡(luò)設(shè)置,打印機(jī)等。在系統(tǒng)或服務(wù)狀態(tài)異常時(shí)發(fā)出郵件或短信報(bào)警第一時(shí)間通知網(wǎng)站運(yùn)維人員,在狀態(tài)恢復(fù)后發(fā)出正常的郵件或短信通知。
Nagios原名為NetSaint,由Ethan Galstad開發(fā)并維護(hù)至今。NAGIOS是一個(gè)縮寫形式: "Nagios Ain't Gonna Insist On Sainthood" Sainthood 翻譯為圣徒,而"Agios"是"saint"的希臘表示方法。Nagios被開發(fā)在Linux下使用,但在Unix下也工作得非常好。

主要功能

•網(wǎng)絡(luò)服務(wù)監(jiān)控(SMTP、POP3、HTTP、NNTP、ICMP、SNMP、FTP、SSH)
•主機(jī)資源監(jiān)控(CPU load、disk usage、system logs),也包括Windows主機(jī)(使用NSClient++ plugin)
•可以指定自己編寫的Plugin通過網(wǎng)絡(luò)收集數(shù)據(jù)來監(jiān)控任何情況(溫度、警告……)
•可以通過配置Nagios遠(yuǎn)程執(zhí)行插件遠(yuǎn)程執(zhí)行腳本
•遠(yuǎn)程監(jiān)控支持SSH或SSL加通道方式進(jìn)行監(jiān)控
•簡(jiǎn)單的plugin設(shè)計(jì)允許用戶很容易的開發(fā)自己需要的檢查服務(wù),支持很多開發(fā)語言(shell scripts、C++、Perl、ruby、Python、PHP、C#等)
•包含很多圖形化數(shù)據(jù)Plugins(Nagiosgraph、Nagiosgrapher、PNP4Nagios等)
•可并行服務(wù)檢查
•能夠定義網(wǎng)絡(luò)主機(jī)的層次,允許逐級(jí)檢查,就是從父主機(jī)開始向下檢查
•當(dāng)服務(wù)或主機(jī)出現(xiàn)問題時(shí)發(fā)出通告,可通過email, pager, sms 或任意用戶自定義的plugin進(jìn)行通知
•能夠自定義事件處理機(jī)制重新激活出問題的服務(wù)或主機(jī)
•自動(dòng)日志循環(huán)
•支持冗余監(jiān)控
•包括Web界面可以查看當(dāng)前網(wǎng)絡(luò)狀態(tài),通知,問題歷史,日志文件等

二、Nagios工作原理

Nagios的功能是監(jiān)控服務(wù)和主機(jī),但是他自身并不包括這部分功能,所有的監(jiān)控、檢測(cè)功能都是通過各種插件來完成的。
啟動(dòng)Nagios后,它會(huì)周期性的自動(dòng)調(diào)用插件去檢測(cè)服務(wù)器狀態(tài),同時(shí)Nagios會(huì)維持一個(gè)隊(duì)列,所有插件返回來的狀態(tài)信息都進(jìn)入隊(duì)列,Nagios每次都從隊(duì)首開始讀取信息,并進(jìn)行處理后,把狀態(tài)結(jié)果通過web顯示出來。
Nagios提供了許多插件,利用這些插件可以方便的監(jiān)控很多服務(wù)狀態(tài)。安裝完成后,在nagios主目錄下的/libexec里放有nagios自帶的可以使用的所有插件,如,check_disk是檢查磁盤空間的插件,check_load是檢查CPU負(fù)載的,等等。每一個(gè)插件可以通過運(yùn)行./check_xxx –h 來查看其使用方法和功能。
Nagios可以識(shí)別4種狀態(tài)返回信息,即 0(OK)表示狀態(tài)正常/綠色、1(WARNING)表示出現(xiàn)警告/黃色、2(CRITICAL)表示出現(xiàn)非常嚴(yán)重的錯(cuò)誤/紅色、3(UNKNOWN)表示未知錯(cuò)誤/深黃色。Nagios根據(jù)插件返回來的值,來判斷監(jiān)控對(duì)象的狀態(tài),并通過web顯示出來,以供管理員及時(shí)發(fā)現(xiàn)故障。

四種監(jiān)控狀態(tài)

Linux下Nagios的安裝與配置方法



再說報(bào)警功能,如果監(jiān)控系統(tǒng)發(fā)現(xiàn)問題不能報(bào)警那就沒有意義了,所以報(bào)警也是nagios很重要的功能之一。但是,同樣的,Nagios 自身也沒有報(bào)警部分的代碼,甚至沒有插件,而是交給用戶或者其他相關(guān)開源項(xiàng)目組去完成的。

Nagios 安裝,是指基本平臺(tái),也就是Nagios軟件包的安裝。它是監(jiān)控體系的框架,也是所有監(jiān)控的基礎(chǔ)。

打開Nagios官方的文檔,會(huì)發(fā)現(xiàn)Nagios基本上沒有什么依賴包,只要求系統(tǒng)是Linux或者其他Nagios支持的系統(tǒng)。不過如果你沒有安裝apache(http服務(wù)),那么你就沒有那么直觀的界面來查看監(jiān)控信息了,所以apache姑且算是一個(gè)前提條件。關(guān)于apache的安裝,網(wǎng)上有很多,照著安裝就是了。安裝之后要檢查一下是否可以正常工作。

知道Nagios 是如何通過插件來管理服務(wù)器對(duì)象后,現(xiàn)在開始研究它是如何管理遠(yuǎn)端服務(wù)器對(duì)象的。Nagios 系統(tǒng)提供了一個(gè)插件NRPE。Nagios 通過周期性的運(yùn)行它來獲得遠(yuǎn)端服務(wù)器的各種狀態(tài)信息。它們之間的關(guān)系如下圖所示:

Linux下Nagios的安裝與配置方法

Nagios 通過NRPE 來遠(yuǎn)端管理服務(wù)

1. Nagios 執(zhí)行安裝在它里面的check_nrpe 插件,并告訴check_nrpe 去檢測(cè)哪些服務(wù)。
2. 通過SSL,check_nrpe 連接遠(yuǎn)端機(jī)子上的NRPE daemon
3. NRPE 運(yùn)行本地的各種插件去檢測(cè)本地的服務(wù)和狀態(tài)(check_disk,..etc)
4. 最后,NRPE 把檢測(cè)的結(jié)果傳給主機(jī)端的check_nrpe,check_nrpe 再把結(jié)果送到Nagios狀態(tài)隊(duì)列中。
5. Nagios 依次讀取隊(duì)列中的信息,再把結(jié)果顯示出來。

三、實(shí)驗(yàn)環(huán)境

Host NameOSIPSoftware
Nagios-ServerCentOS release 6.3 (Final)192.168.1.108Apache、Php、Nagios、nagios-plugins
Nagios-LinuxCentOS release 5.8 (Final)192.168.1.111nagios-plugins、nrpe
Nagios-WindowsWindows XP192.168.1.113 NSClient++


Server 安裝了nagios軟件,對(duì)監(jiān)控的數(shù)據(jù)做處理,并且提供web界面查看和管理。當(dāng)然也可以對(duì)本機(jī)自身的信息進(jìn)行監(jiān)控。

Client 安裝了NRPE等客戶端,根據(jù)監(jiān)控機(jī)的請(qǐng)求執(zhí)行監(jiān)控,然后將結(jié)果回傳給監(jiān)控機(jī)。

防火墻已關(guān)閉/iptables: Firewall is not running.

SELINUX=disabled

四、實(shí)驗(yàn)?zāi)繕?biāo)

Linux下Nagios的安裝與配置方法

五、Nagios服務(wù)端安裝

5.1 基礎(chǔ)支持套件:gcc glibc glibc-common gd gd-devel xinetd openssl-devel

# rpm -q gcc glibc glibc-common gd gd-devel xinetd openssl-devel

Linux下Nagios的安裝與配置方法

如果系統(tǒng)中沒有這些套件,使用yum 安裝

# yum install -y gcc glibc glibc-common gd gd-devel xinetd openssl-devel

5.2 創(chuàng)建nagios用戶和用戶組

# useradd -s /sbin/nologin nagios# mkdir /usr/local/nagios# chown -R nagios.nagios /usr/local/nagios

Linux下Nagios的安裝與配置方法

查看nagios 目錄的權(quán)限

# ll -d /usr/local/nagios/

Linux下Nagios的安裝與配置方法

5.3 編譯安裝Nagios

# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz

# tar zxvf nagios-3.4.3.tar.gz

# cd nagios

# ./configure --prefix=/usr/local/nagios

Linux下Nagios的安裝與配置方法

Linux下Nagios的安裝與配置方法

# make all

Linux下Nagios的安裝與配置方法

Linux下Nagios的安裝與配置方法

# make install

Linux下Nagios的安裝與配置方法

# make install-init

Linux下Nagios的安裝與配置方法

# make install-commandmode

Linux下Nagios的安裝與配置方法

# make install-config

Linux下Nagios的安裝與配置方法

# chkconfig --add nagios

# chkconfig --level 35 nagios on

# chkconfig --list nagios

Linux下Nagios的安裝與配置方法

5.4 驗(yàn)證程序是否被正確安裝
切換目錄到安裝路徑(這里是/usr/local/nagios),看是否存在etc、bin、sbin、share、var 這五個(gè)目錄,如果存在則可以表明程序被正確的安裝到系統(tǒng)了。Nagios 各個(gè)目錄用途說明如下:

binNagios 可執(zhí)行程序所在目錄
etcNagios 配置文件所在目錄
sbinNagios CGI 文件所在目錄,也就是執(zhí)行外部命令所需文件所在的目錄
shareNagios網(wǎng)頁(yè)文件所在的目錄
libexecNagios 外部插件所在目錄
varNagios 日志文件、lock 等文件所在的目錄
var/archivesNagios 日志自動(dòng)歸檔目錄
var/rw用來存放外部命令文件的目錄

5.5 安裝Nagios 插件

# wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz

# tar zxvf nagios-plugins-1.4.16.tar.gz

# cd nagios-plugins-1.4.16

# ./configure --prefix=/usr/local/nagios

# make && make install

Linux下Nagios的安裝與配置方法

Linux下Nagios的安裝與配置方法

5.6 安裝與配置Apache和Php

Apache 和Php 不是安裝nagios 所必須的,但是nagios提供了web監(jiān)控界面,通過web監(jiān)控界面可以清晰的看到被監(jiān)控主機(jī)、資源的運(yùn)行狀態(tài),因此,安裝一個(gè)web服務(wù)是很必要的。
需要注意的是,nagios在nagios3.1.x版本以后,配置web監(jiān)控界面時(shí)需要php的支持。這里我們下載的nagios版本為nagios-3.4.3,因此在編譯安裝完成apache后,還需要編譯php模塊,這里選取的php版本為php5.4.10。

a. 安裝Apache

# wget http://archive.apache.org/dist/httpd/httpd-2.2.23.tar.gz

# tar zxvf httpd-2.2.23.tar.gz

# cd httpd-2.2.23

# ./configure --prefix=/usr/local/apache2

# make && make install

Linux下Nagios的安裝與配置方法

若出現(xiàn)錯(cuò)誤:

Linux下Nagios的安裝與配置方法

則在編譯時(shí)入加 --with-included-apr 即可解決。

b. 安裝Php

# wget http://cn2.php.net/distributions/php-5.4.10.tar.gz

# tar zxvf php-5.4.10.tar.gz

# cd php-5.4.10

# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs

Linux下Nagios的安裝與配置方法

# make && make install

Linux下Nagios的安裝與配置方法

c. 配置apache


找到apache 的配置文件/usr/local/apache2/conf/httpd.conf
找到:

代碼如下:


User daemon
Group daemon

修改為

代碼如下:


User nagios
Group nagios

然后找到

代碼如下:


<IfModule dir_module>
DirectoryIndex index.html
</IfModule>

修改為

代碼如下:


<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>

接著增加如下內(nèi)容:

AddType application/x-httpd-php .php 為了安全起見,一般情況下要讓nagios 的web 監(jiān)控頁(yè)面必須經(jīng)過授權(quán)才能訪問,這需要增加驗(yàn)證配置,即在httpd.conf 文件最后添加如下信息:

XML/HTML Code復(fù)制內(nèi)容到剪貼板

  1. #setting for nagios    

  2. ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"    

  3. <Directory "/usr/local/nagios/sbin">    

  4.      AuthType Basic    

  5.      Options ExecCGI    

  6.      AllowOverride None    

  7.      Order allow,deny    

  8.      Allow from all    

  9.      AuthName "Nagios Access"    

  10.      AuthUserFile /usr/local/nagios/etc/htpasswd             //用于此目錄訪問身份驗(yàn)證的文件    

  11.      Require valid-user    

  12. </Directory>    

  13. Alias /nagios "/usr/local/nagios/share"    

  14. <Directory "/usr/local/nagios/share">    

  15.      AuthType Basic    

  16.      Options None    

  17.      AllowOverride None    

  18.      Order allow,deny    

  19.      Allow from all    

  20.      AuthName "nagios Access"    

  21.      AuthUserFile /usr/local/nagios/etc/htpasswd    

  22.      Require valid-user    

  23. </Directory>  

d. 創(chuàng)建apache目錄驗(yàn)證文件 

在上面的配置中,指定了目錄驗(yàn)證文件htpasswd,下面要?jiǎng)?chuàng)建這個(gè)文件:

# /usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd david

Linux下Nagios的安裝與配置方法
這樣就在/usr/local/nagios/etc 目錄下創(chuàng)建了一個(gè)htpasswd 驗(yàn)證文件,當(dāng)通過http://192.168.1.108/nagios/ 訪問時(shí)就需要輸入用戶名和密碼了。

e. 查看認(rèn)證文件的內(nèi)容

# cat /usr/local/nagios/etc/htpasswd

Linux下Nagios的安裝與配置方法

f. 啟動(dòng)apache 服務(wù)

# /usr/local/apache2/bin/apachectl start

到這里nagios 的安裝也就基本完成了,你可以通過web來訪問了。

Linux下Nagios的安裝與配置方法

Linux下Nagios的安裝與配置方法

六、配置Nagios

Nagios 主要用于監(jiān)控一臺(tái)或者多臺(tái)本地主機(jī)及遠(yuǎn)程的各種信息,包括本機(jī)資源及對(duì)外的服務(wù)等。默認(rèn)的Nagios 配置沒有任何監(jiān)控內(nèi)容,僅是一些模板文件。若要讓Nagios 提供服務(wù),就必須修改配置文件,增加要監(jiān)控的主機(jī)和服務(wù),下面將詳細(xì)介紹。

6.1 默認(rèn)配置文件介紹

Nagios 安裝完畢后,默認(rèn)的配置文件在/usr/local/nagios/etc目錄下。

Linux下Nagios的安裝與配置方法

每個(gè)文件或目錄含義如下表所示:

文件名或目錄名用途
cgi.cfg控制CGI訪問的配置文件
nagios.cfgNagios 主配置文件
resource.cfg變量定義文件,又稱為資源文件,在些文件中定義變量,以便由其他配置文件引用,如$USER1$
objectsobjects 是一個(gè)目錄,在此目錄下有很多配置文件模板,用于定義Nagios 對(duì)象
objects/commands.cfg命令定義配置文件,其中定義的命令可以被其他配置文件引用
objects/contacts.cfg定義聯(lián)系人和聯(lián)系人組的配置文件
objects/localhost.cfg定義監(jiān)控本地主機(jī)的配置文件
objects/printer.cfg定義監(jiān)控打印機(jī)的一個(gè)配置文件模板,默認(rèn)沒有啟用此文件
objects/switch.cfg定義監(jiān)控路由器的一個(gè)配置文件模板,默認(rèn)沒有啟用此文件
objects/templates.cfg定義主機(jī)和服務(wù)的一個(gè)模板配置文件,可以在其他配置文件中引用
objects/timeperiods.cfg定義Nagios 監(jiān)控時(shí)間段的配置文件
objects/windows.cfg監(jiān)控Windows 主機(jī)的一個(gè)配置文件模板,默認(rèn)沒有啟用此文件


6.2 配置文件之間的關(guān)系

在nagios的配置過程中涉及到的幾個(gè)定義有:主機(jī)、主機(jī)組,服務(wù)、服務(wù)組,聯(lián)系人、聯(lián)系人組,監(jiān)控時(shí)間,監(jiān)控命令等,從這些定義可以看出,nagios各個(gè)配置文件之間是互為關(guān)聯(lián),彼此引用的。

成功配置出一臺(tái)nagios監(jiān)控系統(tǒng),必須要弄清楚每個(gè)配置文件之間依賴與被依賴的關(guān)系,最重要的有四點(diǎn):

第一:定義監(jiān)控哪些主機(jī)、主機(jī)組、服務(wù)和服務(wù)組;
第二:定義這個(gè)監(jiān)控要用什么命令實(shí)現(xiàn);
第三:定義監(jiān)控的時(shí)間段;
第四:定義主機(jī)或服務(wù)出現(xiàn)問題時(shí)要通知的聯(lián)系人和聯(lián)系人組。

6.3 配置Nagios

 為了能更清楚的說明問題,同時(shí)也為了維護(hù)方便,建議將nagios各個(gè)定義對(duì)象創(chuàng)建獨(dú)立的配置文件:

&bull; 創(chuàng)建hosts.cfg文件來定義主機(jī)和主機(jī)組
&bull; 創(chuàng)建services.cfg文件來定義服務(wù)
&bull; 用默認(rèn)的contacts.cfg文件來定義聯(lián)系人和聯(lián)系人組
&bull; 用默認(rèn)的commands.cfg文件來定義命令
&bull; 用默認(rèn)的timeperiods.cfg來定義監(jiān)控時(shí)間段
&bull; 用默認(rèn)的templates.cfg文件作為資源引用文件
a. templates.cfg文件

nagios主要用于監(jiān)控主機(jī)資源以及服務(wù),在nagios配置中稱為對(duì)象,為了不必重復(fù)定義一些監(jiān)控對(duì)象,Nagios引入了一個(gè)模板配置文件,將一些共性的屬性定義成模板,以便于多次引用。這就是templates.cfg的作用。

下面詳細(xì)介紹下templates.cfg文件中每個(gè)參數(shù)的含義:

XML/HTML Code復(fù)制內(nèi)容到剪貼板

  1. define contact{   

  2.         name                            generic-contact    ; 聯(lián)系人名稱   

  3.         service_notification_period     24x7               ; 當(dāng)服務(wù)出現(xiàn)異常時(shí),發(fā)送通知的時(shí)間段,這個(gè)時(shí)間段"24x7"在timeperiods.cfg文件中定義   

  4.         host_notification_period        24x7               ; 當(dāng)主機(jī)出現(xiàn)異常時(shí),發(fā)送通知的時(shí)間段,這個(gè)時(shí)間段"24x7"在timeperiods.cfg文件中定義   

  5.         service_notification_options    w,u,c,r            ; 這個(gè)定義的是“通知可以被發(fā)出的情況”。w即warn,表示警告狀態(tài),u即unknown,表示不明狀態(tài);   

  6.                                                            ; c即criticle,表示緊急狀態(tài),r即recover,表示恢復(fù)狀態(tài);   

  7.                                                            ; 也就是在服務(wù)出現(xiàn)警告狀態(tài)、未知狀態(tài)、緊急狀態(tài)和重新恢復(fù)狀態(tài)時(shí)都發(fā)送通知給使用者。   

  8.         host_notification_options       d,u,r                   ; 定義主機(jī)在什么狀態(tài)下需要發(fā)送通知給使用者,d即down,表示宕機(jī)狀態(tài);   

  9.                                                                 ; u即unreachable,表示不可到達(dá)狀態(tài),r即recovery,表示重新恢復(fù)狀態(tài)。   

  10.         service_notification_commands   notify-service-by-email ; 服務(wù)故障時(shí),發(fā)送通知的方式,可以是郵件和短信,這里發(fā)送的方式是郵件;   

  11.                                                                 ; 其中“notify-service-by-email”在commands.cfg文件中定義。   

  12.         host_notification_commands      notify-host-by-email    ; 主機(jī)故障時(shí),發(fā)送通知的方式,可以是郵件和短信,這里發(fā)送的方式是郵件;   

  13.                                                                 ; 其中“notify-host-by-email”在commands.cfg文件中定義。    

  14.         register                        0                    ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL CONTACT, JUST A TEMPLATE!   

  15.         }   

  16. define host{   

  17.         name                            generic-host    ; 主機(jī)名稱,這里的主機(jī)名,并不是直接對(duì)應(yīng)到真正機(jī)器的主機(jī)名;   

  18.                                                         ; 乃是對(duì)應(yīng)到在主機(jī)配置文件里所設(shè)定的主機(jī)名。   

  19.         notifications_enabled           1               ; Host notifications are enabled   

  20.         event_handler_enabled           1               ; Host event handler is enabled   

  21.         flap_detection_enabled          1               ; Flap detection is enabled   

  22.         failure_prediction_enabled      1               ; Failure prediction is enabled   

  23.         process_perf_data               1               ; 其值可以為0或1,其作用為是否啟用Nagios的數(shù)據(jù)輸出功能;   

  24.                                                         ; 如果將此項(xiàng)賦值為1,那么Nagios就會(huì)將收集的數(shù)據(jù)寫入某個(gè)文件中,以備提取。   

  25.         retain_status_information       1               ; Retain status information across program restarts   

  26.         retain_nonstatus_information    1               ; Retain non-status information across program restarts   

  27.         notification_period             24x7            ; 指定“發(fā)送通知”的時(shí)間段,也就是可以在什么時(shí)候發(fā)送通知給使用者。   

  28.         register                        0               ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!   

  29.         }   

  30. define host{   

  31.         name                            linux-server    ; 主機(jī)名稱   

  32.         use                             generic-host    ; use表示引用,也就是將主機(jī)generic-host的所有屬性引用到linux-server中來;   

  33.                                                         ; 在nagios配置中,很多情況下會(huì)用到引用。   

  34.         check_period                    24x7            ; 這里的check_period告訴nagios檢查主機(jī)的時(shí)間段   

  35.         check_interval                  5               ; nagios對(duì)主機(jī)的檢查時(shí)間間隔,這里是5分鐘。   

  36.         retry_interval                  1               ; 重試檢查時(shí)間間隔,單位是分鐘。   

  37.         max_check_attempts              10              ; nagios對(duì)主機(jī)的最大檢查次數(shù),也就是nagios在檢查發(fā)現(xiàn)某主機(jī)異常時(shí),并不馬上判斷為異常狀況;   

  38.                                                         ; 而是多試幾次,因?yàn)橛锌赡苤皇且粫r(shí)網(wǎng)絡(luò)太擁擠,或是一些其他原因,讓主機(jī)受到了一點(diǎn)影響;   

  39.                                                         ; 這里的10就是最多試10次的意思。   

  40.         check_command                   check-host-alive ; 指定檢查主機(jī)狀態(tài)的命令,其中“check-host-alive”在commands.cfg文件中定義。   

  41.         notification_period             24x7            ; 主機(jī)故障時(shí),發(fā)送通知的時(shí)間范圍,其中“workhours”在timeperiods.cfg中進(jìn)行了定義;   

  42.                                                         ; 下面會(huì)陸續(xù)講到。   

  43.         notification_interval           10              ; 在主機(jī)出現(xiàn)異常后,故障一直沒有解決,nagios再次對(duì)使用者發(fā)出通知的時(shí)間。單位是分鐘;   

  44.                                                         ; 如果你覺得,所有的事件只需要一次通知就夠了,可以把這里的選項(xiàng)設(shè)為0   

  45.         notification_options            d,u,r           ; 定義主機(jī)在什么狀態(tài)下可以發(fā)送通知給使用者,d即down,表示宕機(jī)狀態(tài);   

  46.                                                         ; u即unreachable,表示不可到達(dá)狀態(tài);   

  47.                                                         ; r即recovery,表示重新恢復(fù)狀態(tài)。   

  48.         contact_groups                  ts              ; 指定聯(lián)系人組,這個(gè)“admins”在contacts.cfg文件中定義。   

  49.         register                        0               ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!   

  50.         }   

  51. define host{   

  52.         name                    windows-server  ; The name of this host template   

  53.         use                     generic-host    ; Inherit default values from the generic-host template   

  54.         check_period            24x7            ; By default, Windows servers are monitored round the clock   

  55.         check_interval          5               ; Actively check the server every 5 minutes   

  56.         retry_interval          1               ; Schedule host check retries at 1 minute intervals   

  57.         max_check_attempts      10              ; Check each server 10 times (max)   

  58.         check_command           check-host-alive        ; Default command to check if servers are "alive"   

  59.         notification_period     24x7            ; Send notification out at any time - day or night   

  60.         notification_interval   10              ; Resend notifications every 30 minutes   

  61.         notification_options    d,r             ; Only send notifications for specific host states   

  62.         contact_groups          ts              ; Notifications get sent to the admins by default   

  63.         hostgroups              windows-servers ; Host groups that Windows servers should be a member of   

  64.         register                0               ; DONT REGISTER THIS - ITS JUST A TEMPLATE   

  65.         }   

  66. define service{   

  67.         name                            generic-service         ; 定義一個(gè)服務(wù)名稱   

  68.         active_checks_enabled           1                       ; Active service checks are enabled   

  69.         passive_checks_enabled          1                       ; Passive service checks are enabled/accepted   

  70.         parallelize_check               1                       ; Active service checks should be parallelized;   

  71.                                                                 ; (disabling this can lead to major performance problems)   

  72.         obsess_over_service             1                       ; We should obsess over this service (if necessary)   

  73.         check_freshness                 0                       ; Default is to NOT check service 'freshness'   

  74.         notifications_enabled           1                       ; Service notifications are enabled   

  75.         event_handler_enabled           1                       ; Service event handler is enabled   

  76.         flap_detection_enabled          1                       ; Flap detection is enabled   

  77.         failure_prediction_enabled      1                       ; Failure prediction is enabled   

  78.         process_perf_data               1                       ; Process performance data   

  79.         retain_status_information       1                       ; Retain status information across program restarts   

  80.         retain_nonstatus_information    1                       ; Retain non-status information across program restarts   

  81.         is_volatile                     0                       ; The service is not volatile   

  82.         check_period                    24x7             ; 這里的check_period告訴nagios檢查服務(wù)的時(shí)間段。   

  83.         max_check_attempts              3                ; nagios對(duì)服務(wù)的最大檢查次數(shù)。   

  84.         normal_check_interval           5                ; 此選項(xiàng)是用來設(shè)置服務(wù)檢查時(shí)間間隔,也就是說,nagios這一次檢查和下一次檢查之間所隔的時(shí)間;   

  85.                                                          ; 這里是5分鐘。   

  86.         retry_check_interval            2                ; 重試檢查時(shí)間間隔,單位是分鐘。   

  87.         contact_groups                  ts           ; 指定聯(lián)系人組   

  88.         notification_options            w,u,c,r          ; 這個(gè)定義的是“通知可以被發(fā)出的情況”。w即warn,表示警告狀態(tài);   

  89.                                                          ; u即unknown,表示不明狀態(tài);   

  90.                                                          ; c即criticle,表示緊急狀態(tài),r即recover,表示恢復(fù)狀態(tài);   

  91.                                                          ; 也就是在服務(wù)出現(xiàn)警告狀態(tài)、未知狀態(tài)、緊急狀態(tài)和重新恢復(fù)后都發(fā)送通知給使用者。   

  92.         notification_interval           10               ; Re-notify about service problems every hour   

  93.         notification_period             24x7             ; 指定“發(fā)送通知”的時(shí)間段,也就是可以在什么時(shí)候發(fā)送通知給使用者。   

  94.         register                        0                ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE!   

  95.         }   

  96. define service{   

  97.         name                            local-service           ; The name of this service template   

  98.         use                             generic-service         ; Inherit default values from the generic-service definition   

  99.         max_check_attempts              4             ; Re-check the service up to 4 times in order to determine its final (hard) state   

  100.         normal_check_interval           5             ; Check the service every 5 minutes under normal conditions   

  101.         retry_check_interval            1             ; Re-check the service every minute until a hard state can be determined   

  102.         register                        0             ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE!   

  103.         }  

b. resource.cfg文件

resource.cfg是nagios的變量定義文件,文件內(nèi)容只有一行:

$USER1$=/usr/local/nagios/libexec

其中,變量$USER1$指定了安裝nagios插件的路徑,如果把插件安裝在了其它路徑,只需在這里進(jìn)行修改即可。需要注意的是,變量必須先定義,然后才能在其它配置文件中進(jìn)行引用。

c. commands.cfg文件

此文件默認(rèn)是存在的,無需修改即可使用,當(dāng)然如果有新的命令需要加入時(shí),在此文件進(jìn)行添加即可。

XML/HTML Code復(fù)制內(nèi)容到剪貼板

  1. #notify-host-by-email命令的定義    

  2. define command{   

  3.         command_name    notify-host-by-email             #命令名稱,即定義了一個(gè)主機(jī)異常時(shí)發(fā)送郵件的命令。   

  4.         command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$                                     #命令具體的執(zhí)行方式。   

  5.         }   

  6. #notify-service-by-email命令的定義    

  7. define command{   

  8.         command_name    notify-service-by-email          #命令名稱,即定義了一個(gè)服務(wù)異常時(shí)發(fā)送郵件的命令   

  9.         command_line    /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$   

  10.         }   

  11. #check-host-alive命令的定義   

  12. define command{   

  13.         command_name    check-host-alive                 #命令名稱,用來檢測(cè)主機(jī)狀態(tài)。   

  14.         command_line    $USER1$/check_ping -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 5                

  15.                         # 這里的變量$USER1$在resource.cfg文件中進(jìn)行定義,即$USER1$=/usr/local/nagios/libexec;   

  16.                         # 那么check_ping的完整路徑為/usr/local/nagios/libexec/check_ping;   

  17.                         # “-w 3000.0,80%”中“-w”說明后面的一對(duì)值對(duì)應(yīng)的是“WARNING”狀態(tài),“80%”是其臨界值。   

  18.                         # “-c 5000.0,100%”中“-c”說明后面的一對(duì)值對(duì)應(yīng)的是“CRITICAL”,“100%”是其臨界值。   

  19.                         # “-p 1”說明每次探測(cè)發(fā)送一個(gè)包。   

  20.         }   

  21. define command{   

  22.         command_name    check_local_disk   

  23.         command_line    $USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$            #$ARG1$是指在調(diào)用這個(gè)命令的時(shí)候,命令后面的第一個(gè)參數(shù)。   

  24.         }   

  25. define command{   

  26.         command_name    check_local_load   

  27.         command_line    $USER1$/check_load -w $ARG1$ -c $ARG2$   

  28.         }   

  29. define command{   

  30.         command_name    check_local_procs   

  31.         command_line    $USER1$/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$   

  32.         }   

  33. define command{   

  34.         command_name    check_local_users   

  35.         command_line    $USER1$/check_users -w $ARG1$ -c $ARG2$   

  36.         }   

  37. define command{   

  38.         command_name    check_local_swap   

  39.         command_line    $USER1$/check_swap -w $ARG1$ -c $ARG2$   

  40.         }   

  41. define command{   

  42.         command_name    check_ftp   

  43.         command_line    $USER1$/check_ftp -H $HOSTADDRESS$ $ARG1$   

  44.         }   

  45. define command{   

  46.         comma

    當(dāng)前標(biāo)題:Linux下Nagios的安裝與配置方法
    當(dāng)前路徑:http://aaarwkj.com/article46/igeeeg.html

    成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、企業(yè)建站網(wǎng)站維護(hù)、網(wǎng)站設(shè)計(jì)公司Google、品牌網(wǎng)站制作

    廣告

    聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)
国语自产拍在线观看不卡| 日本免费一区二区三个| 99久久久国产精品日本久久区一| 丰满肥臀熟女高清区二区| 少妇人妻精品一区三区二区| 蜜臀视频网站在线观看| 中文字幕人妻出轨一区二区| 午夜在线观看成人av| 日日躁夜夜躁狠狠躁黑人| 日本高清免费播放一区二区| 青草免费在线播放视频| 欧美福利免费在线视频| 久久综合亚洲鲁鲁五月天| 欧美日韩国产91在线| 日韩二区三区在线视频| 国产精品自拍国产精品| 色婷婷区二区三区四区| 少妇又色又爽又高潮欧美| 91久久亚洲综合精品成人| 日本在线一区二区不卡视频| 国产老太婆精品久久久久| 国产精品一区二区三区四区久久| 亚洲天堂男人的天堂狠狠操 | 成人在线一区二区三区观看| 日韩美女av在线播放| 中文字幕一区二区精品人妻| 欧美日韩一区二区三区大片| 中文免费在线观看av| 久久五十路六十路熟妇中出| 邻居少妇扒开腿让我爽了一夜| 日本啪啪啪一区二区三区| 国产午夜精品一区二区三区| 亚洲日本乱码一区二区三| 亚洲一区二区精品999| 国产大学生露脸在线视频| 丰满的熟妇女教师水多| 久久日韩一区二区三区| 偷窥偷拍视频一区二区| 亚洲黄色av一区二区三区| 国产一级二级三级在线电影| 亚洲福利区一区二区三区|