標籤:linux 網路服務 監控主機 路由器 連絡人
一、nagios簡介
Nagios是一款開源的免費網路監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換器路由器等網路設定,印表機等。在系統或服務狀態異常時發出郵件或簡訊警示第一時間通知網站營運人員,在狀態恢複後發出正常的郵件或簡訊通知。
Nagios 可以監控的功能有:
1、監控網路服務(SMTP、POP3、HTTP、NNTP、PING等);
2、監控主機資源(處理器負荷、磁碟利用率等);
3、簡單地外掛程式設計使得使用者可以方便地擴充自己服務的檢測方法;
4、並行服務檢查機制;
5、具備定義網路分層結構的能力,用"parent"主機定義來表達網路主機間的關係,
這種關係可被用來發現和明晰主機宕機或不可達狀態;
6、當服務或主機問題產生與解決時將警示發送給連絡人(通過EMail、簡訊、使用者定義方式);
7、具備定義事件控制代碼功能,它可以在主機或服務的事件發生時擷取更多問題定位;
8、自動的日誌復原;
9、可以支援並實現對主機的冗餘監控;
10、可選的WEB介面用於查看當前的網路狀態、通知和故障曆史、記錄檔等。
二、安裝Nagios基礎支援套件和添加使用者
1).安裝套件
# yum install httpd gcc glibc glibc-common gd gd-devel xinetd openssl-devel
2).建立nagios使用者和使用者組(先進行該步驟,不然編譯nagios時會報錯)
# useradd -s /sbin/nologin nagios
# mkdir /usr/local/nagios
# chown -R nagios.nagios /usr/local/nagios
3).安裝httpd和php
yum install httpd* ##安裝Web伺服器Apache相關服務,nagios提供了web監控介面,通過web介面可 以看到被監控主機運行狀態
yum install php* ##安裝PHP相關服務
三、下載並編譯安裝Nagios
1).下載並解壓nagios
# wget http://nchc.dl.sourceforge.net/project/nagios/nagios-4.x/nagios-4.1.0/nagios-4.1.0rc1.tar.gz
# tar -zvxf nagios-4.1.0rc1.tar.gz
# cd nagios-4.1.0rc1
2).編譯安裝nagios
# ./configure --prefix=/usr/local/nagios
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/D8/wKiom1W_JwfgH8lZAAJXKvXLVpY184.jpg" title="QQ圖片20150803163135.png" alt="wKiom1W_JwfgH8lZAAJXKvXLVpY184.jpg" />
# make all ##中間如有選擇,直接A
# make install ##安裝主程式,CGI和HTML檔案
# make install-init ##在/etc/rc.d/init.d安裝啟動指令碼
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/D5/wKioL1W_K4Ggbh1nAAC85a64OFs806.jpg" title="QQ圖片20150803164226.png" alt="wKioL1W_K4Ggbh1nAAC85a64OFs806.jpg" />
# make install-config ##安裝樣本設定檔
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/70/D5/wKioL1W_K9bxffqYAAW2Y21HBf0016.jpg" title="QQ圖片20150803164349.png" alt="wKioL1W_K9bxffqYAAW2Y21HBf0016.jpg" />
# make install-commandmode ##配置目錄許可權
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/D5/wKioL1W_LAmgiU3iAADH5q6TOvo847.jpg" title="QQ圖片20150803164443.png" alt="wKioL1W_LAmgiU3iAADH5q6TOvo847.jpg" />
3).配置自啟動
# chkconfig --add nagios ##增加nagios為系統服務
# chkconfig --level 35 nagios on ##設定nagios在運行層級3、5的情況下為開啟狀態
# chkconfig --list nagios ##列出nagios服務設定詳情
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/70/DE/wKiom1XAH9qSvvy8AAGXf72Phuw324.jpg" title="QQ圖片20150804101317.png" alt="wKiom1XAH9qSvvy8AAGXf72Phuw324.jpg" />
4).驗證程式是否配置正確
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/DB/wKioL1XAI2vjiXn4AAI3fEAWmVQ688.jpg" title="QQ圖片20150804101940.png" alt="wKioL1XAI2vjiXn4AAI3fEAWmVQ688.jpg" />
四、安裝Nagios外掛程式
1).下載nagios-plugins
# wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz ##下載nagios-plugins
# tar -zxvf nagios-plugins-2.0.3.tar.gz ##解壓nagios-plugins
# cd nagios-plugins-2.0.3
2).編譯安裝nagios-plugins
# ./configure --prefix=/usr/local/nagios
# make
# make install
3).下載nagios-snmp-plugins
# wget http://nagios.manubulon.com/nagios-snmp-plugins.1.1.1.tgz
# tar -zxvf nagios-snmp-plugins.1.1.1.tgz
# cd nagios-plugins-2.0.3/
4).編譯安裝nagios-snmp-plugins
# yum install perl-CPAN ##yum安裝Perl-CPAN,CPAN是Perl軟體收藏庫,收集了大量有用的Perl模組 (modules)及其相關的檔案。nagios-snmp-plugins是一套用Perl編寫的通過SNMP 方式監控主機的外掛程式程式,因此需要先安裝perl-CPAN
# perl -MCPAN -e shell
# cpan[1]> install Net::SNMP
五、配置httpd
#vi /etc/httpd/conf/httpd.conf
1).將
User apache
Group apache
修改為如下內容:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/70/E0/wKioL1XAbbmwJN2vAAAtf1hmems797.jpg" title="QQ圖片20150804153548.png" alt="wKioL1XAbbmwJN2vAAAtf1hmems797.jpg" />
2).在如下位置添加index.php
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/F1/wKioL1XBxC2T7LeaAABG3-it3Pk783.jpg" title="QQ圖片20150805155707.png" alt="wKioL1XBxC2T7LeaAABG3-it3Pk783.jpg" />
3).配置nagios.conf
# cd nagios-4.1.0rc1/
# ls
# make install-webconf ##安裝nagios的web介面,會在/etc/httpd/conf.d目錄中建立nagios.conf 檔案
# ls /etc/httpd/conf.d
# vi /etc/httpd/conf.d/nagios.conf
將21行和38行的htpasswd.user改為htpasswd(注:也可不變更,但在下部中要加全路徑名)
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/F4/wKiom1XBui6RjhRyAAE167HZtB4134.jpg" title="QQ圖片20150805152359.png" alt="wKiom1XBui6RjhRyAAE167HZtB4134.jpg" />
4).建立nagios驗證檔案
# htpasswd -c /usr/local/nagios/etc/htpasswd admin ##建立nagios登入web介面的使用者名稱和密碼
# cat /usr/local/nagios/etc/htpasswd ##查看認證檔案的內容
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/E1/wKioL1XAerCAQ9yMAADSJaN4WPs523.jpg" title="QQ圖片20150804163221.png" alt="wKioL1XAerCAQ9yMAADSJaN4WPs523.jpg" />
5).關閉SELinux:
a、臨時關閉(不用重啟機器):
# setenforce 0 ##設定SELinux 成為permissive模式 (關閉SELinux)
# setenforce 1 ##設定SELinux 成為enforcing模式 (開啟SELinux)
b、修改設定檔需要重啟機器:
# vi /etc/selinux/config
將SELINUX=enforcing 改為SELINUX=disabled
需重啟機器
6).啟用服務並進入nagios
# systemctl start httpd.service
# systemctl start snmpd.service
# systemctl start nagios.service
開啟瀏覽器,輸入http://127.0.0.1/nagios/,再輸入前面配置的使用者名稱及密碼就進入了nagios的web介面了650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/E1/wKioL1XAf6OQT_69AALQsOtqL44423.jpg" title="QQ圖片20150804165338.png" alt="wKioL1XAf6OQT_69AALQsOtqL44423.jpg" />
六、安裝Nagios的問題
安裝後開啟hosts選項,出現
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/70/FE/wKiom1XC15-w9lfWAAEOSUT9KvA118.jpg" title="QQ圖片20150806112220.png" alt="wKiom1XC15-w9lfWAAEOSUT9KvA118.jpg" />
在上面的配置中我們使用了“htpasswd -c /usr/local/nagios/etc/htpasswd admin”來產生管理員帳號和密碼,nagios預設nagiosadmin作為我們登入的帳號和密碼,而cgi.cfg就是用來驗證該身份的。如果我們產生的管理員帳號不是nagiosadmin,驗證時就會失敗,也就會出現的錯誤。
修改如下:
# vi /usr/local/nagios/etc/cgi.cfg
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/FA/wKioL1XC3dCx501jAADvw8iE3vQ608.jpg" title="QQ圖片20150806113204.png" alt="wKioL1XC3dCx501jAADvw8iE3vQ608.jpg" />
在如上地方添加你所產生的帳號,這裡就是如上的admin,再使用systemctl restart httpd.service重啟http,OK了650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/70/FB/wKioL1XC4g7RTJR9AALZu80cWEs640.jpg" title="QQ圖片20150806115850.png" alt="wKioL1XC4g7RTJR9AALZu80cWEs640.jpg" />
本文出自 “記事本” 部落格,請務必保留此出處http://wangzhijian.blog.51cto.com/6427016/1682211
CentOS7安裝Nagios