網頁設計
yum install gd gd-devel
安裝指令
Gcc編譯器


圖1:利用Nagios監看Windows系統狀況示意
資料濫觞:[2]
至於Nagios供應給Linux主機的偵測Agent,則稱為NRPE,其架構示意圖與Windows主機類似,詳見圖2。


圖2:利用Nagios監看Linux系統狀況示意
資料起原:[3]
1.2. 系統架構
本文展現的系統架構,利用1部Fedora作業系統主機,同時監看Windows與Fedora主機。其系統架構與IP位址,詳見圖3。
套件名稱
最新版nagios 3.3.1 也能用
此3.06版本筆者已測試完成安裝之筆記,
請各位注意裡面的步調細節,不要LOST必然能成功
|
GD函式庫 
Server伺服器之IP 10.3.89.17。
遠端Windows主機Client A之IP 10.3.111.93。
遠端Linux主機Client B之IP 10.3.89.34。
其中Fedora主機作為Monitoring Server。

圖3:測試系統架構
以下安裝步調主要分成幾項:先安裝Nagios於Monitoring Server,接著安裝Nagios Agent 於Windows主機上,再安裝Nagios Agent於Linux主機,最後離別於3部主機上,進行相幹溝通設定,以完成監看需求。
1.3. 安裝Nagios伺服器
1.3.1. 確保系統相依套件
使用Nagios系統監看架構之安裝中,名為Nagios套件乃安裝Monitoring Server上,即本文採用的Fedora主機。而Nagios可否正常安裝與利用,其套件必須先存在於系統上,包含: Apache作為Web介面用處;GCC編譯器作為編譯Nagios套件原始碼用處;GD函式庫作為圖形顯示用處。而在Fedora系統中,以以下指令安裝套件:
表1 Nagios相依套件安裝
|
|
|
1. 安裝申明
1.1. Nagios簡述
Nagios為知名的遠端主機監看工具,為主從式架構軟體。此中主體可安裝於Linux型作業系統,包括Fedora、Ubuntu及Debian等,另亦可安裝於其他Unix like作業系統,如FreeBSD;而 Nagios偵測Agent,則可安裝於Unix like或Windows主機。詳見圖1。
利用Nagios供應給Windows系統之Agent,該Agent稱為NSClient++,連系安裝Nagios監看主機,便可把握Windows系統狀況。運作概念為,由監看主機的Nagios,呼喚本機搜檢程式 check_nt,該檢查程式透過安裝在遠端主機的代辦署理程式NSClient++,取得相幹系統資訊,以後再回傳給Nagios,並出現於Web介面上。
Glibc函式庫
|
|
Apache套件
1.3.2. Nagios安裝
Nagios過程當中,請依序履行以下步調:
.成立Nagios帳號
轉換權限為root帳號
su –l
建立名為nagios的新帳號並設定密碼
/usr/sbin/useradd –m nagios
passwd nagios
確立名為nagcmd的新群組帳號,以答應外部指令可以經過Web介面傳送,
並將系統的nagios與apache帳號,加進此群組。指令以下:
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod –a –G nagcmd nagios
/usr/sbin/usermod –a –G nagcmd apache
.下載Nagios原始檔與相幹外掛附件(Plugins)
建樹存放Nagios與Plugins的目錄,例如:
mkdir ~/downloads
cd ~/downloads
下載Nagios及其Plugins,目前最新不變版天職別為3.0.6與1.4.13,指令以下:
wget http://osdn.dl.sourceforge.net/s ... nagios-3.0.6.tar.gz
wget http://osdn.dl.sourceforge.net/s ... ugins-1.4.13.tar.gz
.下載Nagios之NRPE addon
為了讓Nagios伺服器可以監看遠端Linux主機,需要額外安裝NRPE套件。
(被監看的Linux主機亦須安裝,詳如後述)。下載體例為:
wget http://osdn.dl.sourceforge.net/s ... os/nrpe-2.12.tar.gz
.編譯與安裝Nagios
解緊縮Nagios原始檔:
cd ~/downloads
tar xzf nagios-3.0.6.tar.gz
cd nagios-3.0.6
執行Nagios安裝設定程式,並供應nagios群組名稱nagcmd作為輸入參數:
./configure --with-command-group=nagcmd
編譯Nagios原始檔:
make all
離別安裝Nagios Binary程式、初始程序init script、設定規範檔及設定外部指令寄存目次之權限,
指令劃分以下:
make install
make install-init
make install-config
make install-commandmode
.客製化設定值
Nagios安裝完成後,一併安裝的設定類型檔位於/usr/local/nagios/etc,一般而言可正常運作。
另/usr/local/nagios/etc/objects/contacts.cfg設定檔中,需將nagiosadmin改成現實領受訊息的Email帳號。詳見圖4。
 
