1. 程式人生 > >nagios安裝及監控window主機,交換機

nagios安裝及監控window主機,交換機

allow aec 找不到 src .tar.gz 選項 cto 分析 nor


nagios安裝及監控window主機,交換機


註:因為文章是後來寫的,所以搭建時遇到的各種問題,都記不起來,反正是歷盡艱辛萬苦,不過會盡量寫下來


先上最終的結果,版本為3.2.0

技術分享圖片

以下圖是監控的主機和交換機

技術分享圖片

以下圖是監控的主機服務,和交換機運行狀態和端口流量

技術分享圖片
技術分享圖片

采用郵件報警,下圖是收到的郵件報警,有主機開關機,和服務告警的郵件。

技術分享圖片

好,下面開始從搭建服務開始


安裝前的準備

Nagios是靠各個插件來組成的,首先安裝 web 本文安裝apache,版本是

技術分享圖片

開始安裝把所有要安裝的包都放在/usr/local/src/ 目錄下

cd /usr/local/src/

tar zxvf httpd-2.4.29.tar.gz

cd httpd-2.4.29

./configure –prefix=/usr/local/apache2

此處提示缺少apr 和apr-util 然後下載了apr-1.6.3.tar.gz ,apr-util-1.6.1.tar.gz解壓縮並安裝

技術分享圖片

然後又提示缺少 lib ,pcre 等這就是源碼安裝的苦惱繼續安裝依賴庫

技術分享圖片

然後好像可以繼續安裝了

技術分享圖片

此處中間又添加了個依賴庫 pcre-devel

然後重啟apache

/usr/local/apache2/sbin/apachectl start

查看進程

技術分享圖片

查看web網頁

技術分享圖片

安裝nagios 版本3.2.0

先添加一個賬號

useradd nagios -s /sbin/nologin

然後解壓源碼安裝

技術分享圖片

安裝完成之後就會出現以下幾個文件目錄

技術分享圖片

安裝nagios插件

技術分享圖片

chown -R nagios:nagios /usr/local/nagios

改下文件所屬主

修改配置文件

修改apache的配置文件

技術分享圖片

在配置文件的最後添加以下內容

Scriptalias /nagios/cgi-bin "/usr/local/nagios/sbin"


Authtype basic

Options execcgi

Allowoverride none

Order allow,deny

Allow from all

Authname "nagios access"

Authuserfile /usr/local/nagios/etc/htpasswd

Require valid-user



Alias /nagios "/usr/local/nagios/share"


Authtype basic

Options none

Allowoverride none

Order allow,deny

Allow from all

Authname "nagios access"

Authuserfile /usr/local/nagios/etc/htpasswd

Require valid-user



Alias /pnp4nagios "/usr/local/pnp4nagios/share"


AllowOverride None

Order allow,deny

Allow from all

AuthName "Nagios Access"

AuthType Basic

AuthUserFile /usr/local/nagios/etc/htpasswd

Require valid-user


RewriteEngine On

Options FollowSymLinks

RewriteBase /pnp4nagios/

