自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Nagios:一款開源的電腦系統(tǒng)和網絡監(jiān)控工具(上)

運維 系統(tǒng)運維
Nagios是一款開源的電腦系統(tǒng)和網絡監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機狀態(tài),交換機路由器等網絡設置,打印機等。在系統(tǒng)或服務狀態(tài)異常時發(fā)出郵件或短信報警第一時間通知網站運維人員,在狀態(tài)恢復后發(fā)出正常的郵件或短信通知。

一、Nagios簡介

[[92461]]

Nagios是一款開源的電腦系統(tǒng)和網絡監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機狀態(tài),交換機路由器等網絡設置,打印機等。在系統(tǒng)或服務狀態(tài)異常時發(fā)出郵件或短信報警第一時間通知網站運維人員,在狀態(tài)恢復后發(fā)出正常的郵件或短信通知。

Nagios原名為NetSaint,由Ethan Galstad開發(fā)并維護至今。NAGIOS是一個縮寫形式: "Nagios Ain't Gonna Insist On Sainthood" Sainthood 翻譯為圣徒,而"Agios"是"saint"的希臘表示方法。Nagios被開發(fā)在Linux下使用,但在Unix下也工作得非常好。

主要功能

  1. 網絡服務監(jiān)控(SMTP、POP3、HTTP、NNTP、ICMP、SNMP、FTP、SSH)
  2. 主機資源監(jiān)控(CPU load、disk usage、system logs),也包括Windows主機(使用NSClient++ plugin)
  3. 可以指定自己編寫的Plugin通過網絡收集數據來監(jiān)控任何情況(溫度、警告……)
  4. 可以通過配置Nagios遠程執(zhí)行插件遠程執(zhí)行腳本
  5. 遠程監(jiān)控支持SSH或SSL加通道方式進行監(jiān)控
  6. 簡單的plugin設計允許用戶很容易的開發(fā)自己需要的檢查服務,支持很多開發(fā)語言(shell scripts、C++、Perl、ruby、Python、PHP、C#等)
  7. 包含很多圖形化數據Plugins(Nagiosgraph、Nagiosgrapher、PNP4Nagios等)
  8. 可并行服務檢查
  9. 能夠定義網絡主機的層次,允許逐級檢查,就是從父主機開始向下檢查
  10. 當服務或主機出現問題時發(fā)出通告,可通過email, pager, sms 或任意用戶自定義的plugin進行通知
  11. 能夠自定義事件處理機制重新激活出問題的服務或主機
  12. 自動日志循環(huán)
  13. 支持冗余監(jiān)控
  14. 包括Web界面可以查看當前網絡狀態(tài),通知,問題歷史,日志文件等

#p#

二、Nagios工作原理

Nagios的功能是監(jiān)控服務和主機,但是他自身并不包括這部分功能,所有的監(jiān)控、檢測功能都是通過各種插件來完成的。

啟動Nagios后,它會周期性的自動調用插件去檢測服務器狀態(tài),同時Nagios會維持一個隊列,所有插件返回來的狀態(tài)信息都進入隊列,Nagios每次都從隊首開始讀取信息,并進行處理后,把狀態(tài)結果通過web顯示出來。

Nagios提供了許多插件,利用這些插件可以方便的監(jiān)控很多服務狀態(tài)。安裝完成后,在nagios主目錄下的/libexec里放有nagios自帶的可以使用的所有插件,如,check_disk是檢查磁盤空間的插件,check_load是檢查CPU負載的,等等。每一個插件可以通過運行./check_xxx –h 來查看其使用方法和功能。

Nagios可以識別4種狀態(tài)返回信息,即 0(OK)表示狀態(tài)正常/綠色、1(WARNING)表示出現警告/黃色、2(CRITICAL)表示出現非常嚴重的錯誤/紅色、3(UNKNOWN)表示未知錯誤/深黃色。Nagios根據插件返回來的值,來判斷監(jiān)控對象的狀態(tài),并通過web顯示出來,以供管理員及時發(fā)現故障。

四種監(jiān)控狀態(tài)

再說報警功能,如果監(jiān)控系統(tǒng)發(fā)現問題不能報警那就沒有意義了,所以報警也是nagios很重要的功能之一。但是,同樣的,Nagios 自身也沒有報警部分的代碼,甚至沒有插件,而是交給用戶或者其他相關開源項目組去完成的。

Nagios 安裝,是指基本平臺,也就是Nagios軟件包的安裝。它是監(jiān)控體系的框架,也是所有監(jiān)控的基礎。

打開Nagios官方的文檔,會發(fā)現Nagios基本上沒有什么依賴包,只要求系統(tǒng)是Linux或者其他Nagios支持的系統(tǒng)。不過如果你沒有安裝apache(http服務),那么你就沒有那么直觀的界面來查看監(jiān)控信息了,所以apache姑且算是一個前提條件。關于apache的安裝,網上有很多,照著安裝就是了。安裝之后要檢查一下是否可以正常工作。

知道Nagios 是如何通過插件來管理服務器對象后,現在開始研究它是如何管理遠端服務器對象的。Nagios 系統(tǒng)提供了一個插件NRPE。Nagios 通過周期性的運行它來獲得遠端服務器的各種狀態(tài)信息。它們之間的關系如下圖所示:

Nagios 通過NRPE 來遠端管理服務

  1. Nagios 執(zhí)行安裝在它里面的check_nrpe 插件,并告訴check_nrpe 去檢測哪些服務。
  2. 通過SSL,check_nrpe 連接遠端機子上的NRPE daemon
  3. NRPE 運行本地的各種插件去檢測本地的服務和狀態(tài)(check_disk,..etc)
  4. 最后,NRPE 把檢測的結果傳給主機端的check_nrpe,check_nrpe 再把結果送到Nagios狀態(tài)隊列中。
  5. Nagios 依次讀取隊列中的信息,再把結果顯示出來。

#p#

三、實驗環(huán)境

Host Name OS IP Software
Nagios-Server CentOS release 6.3 (Final) 192.168.1.108

Apache、Php、Nagios、nagios-plugins

Nagios-Linux CentOS release 5.8 (Final) 192.168.1.111 nagios-plugins、nrpe
Nagios-Windows Windows XP 192.168.1.113  NSClient++

Server 安裝了nagios軟件,對監(jiān)控的數據做處理,并且提供web界面查看和管理。當然也可以對本機自身的信息進行監(jiān)控。

Client 安裝了NRPE等客戶端,根據監(jiān)控機的請求執(zhí)行監(jiān)控,然后將結果回傳給監(jiān)控機。

防火墻已關閉/iptables: Firewall is not running.

SELINUX=disabled

四、實驗目標

#p#

五、Nagios服務端安裝

5.1 基礎支持套件:gcc glibc glibc-common gd gd-devel xinetd openssl-devel 

 

  1. # rpm -q gcc glibc glibc-common gd gd-devel xinetd openssl-devel 

 

如果系統(tǒng)中沒有這些套件,使用yum 安裝

 

  1. # yum install -y gcc glibc glibc-common gd gd-devel xinetd openssl-devel 

5.2 創(chuàng)建nagios用戶和用戶組

 

  1. # useradd -s /sbin/nologin nagios 
  2. # mkdir /usr/local/nagios 
  3. # chown -R nagios.nagios /usr/local/nagios 

 

 

查看nagios 目錄的權限

 

  1. # ll -d /usr/local/nagios/ 

 

5.3 編譯安裝Nagios

 

  1. # wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz 
  2. # tar zxvf nagios-3.4.3.tar.gz 
  3. # cd nagios 
  4. # ./configure --prefix=/usr/local/nagios 

 

 

 

# make all

 

 

# make install

 

# make install-init

 

# make install-commandmode

 

# make install-config

 

# chkconfig --add nagios

# chkconfig --level 35 nagios on

# chkconfig --list nagios

 

5.4 驗證程序是否被正確安裝

切換目錄到安裝路徑(這里是/usr/local/nagios),看是否存在etc、bin、sbin、share、var 這五個目錄,如果存在則可以表明程序被正確的安裝到系統(tǒng)了。Nagios 各個目錄用途說明如下:

bin Nagios 可執(zhí)行程序所在目錄
etc Nagios 配置文件所在目錄
sbin Nagios CGI 文件所在目錄,也就是執(zhí)行外部命令所需文件所在的目錄
share Nagios網頁文件所在的目錄
libexec Nagios 外部插件所在目錄
var Nagios 日志文件、lock 等文件所在的目錄
var/archives Nagios 日志自動歸檔目錄
var/rw 用來存放外部命令文件的目錄

5.5 安裝Nagios 插件

 

  1. # wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz 
  2. # tar zxvf nagios-plugins-1.4.16.tar.gz 
  3. # cd nagios-plugins-1.4.16 
  4. # ./configure --prefix=/usr/local/nagios 
  5. # make && make install 

 

 

 

5.6 安裝與配置Apache和Php

Apache 和Php 不是安裝nagios 所必須的,但是nagios提供了web監(jiān)控界面,通過web監(jiān)控界面可以清晰的看到被監(jiān)控主機、資源的運行狀態(tài),因此,安裝一個web服務是很必要的。 

需要注意的是,nagios在nagios3.1.x版本以后,配置web監(jiān)控界面時需要php的支持。這里我們下載的nagios版本為nagios-3.4.3,因此在編譯安裝完成apache后,還需要編譯php模塊,這里選取的php版本為php5.4.10。

a. 安裝Apache

 

  1. # wget http://archive.apache.org/dist/httpd/httpd-2.2.23.tar.gz 
  2. # tar zxvf httpd-2.2.23.tar.gz 
  3. # cd httpd-2.2.23 
  4. # ./configure --prefix=/usr/local/apache2 
  5. # make && make install 

 

 

若出現錯誤:

則在編譯時入加 --with-included-apr 即可解決。

b. 安裝Php

 

  1. # wget http://cn2.php.net/distributions/php-5.4.10.tar.gz 
  2. # tar zxvf php-5.4.10.tar.gz 
  3. # cd php-5.4.10 
  4. # ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs 

 

 

# make && make install

 

c. 配置apache 

找到apache 的配置文件/usr/local/apache2/conf/httpd.conf 

找到:

User daemon 

Group daemon 

修改為 

User nagios 

Group nagios 

然后找到 

<IfModule dir_module> 

  DirectoryIndex index.html 

</IfModule> 

修改為 

<IfModule dir_module> 

  DirectoryIndex index.html index.php 

</IfModule> 

接著增加如下內容: 

AddType application/x-httpd-php .php 

為了安全起見,一般情況下要讓nagios 的web 監(jiān)控頁面必須經過授權才能訪問,這需要增加驗證配置,即在httpd.conf 文件最后添加如下信息: 

 

  1. #setting for nagios  
  2. ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"  
  3. <Directory "/usr/local/nagios/sbin">  
  4.      AuthType Basic  
  5.      Options ExecCGI  
  6.      AllowOverride None  
  7.      Order allow,deny  
  8.      Allow from all  
  9.      AuthName "Nagios Access"  
  10.      AuthUserFile /usr/local/nagios/etc/htpasswd             //用于此目錄訪問身份驗證的文件  
  11.      Require valid-user  
  12. </Directory>  
  13. Alias /nagios "/usr/local/nagios/share"  
  14. <Directory "/usr/local/nagios/share">  
  15.      AuthType Basic  
  16.      Options None  
  17.      AllowOverride None  
  18.      Order allow,deny  
  19.      Allow from all  
  20.      AuthName "nagios Access"  
  21.      AuthUserFile /usr/local/nagios/etc/htpasswd  
  22.      Require valid-user  
  23. </Directory>  

 

d. 創(chuàng)建apache目錄驗證文件 

在上面的配置中,指定了目錄驗證文件htpasswd,下面要創(chuàng)建這個文件:

 

  1. # /usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd david 

 

這樣就在/usr/local/nagios/etc 目錄下創(chuàng)建了一個htpasswd 驗證文件,當通過http://192.168.1.108/nagios/ 訪問時就需要輸入用戶名和密碼了。

e. 查看認證文件的內容

 

  1. # cat /usr/local/nagios/etc/htpasswd 

 

f. 啟動apache 服務

 

  1. # /usr/local/apache2/bin/apachectl start 

到這里 nagios 的安裝也就基本完成了,你可以通過web來訪問了。

 

責任編輯:奔跑的冰淇淋 來源: CSDN博客
相關推薦

2013-12-19 14:53:01

2020-12-22 10:30:47

Nagios工具監(jiān)控

2011-01-18 14:51:48

2013-12-26 09:46:43

Monitorix監(jiān)測工具

2020-12-10 10:00:59

監(jiān)控Java可視化

2024-08-16 08:31:05

2024-02-23 08:13:25

Excalidraw白板工具開源

2022-01-24 16:17:26

htop工具Linux

2021-03-26 08:07:25

LibreNMS開源監(jiān)控軟件

2014-08-06 15:25:36

LinuxNagios

2017-02-27 17:42:26

LinuxCPU工具

2015-09-23 17:39:52

Github開源工具

2010-12-01 11:14:46

snort嗅探器數據包記錄器

2017-02-16 14:00:17

CloudStatsSaaS服務器

2015-09-28 09:56:17

Github開源工具編程

2021-06-09 09:52:29

開源Pyroscope代碼

2017-06-30 16:24:40

大數據神經網絡NNabla

2013-12-06 13:50:48

開源軟件Ubuntu 13.1同步軟件

2023-10-06 14:27:10

Linux系統(tǒng)監(jiān)控

2023-06-08 08:46:37

Motrix下載工具
點贊
收藏

51CTO技術棧公眾號