手把手實現(xiàn)企業(yè)級開源監(jiān)控軟件cacti+nagios+ntop整合(.doc_第1頁
手把手實現(xiàn)企業(yè)級開源監(jiān)控軟件cacti+nagios+ntop整合(.doc_第2頁
手把手實現(xiàn)企業(yè)級開源監(jiān)控軟件cacti+nagios+ntop整合(.doc_第3頁
手把手實現(xiàn)企業(yè)級開源監(jiān)控軟件cacti+nagios+ntop整合(.doc_第4頁
手把手實現(xiàn)企業(yè)級開源監(jiān)控軟件cacti+nagios+ntop整合(.doc_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

手把手實現(xiàn)企業(yè)級開源監(jiān)控軟件cacti+nagios+ntop整合(圖解) 2010-09-03 11:05:48標簽:監(jiān)控 nagios cacti ntop 整合 原創(chuàng)作品,允許轉(zhuǎn)載,轉(zhuǎn)載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。/1846439/386828 此文凝聚筆者不少心血請尊重筆者勞動,轉(zhuǎn)載請注明出處。/做一名運維工程師,監(jiān)控恐怕是日常生活中必不可少的活了,在企業(yè)中的監(jiān)控,大多是用開源軟件來實現(xiàn)的,(為什么要用開源?省錢唄.呵呵) 而且開源軟件也有著非常優(yōu)秀的表現(xiàn),其中著名的有cacti,nagios,ntop,Ganglia,等等.而cacti+nagios+ntop的結(jié)合應用,能為企業(yè)做到更細微的保證。下面筆者先逐一介紹下:一、cacti的簡介網(wǎng)絡(luò)管理(如主機負載、網(wǎng)絡(luò)流量等的監(jiān)控)是系統(tǒng)管理崗工作人員日常工作的一個重要組成部分,許多廠商為此提供了各自的解決方案。早期開源網(wǎng)管軟件中比較著名的其中之一的MRTG,是一款使用perl開發(fā)的,通過SNMP協(xié)議實現(xiàn)管理工作站與設(shè)備代理進程間的通訊,以完成對設(shè)備的管理和運行狀態(tài)的監(jiān)視。MRTG安裝配置簡單、圖形界面直觀,因為廣受當時網(wǎng)絡(luò)管理人員的喜愛,也為筆者早期的網(wǎng)絡(luò)管理工作立下了汗馬功勞。但MRTG也有許多固有的缺點,如:使用文本式的數(shù)據(jù)庫,數(shù)據(jù)不能重復使用;只能按日、周、月、年來查看數(shù)據(jù);每圖只能畫兩個DS(一條線、一個塊);每取一次數(shù)據(jù)即需要繪圖一次,浪費系統(tǒng)資源;同時,它也沒有提供管理功能。有鑒于此,MRTG的作者后來另外又開發(fā)了一個工具,即rrdtool。rrdtool是一個性能優(yōu)良的數(shù)據(jù)記錄器,同時也是一個功能強大的繪圖引擎。它使用rrd的數(shù)據(jù)存儲格式,使用得數(shù)據(jù)可以重復使用;在繪圖方面,它可以定義任意時間段進行繪圖,能繪出多個DS。但它也有自己的缺點:雖然提供了強大的數(shù)據(jù)存儲及繪圖功能,但rrdtool卻沒有提供類似于MRTG中集成的數(shù)據(jù)采集功能;同時,它提供了過多的參數(shù),以至于在命令行界面使用起來極為不便;此外,rrdtool也沒有提供管理功能。于是cacti應運而生。簡單來說,Cacti就是rrdtool的一個forefront,它內(nèi)置了快速的獲數(shù)據(jù)取工具、優(yōu)秀的繪圖模板以及許多設(shè)計精良的數(shù)據(jù)獲取腳本,從而可以通過結(jié)合rrdtool強大的數(shù)據(jù)抓取、數(shù)據(jù)存儲和繪圖功能,輕松實現(xiàn)主機負載、網(wǎng)絡(luò)流量等信息的走勢圖的繪制。目前其最新的軟件版本是0.8.7g。cacti是用php語言實現(xiàn)的一個軟件,它的運行需要網(wǎng)站服務器(如apache)及PHP環(huán)境的支持。同時,cacti還需要Mysql配合PHP程序存儲一些變量數(shù)據(jù)并對變量數(shù)據(jù)進行調(diào)用,如:主機名、主機ip、snmp團體名、端口號、模板信息等變量。rrdtool的對主機負載、網(wǎng)絡(luò)流量等信息的統(tǒng)計需要通過SNMP協(xié)議實現(xiàn)。經(jīng)過SNMP抓取到的數(shù)據(jù)存儲于由rrdtool生成的rrd文件中,這些文件通常位于cacti的rra目錄中。rrdtool對數(shù)據(jù)的更新和存儲就是對rrd文件的處理,rrd文件是大小固定的歸檔文件(Round Robin Archive),它能夠存儲的數(shù)據(jù)筆數(shù)在創(chuàng)建時就已經(jīng)定義。這副圖片簡述了cacti的工作原理.Cacti的實例應用 1)網(wǎng)絡(luò)設(shè)置2)主機系統(tǒng)(1)網(wǎng)絡(luò)接口流量(進與出的帶寬)(2)監(jiān)控CPU的負載、內(nèi)存等等(3)監(jiān)控磁盤的空間、進程數(shù)等等.等等3)cacti常見的監(jiān)測對象(1)服務器資源:CPU、內(nèi)存、磁盤、進程、連接數(shù)等(2)服務器類型:WEB、Mail、FTP、數(shù)據(jù)庫、中間件(3)網(wǎng)絡(luò)接口:流量、轉(zhuǎn)發(fā)速度、丟包率(4)網(wǎng)絡(luò)設(shè)備性能、配置文件(對比與備份)、路由數(shù)(5)安全設(shè)備性能、連接數(shù)、攻擊數(shù)(6)設(shè)備運行狀態(tài):風扇、電源、溫度(7)機房運行環(huán)境:電流、電壓、溫濕度好了 簡單介紹完cacti后,下面我們一起來看下nagios.二.nagios的簡介Nagios是一款用于系統(tǒng)和網(wǎng)絡(luò)監(jiān)控的應用程序。它可以在你設(shè)定的條件下對主機和服務進行監(jiān)控,在狀態(tài)變差和變好的時候給出告警信息Nagios最初被設(shè)計為在Linux系統(tǒng)之上運行,然而它同樣可以在類Unix的系統(tǒng)之上運行 Nagios更進一步的特征包括: 1)監(jiān)控網(wǎng)絡(luò)服務(SMTP、POP3、HTTP、NNTP、PING等)2)監(jiān)控主機資源(處理器負荷、磁盤利用率等)3)簡單地插件設(shè)計使得用戶可以方便地擴展自己服務的檢測方法4)并行服務檢查機制5)具備定義網(wǎng)絡(luò)分層結(jié)構(gòu)的能力,用parent主機定義來表達網(wǎng)絡(luò)主機間的關(guān)系,這種關(guān)系可被用來發(fā)現(xiàn)和明晰主機宕機或不可達狀態(tài)6)當服務或主機問題產(chǎn)生與解決時將告警發(fā)送給聯(lián)系人(通過EMail、短信、用戶定義方式) 可以通過飛信,等方式實現(xiàn)時,既可傳遞給管理員,可高效的保證服務器的維護。7)具備定義事件句柄功能,它可以在主機或服務的事件發(fā)生時獲取更多問題定位8)自動的日志回滾9)可以支持并實現(xiàn)對主機的冗余監(jiān)控10)可選的WEB界面用于查看當前的網(wǎng)絡(luò)狀態(tài)、通知和故障歷史、日志文件等Nagios通常由一個主程序(Nagios)、一個插件程序(Nagios-plugins)和四個可選的ADDON(NRPE、NSCA、 NSClient+和NDOUtils)組成。Nagios的監(jiān)控工作都是通過插件實現(xiàn)的,因此,Nagios和Nagios-plugins是服務器端工作所必須的組件。而四個ADDON中(1)NRPE:用來在監(jiān)控的遠程Linux/Unix主機上執(zhí)行腳本插件以實現(xiàn)對這些主機資源的監(jiān)控(2)NSCA:用來讓 被監(jiān)控的遠程Linux/Unix主機主動將監(jiān)控信息發(fā)送給Nagios服務器(這在冗余監(jiān)控模式中特別要用到)(3)NSClient+:用來監(jiān)控 Windows主機時安裝在Windows主機上的組件(4)NDOUtils:則用來將Nagios的配置信息和各event產(chǎn)生的數(shù)據(jù)存入數(shù)據(jù)庫,以實現(xiàn) 這些數(shù)據(jù)的快速檢索和處理這四個ADDON(附件)中,NRPE和NSClient+工作于客戶端,NDOUtils工作于服務器端,而NSCA則需要同時安裝在服務器端和客戶端。用marion老師所繪制的一幅圖片,可清晰展示ngagios的工作原理在用一幅圖片宏觀上展示nagios在企業(yè)級應用的位置有朋友疑問,既然cacti,和nagios都是網(wǎng)絡(luò)監(jiān)控工具,選用其一不是減少很多麻煩,在這里筆者建議兩者結(jié)合使用,還要結(jié)合后文所提到的ntop,以作者的理解,簡單闡述下cacti和nagios的優(yōu)缺點:cacti:在監(jiān)控方面有良好的繪圖,cacti在流量和圖型塑造上要強于nagios,但是在故障分析上有些略遜,而且報警機制也有待完善,這時nagios就派上用場了。nagios :適合監(jiān)視大量服務器上面的大批服務是否正常, 重點并不在圖形化的監(jiān)控, 其集成的很多功能例如報警,都是 cacti 沒有或者很弱的。但在繪圖以及圖型塑造方面精細度比cacti要弱。通過兩者比較,可以很清晰的了解各自的用途。下面筆者在簡單介紹下ntop三.Ntop簡介一. MRTG基于SNMP獲取信息,對于端口的流量,MRTG能提供精確統(tǒng)計,但對于三層以上的信息則無從得知了。而這正是NTOP的強項。 NTOP能夠更加直觀地將網(wǎng)絡(luò)使用量的情況和每個節(jié)點計算機的網(wǎng)絡(luò)帶寬使用詳細情況顯示出來。NTOP是一種網(wǎng)絡(luò)嗅探器,嗅探器在協(xié)助監(jiān)測網(wǎng)絡(luò)數(shù)據(jù)傳輸、 排除網(wǎng)絡(luò)故障等方面有著不可替代的作用??梢酝ㄟ^分析網(wǎng)絡(luò)流量來確定網(wǎng)絡(luò)上存在的各種問題,如瓶頸效應或性能下降;也可以用來判斷是否有黑客正在攻擊網(wǎng)絡(luò) 系統(tǒng)。如果懷疑網(wǎng)絡(luò)正在遭受攻擊,通過嗅探器截獲的數(shù)據(jù)包可以確定正在攻擊系統(tǒng)的是什么類型的數(shù)據(jù)包,以及它們的源頭,從而可以及時地做出響應,或者對網(wǎng) 絡(luò)進行相應的調(diào)整,以保證網(wǎng)絡(luò)運行的效率和安全。二. 管理人員通過NTOP還可以很方便地確定出哪些通信量屬于某個特定的網(wǎng)絡(luò)協(xié)議、占主要通信量的是哪個主機、 各次通信的目標是哪個主機、數(shù)據(jù)包發(fā)送時間、各主機間數(shù)據(jù)包傳遞的間隔時間等。這些信息為網(wǎng)管員判斷網(wǎng)絡(luò)問題及優(yōu)化網(wǎng)絡(luò)性能,提供了十分寶貴的信息。 NTOP提供以下一些功能: 自動從網(wǎng)絡(luò)中識別有用的信息; 將截獲的數(shù)據(jù)包轉(zhuǎn)換成易于識別的格式; 對網(wǎng)絡(luò)環(huán)境中的通信失敗進行分析; 探測網(wǎng)絡(luò)環(huán)境下的通信瓶頸; 記錄網(wǎng)絡(luò)通信時間和過程; 自動識別客戶端正在使用的操作系統(tǒng); 可以在命令行和Web兩種方式下運行。 簡單介紹完ntop后,筆者在網(wǎng)上找了一張圖片,很清晰的解釋了ntop的工作位置,從工作位置也可以看出ntop的主要功能.通過筆者簡單介紹,也可以看出來ntop作為監(jiān)控工具與前兩者cacti和nagios的區(qū)別,ntop在監(jiān)控方面,它的角度是從分析網(wǎng)絡(luò)流量來確定網(wǎng)絡(luò)上存在的各種問題,說白了就類似個抓包監(jiān)控工具,只不過通過歸納繪圖實現(xiàn)更多的功能。筆者這樣解釋相信不少朋友已經(jīng)明白這三款開源界的元老級監(jiān)控軟件的各自職責,筆者建議朋友們在總結(jié)下各自的功能,達到更深刻的理解.也算筆者給朋友們留個話題,好了,接下來開始全源碼實現(xiàn)這三者的整合和應用。筆者所用的系統(tǒng)是rhel5.4版本,內(nèi)核版本號為2.6.18首先先編譯安裝cacti.在開始之前老規(guī)矩,先安裝編譯環(huán)境,要想實現(xiàn)cacti的網(wǎng)絡(luò)監(jiān)控,還要借助其他一些如mysql,httpd,php等來其原理請參照筆者上一篇博文LEMP架構(gòu),為了節(jié)省時間,筆者在這里就用yum來裝這些包了。配置好yum環(huán)境后yum install httpd php php-mysql mysql mysql-server php-snmp -y安裝完成后讓服務都啟動并調(diào)整之間的連接關(guān)系.service mysqld start# 啟動mysql服務chkconfig mysqld on #使其開機自動啟動啟動完mysql后,如果出現(xiàn)以下畫面,并能通過mysql進入,說明成功安裝。之后編輯httpd服務的配置文件,使其支持mod_status.so模塊.,只要在/etc/httpd/conf/httpd.conf的配置文件中找到 LoadModule status_module modules/mod_status.so有這一項表示已經(jīng)支持狀態(tài)檢測模塊,所以無需額外添加,直接啟動web服務即可.service httpd start #啟動http服務chkconfig httpd on #開機自動啟動httpd 服務啟動OK后,編輯vim /var/www/html/index.php在其中添加以下內(nèi)容# 保存退出用web瀏覽器訪問,如果出現(xiàn)以下畫面,則表示http支持動態(tài)php.并能與php成功連接.接著測試與mysql的連接,先給mysql設(shè)置個管理員密碼mysqladmin -uroot password 123456 #密碼設(shè)置為123456編輯剛才的web頁面vim /var/www/html/index.php把里面的內(nèi)容改為刷新剛才的web瀏覽器頁面,如果出現(xiàn)OK!字樣,則表示成功連接.下面開始安裝繪圖工具 rrdtool.具體用途請參照上文,筆者在此不過多解釋了。所有的rrdtool的安裝包如上,因為包太多,筆者就選用rpm包來安裝了.筆者將以上包的路徑放置在/root/rrdtool/ 下 其中主要用到的是rrdtool-1.2.27-3.el5.i386.rpm 和rrdtool-devel-1.2.27-3.el5.i386.rpm和rrdtool-php-1.2.27-3.el5.i386.rpm這三個包,其余的包是其他擴展功能和其他腳本語言結(jié)合的.筆者就不過多演示了.安裝以上三個包 cd /root/rrdtool/ #筆者rpm包所在的地方,可以做修改yum -y localinstall -nogpgcheck rrdtool-1.2.27-3.el5.i386.rpm yum -y localinstall -nogpgcheck rrdtool-devel-1.2.27-3.el5.i386.rpmyum -y localinstall -nogpgcheck rrdtool-php-1.2.27-3.el5.i386.rpm因網(wǎng)絡(luò)流量等信息的統(tǒng)計需要通過SNMP協(xié)議實現(xiàn),經(jīng)過SNMP抓取數(shù)據(jù)并存儲,此過程在rhel5.4上所需要的安裝包有以下幾個:因為其中有比較復雜的依賴關(guān)系,而且rhel5.4的安裝包自帶有實現(xiàn)該功能的rpm包,筆者使用yum來安裝yum install net-snmp net-snmp-libs net-snmp-utils net-snmp-devel 安裝完成后啟動snmpd服務service snmpd start 啟動snmpd服務chkconfigsnmpd on #使其開機自動啟動service snmptrapd start 啟動snmptrapd服務chkconfigsnmptrapd on #使其開機自動啟動正常啟動后用netstat -unlp 查看端口如果有以下兩項,則表示正常啟動1.配置mysql接著登錄mysql,創(chuàng)建cacti的數(shù)據(jù)庫,并為其指定cactier用戶和密碼(123456)。數(shù)據(jù)庫名字可根據(jù)需要指定,這里指定為cactidb,創(chuàng)建并授權(quán):登錄數(shù)據(jù)庫mysql -uroot -p#會提示你輸入密碼,筆者在前面設(shè)置的密碼為 123456 mysql create database cactidb;mysql GRANT all privileges ON cactidb.* TO cactierlocalhost IDENTIFIED BY 123456;mysql GRANT all privileges ON cactidb.* TO cactier IDENTIFIED BY 123456;mysql GRANT all privileges ON cactidb.* TO cactier IDENTIFIED BY 123456;#說明 筆者指定了一個網(wǎng)段的授權(quán),是將來做監(jiān)控時數(shù)據(jù)庫和監(jiān)控工具不在同一臺主機上,網(wǎng)段可根據(jù)自己需要進行授權(quán)。mysql flush privileges;2.配置SNMP (4)配置SNMP在net-snmp的主配置文件/etc/snmp/snmpd.conf中,默認的community為public,建議將public修改為您需的密碼項,筆者在此就不做修改了,使用默認密碼public接著,啟動snmp進程service snmpd restart #如果修改過snmpd.conf 則需要重啟服務呵呵,是不是等不及了,終于該到cacti的編譯安裝了,準備工作已經(jīng)全部做好,下面就開始對cacti的安裝配置首先要去cacti官網(wǎng)下載cacti的gz源碼包,目前最新的版本是0.8.7.g從官方網(wǎng)站的說明and a webserver that supports PHP such as Apache or IIS.就知道以上的準備工作是必須要做的.重要說明:如果用0.8.7g版本的cacti,在后面整合nagios時可能出現(xiàn)bug,筆者推薦用0,8.7e版本的,筆者演示用的是0.8.7g原理一樣.下載完成后就可以解壓縮了,筆者放在了/root/目錄下 cd /roottar zxvf cacti-0.8.7g.tar.gz mv cacti-0.8.7g /var/www/html/cacti#因為cacti的配置是在web頁面下進行的,所以筆者直接把cacti-0.8.7g 移至/var/www/html/cacticd /var/www/html/cactimysql -uroot -p cactidb /dev/null &#每5分鐘以cactier去抓取數(shù)據(jù)繪圖,這個時間5分鐘應該是最小間隔了,筆者不建議修改為更小值。記的要把selinux 關(guān)閉,不然不能從web頁面訪問的,關(guān)閉方法如下setenforce 0 #只是臨時關(guān)閉好了,下面就可以用web瀏覽器訪問cacti進行配置管理了。筆者所用虛擬機ip為9# IP根據(jù)自己實際情況可做相應修改從瀏覽器直接訪問以下地址 即可看到cacti配置畫面9/cacti/install/如果看到以下畫面,則可以進行之后的配置 點擊下一步。如果上面全是FOUND,則可以點擊Finish 完成,中間的路徑可能與圖片不同。Finish后就會出現(xiàn)登陸畫面用戶名admin 密碼admin 即可登陸 (第一次登陸后會強行讓修改密碼)進入后點擊graphs 會顯示流量圖如果不出現(xiàn)圖片執(zhí)行以下命令讓其手動繪圖即可.su-cactierphp /var/www/html/cacti/poller.php /dev/null 2&1exit數(shù)據(jù)部分啟動較慢,請耐心等待,如顯示如上圖片數(shù)據(jù),則成功安裝配置。#cacti的具體使用筆者不做過多介紹,有意者可去官方網(wǎng)站閱讀官方文檔。下面是源碼安裝配置nagiosNagios通常由一個主程序(Nagios)、一個插件程序(Nagios-plugins)和四個可選的ADDON(NRPE、NSCA、 NSClient+和NDOUtils)組成。Nagios的監(jiān)控工作都是通過插件實現(xiàn)的,因此,Nagios和Nagios-plugins是服務器端工作所必須的組件下面在服務端安裝Nagios和Nagios-plugins.先下載源碼包,目前官方的最新版本如下圖插件版本下載之.筆者放在了 /root/nagios目錄下nagios需要一些基礎(chǔ)支持套件才能運行,如apache,gcc,glibc,gd庫等。useradd -m nagios #添加一個名為nagios的用戶來運行nagios groupadd nagios #添加nagios用戶組,用以通過web頁面提交外部控制命令usermod -a -G nagios daemon #將運行apache用戶daemon加入nagios組cd /root/nagios #該目錄是你下載的nagios源碼包所在位置tar zxvf nagios-3.2.2.tar.gz #解壓cd nagios-3.2.2 注意下面-with-httpd-conf 的路徑,取決與你apache的,如果是yum安裝的apache,則路徑為:/configure -with-command-group=nagios -with-httpd-conf=/etc/httpd/conf/extra/#如果沒有報錯,就進行一下步驟make allmake installmake install-init make install-configmake install-commandmode #安裝完成沒有報錯開始以下配置vim /usr/local/nagios/etc/objects/contacts.cfg #修改nagiosadmin這行其中的郵件地址為你的email地址,以將報警郵件發(fā)到你的郵箱make install-webconfhtpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin#設(shè)置登陸web界面時HTTP驗證的賬號密碼如果apache是用源碼編譯安裝的話,該指令改為如下所示:#/usr/local/apache/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin下面修改httpd.conf ,筆者是yum裝的apache ,配置文件的路徑為如下所示:vim /etc/httpd/conf/httpd.conf 在空白地方添加一下兩行# nagiosdefault settingsInclude conf/extra/nagios.conf以上過程配置結(jié)束以后需要重新啟動httpd:# service httpd restart如果可以正常啟動,下面就可以開始編譯、安裝nagios-pluginsnagios的所有監(jiān)控工作都是通過插件完成的,因此,在啟動nagios之前還需要為其安裝官方提供的插件。tar zxvf nagios-plugins-1.4.15.tar.gzcd nagios-plugins-1.4.15./configure -with-nagios-user=nagios -with-nagios-group=nagiosmakemake install#下面是一些配置(1)把nagios添加為系統(tǒng)服務并將之加入到自動啟動服務隊列:chkconfig -add nagioschkconfig nagios on(2)檢查其主配置文件的語法是否正確:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg(3)如果上面的語法檢查沒有問題,接下來就可以正式啟動nagios服務了:service nagios start(4)配置selinux如果您的系統(tǒng)開啟了selinux服務,則默認為拒絕nagios web cgi程序的運行。您可以通過下面的命令來檢查您的系統(tǒng)是否開啟了selinux:getenforce如果上面命令的結(jié)果顯示開啟了selinux服務,您可以通過下面的命令暫時性的將其關(guān)閉:setenforce 0如果您想在以后完全關(guān)閉selinux,可以通過編輯/etc/sysconfig/selinux文件,將其中的selinux后面的值“force”修改為“disable”即可。#當然,您也可以通過以下方式將nagios的CGI程序運行于SELinux/targeted模式而不用關(guān)閉selinux:chcon -R -t httpd_sys_content_t /usr/local/nagios/sbinchcon -R -t httpd_sys_content_t /usr/local/nagios/share(5)通過web界面查看nagios:http:/your_nagios_IP/nagios登錄時需要指定前面設(shè)定的web認證帳號和密碼。注意:為了nagios系統(tǒng)的安全,建議您使用信息摘要強認證模式(如MD5),強制使用web的TSL/SSL安全通訊模式,并且通過訪問控制列表設(shè)定能訪問nagios的web界面的客戶端地址。登錄后看到以下畫面則表示成功安裝。#說明#3.2.2版本的nagios有個bug .安裝完在/usr/local/nagios/sbin目錄下沒有原來的statusmap.cgi執(zhí)行腳本點擊左邊的current status 中的Map會顯示找不到頁面,解決方法只能從老版本中拷貝一個statusmap.cgi到/usr/local/nagios/sbin目錄下了,并賦予執(zhí)行權(quán)限。下面編譯安裝NDOUtils,NDOUtils則用來將Nagios的配置信息和各event產(chǎn)生的數(shù)據(jù)存入數(shù)據(jù)庫,以實現(xiàn)這些數(shù)據(jù)的快速檢索和處理。一、解壓、編譯、安裝、tar zxf ndoutils-1.4b9.tar.gzcd ndoutils-1.4b9./configure -enable-mysql -with-mysql-lib=/usr/lib/mysql -with-mysql-inc=/usr/include/mysql -disable-pgsqlmakecp -v src/ndomod-3x.o,ndo2db-3x,file2sock,log2ndo /usr/local/nagios/bin#以上復制的文件中前兩項是版本相關(guān)的,即如果您的nagios主版本號是2系列,則需要拷貝名為ndomod-2x.o和ndo2db-2x的兩個文件。后兩項是通用文件,無論哪個版本都需要復制。二、為NDOUtils創(chuàng)建數(shù)據(jù)庫mysql -uroot -pmysql create database ndodb;mysql GRANT ALL PRIVILEGES ON ndodb.* TO ndouserlocalhost IDENTIFIED BY 123456;mysql flush privileges;下面兩條命令用來生成ndoutils所需要的數(shù)據(jù)庫表等,這些表默認以“nagios_”為前綴;install腳本命令必須在db子目錄內(nèi)執(zhí)行:cd db./installdb -u ndouser -p 123456 -h localhost -d ndodb其中各選項的意義如下:-u用來指定導入時所用的mysql用戶帳號-p表示前面mysql用戶的密碼-h表示mysql服務器地址,如果是localhost,則可以省略-d表示目標數(shù)據(jù)庫說明:如果與cacti整合的話,npc插件會在cacti的數(shù)據(jù)庫自動生成ndoutils所需要表,這些表均以“npc_”為前綴。后面講到整合的文章中會繼續(xù)對些做出說明。三、復制、編輯配置文件cd .cp -v config/ndo2db.cfg-sample,ndomod.cfg-sample /usr/local/nagios/etcmv /usr/local/nagios/etc/ndo2db.cfg-sample/usr/local/nagios/etc/ndo2db.cfgmv /usr/local/nagios/etc/ndomod.cfg-sample/usr/local/nagios/etc/ndomod.cfgchmod 644 /usr/local/nagios/etc/ndo*chown nagios:nagios /usr/local/nagios/etc/*chown nagios:nagios /usr/local/nagios/bin/*注:以上config目錄中的ndo2db.cfg和ndomod.cfg在ndoutils-1.4b9中是以ndo2db.cfg-sample和ndomod.cfg-sample命名的,如果您使用的是這個版本的ndoutils,請在復制時做出如上相應的修改;vim /usr/local/nagios/etc/nagios.cfg在文件中添加:broker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg此外,請確保您的/usr/local/nagios/etc/nagios.cfg中有如下行出現(xiàn),否則,請自行添加:event_broker_options=-1 /為Nagios開啟event broker四、編輯ndo2db守護進程和ndomod的配置文件vim /usr/local/nagios/etc/ndo2db.cfgsocket_type=tcpdb_servertype=mysqldb_host=localhostdb_port=3306db_name=ndodbdb_prefix=nagios_db_user=ndouserdb_pass=123456說明:i) 以上db_開頭的選項用來指定連接數(shù)據(jù)庫的屬性;ii)其默認用來接收數(shù)據(jù)的方式為Unix域套接字,這里修改成了TCP套接字;同時,ndomod.cfg配置文件中指定的輸出方式也應該做相應的修改;接下來我們?nèi)ゾ庉媙domod的配置文件,為其指定數(shù)據(jù)的輸出方式和輸出目標主機:vim /usr/local/nagios/etc/ndomod.cfgoutput_type=tcpsocketoutput=五、啟動ndo2db守護進程/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg建議此時查看系統(tǒng)日志(/var/log/messages)中是否有錯誤出現(xiàn)。如果此時Nagios進程已啟動,則需要停止并重新啟動nagios:# killall -SIGHUP nagios# rm -f /usr/local/nagios/var/nagios.lock# /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg可進入nagios的web管理頁面查看log,如果出現(xiàn)以下字樣,則表示正常運行。說明:i)此處停止Nagios必須通過向Nagios發(fā)送SIGHUP信號的方式進行;ii)建議此時查看nagios日志文件中是否表明ndomod的模塊加載是否正常,以及其是否能正常連接到data sink;查看日志,可以使用如下命令實現(xiàn):# tail -30 /usr/local/nagios/var/nagios.log排錯信息:i) 如果ndomod模塊沒能正常加載的話,建議重新檢查nagios的配置文件中是否添加了所需的broker module條目;ii) 同時,如果ndomod沒有正常連接到data sin,建議查看ndo2db.cfg文件中關(guān)于mysql連接項目的指定是否正確;iii)確認一下在編譯NDOUtils時是否指定了關(guān)于mysql庫文件位置的選項;好了 nagios已經(jīng)成功安裝,下面編譯、安裝ntop在官網(wǎng)找了副圖片,簡單的介紹了ntop的工作流程。圖片右邊顯示的是目前官方最新的ntop版本 為4.0.1下載之1、下載安裝所需要的環(huán)境:需要事先下載并安裝GeoIP和GetIP-devel兩個rpm包;yum -y -nogpgcheck localinstall GeoIP-*.el5.i386.rpm接著是ettercap相關(guān)的rpm包(ettercap,ettercap-common,需要下載,這里沒指定具體的版本號,你可以根據(jù)自己的實際情況進行安裝):yum -y -nogpgcheck localinstall ettercap-*.rpm而后安裝開發(fā)環(huán)境,尤其是以下幾個rpm包:yum install libpcap libpcap-devel gdbm gdbm-devel zlib zlib-devel2、安裝ntopuseradd -M -s /sbin/nologin -r ntoptar zxvf ntop-4.0.1.tar.gzcd ntop-4.0.1./autogen.shmakemake installchown -R ntop:ntop /usr/local/share/ntopchown -R ntop:root /usr/local/var/ntop3、配置并啟動ntop首先為ntop的admin用戶設(shè)置密碼:ntop -A接下來啟動ntop:ntop -i eth0 -d -L -u ntop使之開機自動啟動:echo ntop -i eth0 -d -L -u ntop & /dev/null /etc/rc.d/rc.local用web頁面訪問http:/yourIP:3000 如果出現(xiàn)以下?lián)Q面 則表示運行正常下面是對這三者的整合.把nagios和ntop 整合到cacti中先讓cacti支持插件功能筆者在上文所安裝的cacti版本為0.8.7g,支持插件的補丁就選用cacti-plugin-0.8.7g-PA-v2.8.tar.gz下載后進行解壓縮tar zxvf cacti-plugin-0.8.7g-PA-v2.8.tar.gz cd cacti-plugin-archcp -R * /var/www/html/cacti/ mysql -uroot -p cactidb pa.sqlpatch -p1 -N cacti-plugin-0.8.7g-PA-v2.8.diff打完補丁后圖片有時不會顯示,這是需要修改下/var/www/html/cacti/include目錄下的config.php文件修改$url_path后面的值:$url_path = /cacti/;修改完成直接web頁面登陸,http:/yourIP/cac

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論