RewriteRule ^(application|modules|system) - [F,L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule .* index.php/$0 [PT,L]



最後重啟apache

/usr/local/apache2/bin/apachectl restart

最後添加web登陸賬戶

/usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd admin

登陸測試

技術分享圖片
技術分享圖片

到這一步算是基本搭建完成,但是出現了一個問題,就是打開左邊的選項的時候出現了下載界面而非跳轉,查閱資料得知是沒有安裝php

下面安裝php

技術分享圖片

需要配置apache

技術分享圖片

找到

User nobodyGroup #-1

修改成

User nagios

Group nagios

然後在配置文件中找到

DirectoryIndex index.html index.html.var

修改成如下並添加AddType application/x-httpd-php .php

如下所示:


DirectoryIndex index.html index.php

AddType application/x-httpd-php .php

然後在重啟apache服務

/usr/local/apache2/bin/apachectl restart

重新登陸 ,可以正常跳轉了

技術分享圖片

配置文件的作用具體就不寫了,百度上很多,下一步就是直接監控主機。

至於配置文件主要就是搞清它們之間的關聯關系,搞不懂就會很頭大。





這裏主要是監控的windows主機 所以客戶端要安裝一個nsclient 客戶端

技術分享圖片
技術分享圖片

一直一步步安裝就行,中間涉及到密碼的話不用設置,註意:安裝的時候一定要用管理員安裝。

安裝完之後

技術分享圖片

修改下圖的配置文件

技術分享圖片

修改三個地方1.去掉下圖* .dll前的;號

技術分享圖片


2.添加監控服務器的ip地址

技術分享圖片

3.打開監控端口

技術分享圖片

然後允許放火墻通過 ;添加入站規則,並允許通過端口12489 如下圖

技術分享圖片
技術分享圖片
技術分享圖片

添加出站規則;

技術分享圖片
技術分享圖片

最後在開啟服務


技術分享圖片


然後在監控服務器端開始配置

配置nagios.cfg 配置文件

vi /usr/local/nagios/etc/nagios.cf

技術分享圖片

在/usr/local/nagios/etc/objects/ 目錄下創建 hosts.cfg 文件(默認此文件是不存在的)

文件內從可以從模板windows.cfg_back中拷貝過去


技術分享圖片

cp windows.cfg_back hosts.cfg

然後編輯vi /usr/local/nagios/etc/objects/hosts.cfg

添加主機信息,註意:host_name必須是主機的主機名

Use windows-server 為模板templates.cfg 下的

技術分享圖片
技術分享圖片

下圖是監控的各個主機的 cpu使用和內存使用 模板用的是 generic-service

技術分享圖片

監控的命令 check_nt 是在配置文件 commands.cfg 中定義的

技術分享圖片

註意下圖的ping命令用的是 commands.cfg中的check-host-alive 命令

技術分享圖片

保存,並檢查配置文件,這裏有一條命令特別好用,如果配置文件上有什麽錯誤會直接報出來

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

技術分享圖片

然後重新啟動nagios服務,並關閉selinux 和firewal

Service nagios restart

登陸web網頁查看,可以看到監控的主機,狀態都為up

技術分享圖片

查看所有的服務 狀態也都為up

技術分享圖片

大家也許會看到 服務或者主機有一個類似紅太陽的小圖標,那麽打開它之後它會是什麽樣子呢 下圖所示

技術分享圖片

沒錯這個就是性能分析圖,比著單純的只看狀態要直觀很多,能看到各個時間段的狀態。

安裝方法如下

首先安裝圖表生成工具 rrdtool

技術分享圖片

然後在安裝pnp插件

技術分享圖片

創建默認配置文件

技術分享圖片

修改Proces_perfdata.cfg 文件

vi /usr/local/nagios/libexec/process_perfdata.pl

LOG_FILE = /usr/local/nagios/var/perfdata.log

# Loglevel 0=silent 1=normal 2=debug

LOG_LEVEL = 2

這裏將日誌級別改為2,即為debug模式


修改nagios配置文件

增加小太陽標識

修改templates.cfg 增加一個定義PNP的hosts和services

技術分享圖片

修改nagios.cfg 找到下列幾項,去掉註釋,修改信息如下

process_performance_data=1

host_perfdata_command=process-host-perfdata

service_perfdata_command=process-service-perfdata

修改commands.cfg中的下列文件

技術分享圖片

修改成如下所示

技術分享圖片

修改hosts文件 hosts主機配置和service配置

技術分享圖片
技術分享圖片

測試PNP功能

技術分享圖片


郵件報警

就這個一個簡單的配置居然浪費我兩周的時間先是用sendmail不行,然後又用自帶的mail也不行當時怎麽都找不到原因,總是報一個錯526 用戶名或密碼錯誤。不管怎麽改都不行,最後msmtp才搞定下圖是失敗的截圖,鬧心壞了

技術分享圖片

下圖是msmtp安裝方式,配置和測試

技術分享圖片

下圖的的配置文件一定要對比著配置,要不然還是會報526錯誤

技術分享圖片

收到的測試郵件

技術分享圖片

貼幾張正式報警的郵件圖片

技術分享圖片

到這算是基本上配置完成。下面開始添加局域網內的交換機的監控

配置nagios.cfg 文件,將

cfg_file=/usr/local/nagios/etc/objects/switch.cfg 前面的井號去掉,保存。

配置

vi /usr/local/nagios/etc/objects/switch.cfg

技術分享圖片

添加如下交換機配置,交換機ip和交換機名稱

技術分享圖片

添加服務配置下圖為ping的狀態服務

技術分享圖片

Web顯示結果如下

技術分享圖片

然後配置最重要也是耗費我時間最長的端口流量監控,

需要知道和配置的有

交換機的public 名稱和密碼,snmp必須開通,可以用snmpwalk命令檢測交換機snmp服務有沒有開啟snmpwalk -v 2v -c lexue123 10.5.250.5

其實中間一直在糾結./check_snmp 命令一直不能用,包括重新編輯完nagios和下載新安裝的snmp插件,最後又配置nagios配置文件等,都不能成功,後來就放棄了,check snmp功能是用來監控 硬件設備的cpu 內存,溫度等。最後噢直接都用ping來代替了。

最後要監控的是端口流量配置如下

安裝mrtg 使用yum安裝

yum -y install mrtg

創建配置文件

mkdir /usr/local/nagios/10.5.250.5mrtg

/cfgmaker --snmp-options=:::::2 [email protected] > /usr/local/nagios/10.5.250.5mrtg/switch.cfg

創建和配置存放流量圖及html頁面的文件夾,在這放到

/usr/local/nagios/share 下面,然後創建存放的文件夾

mkdir 10.5.250.5

配置switch.cfg 文件

技術分享圖片
技術分享圖片

生成流量圖

env /usr/bin/mrtg /usr/local/nagios/10.5.250.5mrtg/switch.cfg

執行三次直到沒有報錯為止

定時執行任務每兩分鐘一次

Crontab –e

技術分享圖片

生成匯總首頁

indexmaker -output=/usr/local/nagios/share/10.5.250.5/index.html -title="MainSwitch Traffic Monitoring" /usr/loc

al/nagios/10.5.250.5mrtg/switch.cfg

然後查看web流量圖

技術分享圖片

配置端口流量監控

技術分享圖片
技術分享圖片

註意 上面監控的端口流量日誌必須在下圖中存在,不然會報錯的

技術分享圖片

到此整個結束!








nagios安裝及監控window主機,交換機