圖4:變更Nagios訊息領受帳號
.設定Nagios Web介面
起首安裝Nagios之Web設定值到Apache conf.d目次下:
make install-webconf
替Nagios之Web介面進行身分驗證庇護,利用HTTP Basic Authentication體例:
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
此代表將系統扣問的密碼,寄存於/usr/local/nagios/etc/htpasswd.users,而使用此暗碼的帳號
為nagiosadmin。詳見圖5。
 
圖5:設定Apache Basic Authentication暗碼
接著請重新啟動Apache以套用新的設定值。
service httpd restart
.編譯與安裝Nagios之外掛附件(Plugins)
編譯與安裝Nagios之Plugins時,一樣進入下載目次,並遵照前述安裝Nagios之體式格局進行安裝:
cd ~/downloads
tar xzf nagios-plugins-1.4.13.tar.gz
cd nagios-plugins-1.4.13
編譯與安裝Nagios之Plugins。
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install
.編譯與安裝NRPE
cd ~/downloads
tar xzf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all
make install-plugin
.啟動Nagios
將Nagios辦事登錄到系統服務列表中:
chkconfig add nagios
chkconfig nagios on
檢驗Nagios之設定值是否准確:
/usr/local/nagios/bin/nagios –v /usr/local/nagios/etc/nagios.cfg
詳見圖6。


圖6:搜檢Nagios主設定檔准確性
以後請啟動Nagios。
service nagios start
.修改SELinux設定
Fedora作業系統存在SELinux (Security Enchanced Linux)機制,由於SELinux造成Nagios Web介面
”Internal Server Error”毛病訊息。是以需要將SELinux之狀態改為Permissive mode,
起首查抄目前SELinux狀態:
getenforce
並將SELinux改為Permissive mode
setenforence 0
以上的方式僅套用於本次開機情況,若想將此設定設為永遠,以避免重開機後未保存情況。
必須點竄/etc/selinux/config並重開機。另外,如果不想或不合適變更SELinux模式情況下,
則可履行以下指令,讓Nagios在SELinux的Enforcing mode進行設定。
chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/
chcon -R -t httpd_sys_content_t /usr/local/nagios/share/
.登入Nagios Web介面
此階段應可正常利用Nagios之Web介面。請使用瀏覽器登入下列URL:
http://localhost/nagios/
首先系統會要求輸入帳號/暗碼,請輸入前面htpasswd所設定的暗碼,詳見圖7。
 
圖7:Nagios Web介面登入
可看到Nagios首頁,詳見圖8。
 
