您好,登錄后才能下訂單哦!
Nagios是一款開源的免費網絡監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網絡設置,打印機等。在系統或服務狀態異常時發出郵件或短信報警第一時間通知網站運維人員,在狀態恢復后發出正常的郵件或短信通知。
(1) 在ip為172.25.0.3主機中安裝nagios
# tar jxf nagios-cn-3.2.3.tar.bz2
# yum install -y gd-devel // ./configure時需要gd
#cd nagios-cn-3.2.3
# ./configure
# useradd -M -d /usr/local/nagios -G nagcmd nagios //創建nagios用戶,指定家目錄/usrlocal/nagios,指定用戶組nagcmd。
# usermod -G nagcmd apache // 將apache加到和nagios同一個組(nagcmd) 中
# make all
這時編譯完畢提示make install-init、make install-commandmode、make installconfig\make install-webconf等四項make命令,依次執行畢。
# htpasswd /usr/local/nagios/etc/htpasswd.users nagiosadmin //修改nagios登錄密碼
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg //檢查nagios配置是否正確
# /etc/init.d/nagios start
在瀏覽器中輸入172.25.0.3/nagios,出現nagios的web界面。
nagios這時還不能使用,還要安裝nagios-plungin。
# /etc/init.d/httpd start
# tar zxf nagios-plugins-2.1.1.tar.gz
#cd nagios-plugins-2.1.1
#yum install openssl-devel
#./configure --with-nagios-user=nagios --with-nagios-group=nagios //以nagios組和nagios用戶安裝
#make && make install
#chown nagios.nagios /usr/local/nagios/libexec/* -R
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
#/etc/init.d/nagios reload
在/usr/local/nagios/etc/中,編輯nagios.cfg:
在cfg_file=/usr/local/nagios/etc/objects/temlates.cfg下>面加入兩行:
cfg_file=/usr/local/nagios/etc/objects/hosts.cfg
cfg_file=/usr/local/nagios/etc/objects/services.cfg
并將下兩行的localhost.cfg注釋
在/usr/local/nagios/etc/objects/中,
#cp localhost.cfg hosts.cfg
#cp localhost.cfg services.cfg // 創建主機和服務配置文件
在hosts.cfg中,僅保留一個host和hostgroup,并適當修改。在services.cfg中,保留一個servicegroup,并適當修改。
監控指令是調用/usr/local/nagios/libexec里面的check文件實現>的。比如,在該目錄下
#./check_disk -w 20 -c 10 // 檢測存儲空間,低于20%時警告,低于10%時告警通知。
在/usr/local/nagios/etc/objects/中,有幾個cfg文件:
command.cfg用來配置services.cfg的check命令;
templates.cfg是模板配置,包含最基本的配置如監控間隔,報警閾值等;
timeperiod.cfg是監控時間配置;
contacts.cfg是聯系人配置,設置郵件發送。
重啟nagios。
(2) 監控遠程主機
我們接下來在172.25.0.3(server3)中監控172.25.0.2(server2)主機。
nagios監控采集依賴數據庫,因此在server2的mysql中,創建nagios用戶。
在server3中
#/usr/local/nagios/libexec/check_mysql -H 172.25.0.2 -u nagios -p nagios
會顯示一些信息,說明能夠調用server2的mysql。
或者
#mysql -h 172.25.0.2 -u nagios -p nagios
能進入nagios用戶的數據庫。
在command.cfg中,加入check_mysql模塊:
define command{
command name check_mysql
command_line $USER1$/check_mysql -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$
}
在services.cfg中加入check_mysql模塊:
在hosts.cfg 中加入添加server2的host模塊。
define host{
use linux-server
host-name server2.example.com
alias Slave
parents 172.25.0.3
address 172.25.0.2
icon_p_w_picpath server.gif
statusmap_p_w_picpath server.gd2
2d_coords 400.100
3d_coords 400.100.100
}
重啟nagios。
(3) nrpe被動監控
至此nagios監控還是主動式監控。要提高效率需要被監控主機向監控機提供信息,即被動式監控。可以通過nrpe實現。
在server2上,解壓nagioss-plugins-2.1.1.tar.gz和nrpe-2.15.tar.gz
安裝openssl-devel
編譯安裝nagios-plugins。
nrpe依賴xinetd,因此安裝xinetd。
編譯安裝nrpe
修改/etc/xinetd/nrpe,將only from后面的ip改為172.25.0.3.
修改/etc/services,在tcpmux上一行加入
nrpe 5666/tcp
依次運行下列make指令
make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd
啟動xinetd服務
#scp /usr/local/nagios/libexec/check_nrpe 172.25.0.3:/usr/local/nagios/libexec
在server3中,
#chown nagios.nagios check_nrpe
#./check_nrpe -H 172.25.0.3 //顯示nrpe版本號
#./check_nrpe -H 172.25.0.3 -c check_disk //通過nrpe調用172.25.0.2主機的check_disk
依次在command.cfg,services.cfg中加入check_nrpe模塊。重啟nagios服務
這樣nrpe被動監控搭建成功!
(4)告警通知
nagios監控發現異常后會通過郵件方式通知。
在server3中的command.cfg中修改為自己的郵箱地址即可。
重啟nagios。
設置自己郵箱白名單,將root@172.25.0.3添加到白名單,這樣nagios有告警就會向郵箱發送郵件。
另一種通用多元化的通知方式:110云告警
登陸www.onealert.com 注冊帳號,掃描二維碼綁定微信。按照網頁>文檔說明安裝配置110云告警插件。告警方式有郵件,微信,電話,
短信等。
至此,nagios監控搭建完畢 !
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。