7.1構建nagios監控系統

構建nagios監控系統html

一 nagios網絡監控mysql

·Nagios簡介linux

Nagios是一款開源的免費網絡監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網絡設備;適合於對大量的服務器進行監控,判斷其負載或服務是否正常,發生異常能經過郵件、短信報警。ios

Nagios,側重於服務和性能的監測;流量監控不是他的強項,流量監控建議使用cacti.能夠繪製很是直觀的圖形;官方網站http://www.nagios.org/web

·Nagios工做結構sql

C/S模式,nagios服務器被稱爲服務端,而被它監控的服務器成爲客戶端;監控主機的功能其實都是經過執行插件程序來實現的。利用各類插件的功能來收集數據apache

B/S模式,最終以Web頁面的形式展示給管理員瀏覽器

二 nagios服務端的配置服務器

監控不一樣的服務和主機有不一樣的配置和部署網絡

·安裝所需環境包(關閉selinux)

其中mysql-devel提供了check mysql插件,爲了鏈接mysql服務器(能夠省略,之後安裝,可是要從新安裝nagios插件)

·建立運行nagios服務的用戶

·安裝nagios軟件包

1解壓並配置

解壓到/usr/src/目錄下最好,在此目錄下安裝不容易出錯

2編譯並安裝相關操做

注:

make install //安裝主程序,CGI和HTML文件

make install-init     //在/etc/rc.d/init.d安裝啓動腳本

make install-commandmode //配置目錄權限

make install-config     //安裝示例配置文件

make install-webconf //安裝nagios的web接口,會在/etc/httpd/conf.d目錄中建立nagios.conf文件。

注:若在RHEL6X32位系統中安裝nagios-cn-3.2.3.tar.bz2要先執行make clean操做,而後再執行./configure和make all等操做,不然執行make all時會報錯

3驗證是否安裝成功

切換目錄到安裝路徑(默認安裝目錄是/usr/local/nagios),看是否存在etc、bin、sbin、share、var、這五個目錄,若是存在說明程序被正確安裝到系統了

注:這五個目錄的功能

bin:nagios執行程序所在的目錄,nagios文件即爲主程序。

etc:nagios配置文件目錄,當make install-config完之後etc下面就會出現默認的配置文件。

sbin:nagios CGI文件所在目錄,這裏存放的是一些外部命令執行程序。

share:nagios網頁文件目錄,存放一些html文件。

var:nagios日誌文件、pid等文件目錄。

·安裝nagios-plugins插件

nagios-plugins是nagios官方提供的一套插件程序,nagios監控主機的功能其實都是經過執行插件程序來實現的

1解壓並配置

2編譯並安裝插件

安裝完以後會在/usr/local/nagios/libexec文件夾中多出一些文件,即全部插件命令將被安裝到/usr/local/nagios/libexec 目錄下

·修改nagios服務的配置文件

Nagios服務的配置文件有主配置文件(/usr/local/nagios/etc/nagios.cfg)、從配置文件(/usr/local/nagios/etc/objects目錄下的幾個配置文件)和/usr/local/nagios/etc/cgi.cfg (它的做用是控制相關cgi腳本)配置文件;其中經過修改主配置文件能夠調用從配置文件(默認存在的從配置文件已調用,新添加的自定義從配置文件須要手動調用)

默認存在的從配置文件包括

從配置文件的做用(主要用到的有如下幾個)

聯繫人contacts.cfg:配置告警收件人地址(郵箱或電話,通常是管理員的郵箱)

監控時間段timeperiods.cfg:7X24小時不間斷仍是週一至週五,或是自定義的其餘時間段

被監控主機和服務localhost.cfg:所須要監控的服務器,固然能夠是監控機本身;例如主機是否存活,80端口是否開,磁盤使用狀況或者自定義的服務等

監控命令commands.cfg:nagios發出的哪一個指令來執行某個監控,下載新的插件,定義新的命令,而後在配置主機和服務時能夠調用

注意:多個被監控主機能夠定義爲一個主機組,多個聯繫人能夠被定義爲一個聯繫人組

1修改nagios的主配置文件nagios.cfg

新建從配置文件(localhost.cfg配置文件就是用來配置須要監測的服務器和服務的配置文件,可是由於示例太多不方便配置,所以這裏自定義兩個配置文件分開來調用監控主機配置文件和監控服務配置文件)

最好修改一下文件的屬主和屬組爲nagios

註釋掉原來的localhost.cfg配置,添加新建的兩個配置文件

2修改nagios從配置文件

監控時間段配置文件timeperiods.cfg

定義了一個監控時間段,它的名稱是24x7(時間段的名稱,這個地方不要有空格),監控的時間是天天全天24小時

聯繫人配置文件contacts.cfg

定義了一個聯繫人,聯繫人的名稱是nagioscontact,並定義了一個聯繫人組,聯繫人組名是admins,包含一個成員nagioscontact

其中重要選項的含義爲

service_notification_period 24x7

服務出了情況通知的時間段,這個時間段就是上面在timeperiods.cfg中定義的.

host_notification_period 24x7

主機出了情況通知的時間段, 這個時間段就是上面在timeperiods.cfg中定義的

service_notification_options w,u,c,r

當服務出現w-報警(warning),u-未知(unkown),c-嚴重(critical),或者r-從異常狀況恢復正常,在這四種狀況下通知聯繫人

host_notification_options d,u,r

當主機出現d-當機(down),u-返回不可達(unreachable),r-從異常狀況恢復正常,在這3種狀況下通知聯繫人

service_notification_commands notify-service-by-email

服務出問題通知採用的命令notify- service-by-email,這個命令是在commands.cfg中定義的,做用是給聯繫人發郵件,還能夠飛信發手機短信給聯繫人,但須要安裝飛信程序。. host_notification_commands notify- host-by-email

同上,主機出問題時採用的也是發郵件和飛信的方式通知聯繫人。

email yahoon@test.com

很明顯,聯繫的人email地址

Pager 137XXXXXXXX

聯繫人接收報警信息電話

能夠將多個聯繫人組成一個聯繫人組

define contactgroup{

contactgroup_name admins //聯繫人組的名稱,一樣不能空格

alias Nagios Administrators //別名

members nagioscontact

//組的成員,來自於上面定義的聯繫人,若是有多個聯繫人則以逗號相隔

自定義配置文件,添加要監控的主機信息,主機配置文件/hosts.cfg

主機組並非必須的,這是配合nagios的監控頁面的顯示;經過簡單的複製修改就能夠定義多個主機了

自定義配置文件,添加要監控的主機的服務項目,服務配置文件services.cfg

 

其中主機名必須是主機配置文件中存在的,能夠同時配置多個監測項目

check_local_users!20!50         //監測遠程主機當前的登陸用戶數量,若是大於20用戶則報warning,若是大於50則報critical

check_local_disk!20%!10%!/     //若是可用空間低於20%會報Warning,若是可用空間低於10%則報Critical:

check_local_procs!250!400!RSZDT //監測遠程主機當前的進程總數,若是大於250進程則報warning,若是大於400進程則報critical,S(休眠)、R(運行)、Z(僵死)、D (不可中斷)、T (中止)

check_load -w 5,4,3 -c 10,6,4這個命令的意義以下

當1分鐘多於5個進程等待,5分鐘多於4個,15分鐘多於3個則爲warning狀態

當1分鐘多於10個進程等待,5分鐘多於6個,15分鐘多於4個則爲critical狀態

Check_local_swap!20%!10%        //若是交換空間低於20%會報Warning,若是可用空間低於10%則報Critical

服務組並非必須的,這是配合nagios的監控頁面的顯示

·校驗nagios配置文件的正確性

運行檢測命令,看是否報錯;若是有錯誤,根據提示排錯

三 nagios監控頁面訪問配置

·修改httpd配置文件,加載nagios頁面定義

安裝好nagios後會在apache安裝目錄中的conf.d目錄存在一個nagios.conf文件,這個文件中定義了有關訪問nagios的web頁面的定義;默認已加載,沒加載則手動加載

·添加一個訪問nagios頁面的受權用戶

用戶名必須是/usr/local/nagios/etc/cgi.cfg中定義好的(可自行修改,相關項不少,修改比較麻煩);默認定義好的用戶名是nagiosadmin

·啓動httpd服務和nagios服務並設置開機自啓動

·設置防火牆策略

注意:若是你開啓了selinux 須要配置以下二步:

chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/

chcon -R -t httpd_sys_content_t /usr/local/nagios/share/

·客戶端訪問nagios監控頁面

在客戶端瀏覽器輸入http://ip/nagios進行訪問;要求輸入用戶名和密碼(受權用戶)

登陸成功後顯示的控制檯

相關文章
相關標籤/搜索