圖8:Nagios Web介面首頁
.其他調劑
最後搜檢主機是不是可接管HTTP連線,如是否利用本機防火牆反對連線,若阻擋則請重新設定許可連線。
1.4. 安裝Linux主機之Nagios Agent
有關Nagios監看Linux主機,常見體式格局為使用Nagios的NRPE套件協助,另外尚需要Nagios Plugins,
相幹步驟依序以下:
.建樹Nagios帳號
轉換權限為root帳號
su –l
成立名為nagios的新帳號並設定密碼
/usr/sbin/useradd –m nagios
passwd nagios
.下載NRPE與Nagios Plugins
今朝最新版為2.12與1.4.13。指令以下:
wget http://osdn.dl.sourceforge.net/s ... os/nrpe-2.12.tar.gz
wget http://osdn.dl.sourceforge.net/s ... ugins-1.4.13.tar.gz
假定下載後寄存的目次為~/downloads。
.編譯與安裝Nagios Plugins
cd ~/downloads
tar xzf nagios-plugins-1.4.13.tar.gz
cd nagios-plugins-1.4.13
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make
make install
nagios 3.3.1裝到這裡就能夠了
.編譯與安裝NRPE
cd ~/downloads
tar xzf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all
make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd
.設定NRPE為系統辦事
如果無法編譯成功
yum -y install openssl-devel
–限定可連線之監看主機IP
點竄/etc/xinetd.d/nrpe,限定唯一設定之Nagios監看主機。
如圖1所示的10.3.89.17,主要點竄only_from設定值,將其改為:
only_from = 127.0.0.1 10.3.89.17
其中兩個IP以空白鍵區分。詳見圖12。
 
圖12:Xinetd NRPE設定
–指定NRPE欲利用之系統通信埠
點竄/etc/service,使NRPE可以接收監看主機的連線需求。
在此假定NRPE所用的通訊埠為TCP 5666,即增添下行於檔案中:
nrpe 5666/tcp # nrpe daemon
–啟動xinetd辦事
service xinetd start
由於Fedora主機可能預設無安裝xinetd套件,所以系統出現沒法辨識xinetd服務時,
請履行以下指令:
yum install xinetd
啟動辦事
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
–查抄NRPE服務是不是正常
/usr/local/nagios/libexec/check_nrpe -H localhost
若回應的訊息為NRPE及其版本資訊,即代表安裝成功。
.修改NRPE設定檔
NRPE主要設定檔為位於/usr/local/nagios/etc/nrpe.cfg,個中包括用來檢查的指令,
以下列為檢查使用者的check_users,與檢查負載的check_load指令。
-w代表Warning;-c代表Critical,離別默示訊息嚴重品級。如check_users。
若系統同時利用者到達5個,則送出Warning品級訊息;若達到10個,就送出Critical等級訊息。
詳見圖13。
 
圖13:NRPE設定檔(nrpe.cfg)設定
另外值得注意的是,有關nrpe.cfg內的指令,都是可以直接在終端機執行。若系統今朝使用者達到6人
,則當履行nrpe.cfg內的check_users設定內容的話,將會泛起Warning訊息。詳見圖14。
 
圖14:NRPE check_users指令展現
另外在command[xxxx]中,其中xxxx代表可透過chek_nrpe指令,呼叫相關查抄指令,請依序進行查抄:
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_users
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_load
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_hda1
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_total_procs
/usr/local/nagios/libexec/check_nrpe -H localhost -c check_zombie_procs
若回應預期訊息,代表功能正常;反之,回應找不到指令的毛病訊息,代表在”-c”後,
所接的指令名稱有誤,或該指令名稱,對應/usr/local/nagios/etc/nrpe.cfg的設定值有誤,
請再查抄清掃。
例如在check_hda1設定,由於NRPE預設是IDE介面硬碟機/dev/hda1,
假如系統現實利用的硬碟機,為SCSI介面的(/dev/sda1),
則請將/usr/local/nagios/etc/nrpe.cfg 的
command[check_hda1]=/usr/local/nagios/libexec/check_disk –w 20% -c 10% -p /dev/hda1
改為
command[check_sda1]=/usr/local/nagios/libexec/check_disk –w 20% -c 10% -p /dev/sda1
將/dev/hda1改為/dev/sda1。
別的command[check_hda1]改為command[check_sda1]僅為利便辨認,可自行決議是不是變更,
或改為通用名稱,如將hda1改為disk1。
1.5. Nagios伺服器與用戶端串連設定
1.5.1. Linux受監看主機連結設定
在Nagios伺服器與Linux主機用戶真個連結,採用NRPE進行資訊溝通。
當Nagios伺服器安裝NRPE後,便可利用check_nrpe指令測試,指令為:
/usr/local/nagios/libexec/check_nrpe –H 10.3.89.34
若順遂回應NRPE V2.12訊息資訊,代表測試成效正常。
另亦可以使用下列指令,檢查遠端Linux主機的利用者數量。
/usr/local/nagios/libexec/check_nrpe -H 10.3.89.34 -c check_users
修改/usr/local/nagios/etc/objects/commands.cfg,增加check_nrpe設定,詳見圖17。
 
圖17:commands設定檔設定
以類似設定Windows主機監看的體例,在/usr/local/nagios/etc/objects/增添名為linux.cfg的檔案,
詳如圖18。檔案內容與Windows主機類似。
須注意的是,在check_command後的設定值,check_nrpe!為固定的。
遠端被監看Linux主機/usr/local/nagios/etc/nrpe.cfg的搜檢指令,如check_load與check_users。
host_name名稱,重複呈現的處所,請務必設定相同。
address的IP,請設定遠端被監看Linux主機的IP位址。
 
圖18:linux.cfg設定檔設定
1.5.2. 檢查與啟動
請以下體例搜檢NRPE設定是否准確:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
以後從頭啟動Nagios,體式格局為:
service nagios restart
如果無毛病呈現,當再次檢視Nagios Web介面時,將呈現圖19之畫面。
 
圖19:Nagios監看成果
可看出Service Detail選項中,出現3台主機,離別為Linux、Windows 2000與localhost,個中前2台離別為被監看的Linux與Windows主機名稱,以及劃分在windows.cfg與linux.cfg所設定的host_name,而localhost則是Nagios安裝後,包括本機監看項目。在Linux主機項目標利用者數量,由於目前的利用者跨越5人,所以顯示Status為WARNING。
最後關於Nagios操作,圖形化介面相當簡便,功能項目亦十分直覺,利用上不成問題,安裝完成後可自行測驗考試利用。
3. 結語
本文所顯現的是,系統監看中著名的Nagios東西之安裝申明,所採用的架構為:1台Linux主機作為監看伺服器,對Windows與Linux 2台主機進行監看。文中簡介3台主機離別需要安裝與設定的項目,並且顛末筆者實際測試。依文中步調,應可正常完成簡略單純監看情況之確立。若文中有不足或讀者想進一步深切領會Nagios之額外利用,建議參考官方網站之參考手冊[4]、[5],筆者提到的許多設定,在官方手冊上亦可找到。
而在本文所介紹的架構,另有可增強之部門,如針對平安性之加強,讀者可參考Nagios官方手冊,利用SSL或SSH加密體式格局,增加Nagios伺服器與遠端主機資訊傳遞之平安,或參考筆者前幾期手藝專欄所提的 OpenVPN加密通道建樹體例,一樣可增添傳遞資料的平安防護。最後感激讀者花時間浏覽本期專欄,也期望本文對您有所幫助。
4. 參考資料
[1]Nagios官方網站, http://www.nagios.org/
[2]Nagios Monitoring Windows Machines,
http://nagios.sourceforge.net/docs/3_0/monitoring-windows.html
[3]Nagios Monitoring Linux/Unix Machines,
http://nagios.sourceforge.net/docs/3_0/monitoring-linux.html
[4]Nagios Official Document, http://nagios.sourceforge.net/docs/3_0/
[5]Nagios NRPE Official Document, http://nagios.sourceforge.net/docs/nrpe/NRPE.pdf |
|
yum install glibc glibc-common yum install gcc
|
|
yum install httpd
本文來自: