Cacti+Nagios(七):Nagios監控windows(基于check_nt)

Linux安全運維 (2176) 2016-08-29 09:04:26

1、工作原理

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第1張

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第2張

Nagios服務器使用check_nt工具與客戶端程序通訊,客戶端程序NSCP使用命令來獲取本地客戶端的信息并返回給check_nt。

check_nt只是NSCP其中一項服務,Nagios還可以通過check命令(如check_http檢查WEB服務)、check_nrpe、NSCA、WMI來監控windows客戶端。

2、下載客戶端程序

下載地址:??http://nsclient.org/nscp/downloads

64位系統下載:NSCP-0.4.1.105-x64.msi

32位系統下載:NSCP-0.4.1.105-Win32.msi

3、安裝NSCP(也叫NSClient++)

設置Nagios服務器IP地址、客戶端訪問密碼(后面Nagios設置check_nt命令時要用到)和啟用各種監控服務。

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第3張

配置文件C:\Program Files\NSClient++\nsclient.ini中可以修改Allowed hosts和Password。

4、檢查服務、端口狀態

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第4張

啟動服務后netstat?-an查看使用的端口,check_nt使用12489、check_nrpe使用5666

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第5張

5、測試監控命令

(1)獲取幫助信息:

1
2
[[email protected]?~]#?cd?/usr/local/nagios/libexec
[[email protected]?libexec]#?./check_nt?-h

(2)監控運行時間:

1
2
[[email protected]?libexec]#?./check_nt?-H?10.188.1.172?-v?UPTIME?-p?12489?-s?123456
System?Uptime?-?0?day(s)?3?hour(s)?16?minute(s)?|uptime=196

-p指定端口,-s指定客戶端安裝時設置的密碼,UPTIME是監控工具。

(3)監控CPU負載?-w警告-c緊急?-l監測參數(過去5分鐘平均值,80%警告,90%緊急):

1
2
[[email protected]?libexec]#?./check_nt?-H?10.188.1.172?-v?CPULOAD?-w?80?-c?90?-l?5,80,90?-p?12489?-s?123456
CPU?Load?9%?(5?min?average)?|???'5?min?avg?Load'=9%;80;90;0;100

(4)監控C盤使用率(-l?C指定盤符):

1
2
[[email protected]?libexec]#?./check_nt?-H?10.188.1.172?-v?USEDDISKSPACE?-w?80?-c?90?-l?C?-p?12489?-s?123456
C:\?-?total:?35.00?Gb?-?used:?31.68?Gb?(91%)?-?free?3.32?Gb?(9%)?|?'C:\?Used?Space'=31.68Gb;28.00;31.50;0.00;35.00

6、配置Nagios監控

(1)修改check_nt命令

1
2
3
4
5
6
7
[[email protected]?libexec]#?cd?/usr/local/nagios/etc/objects/
[[email protected]?objects]#?vi?command.cfg
#?'check_nt'?command?definition
define?command{
????????command_name????check_nt
????????command_line????$USER1$/check_nt?-H?$HOSTADDRESS$?-p?12489?-s?123456?-v?$ARG1$?$ARG2$
????????}

(2)創建windows監控主機配置文件夾

1
[[email protected]?libexec]#?mkdir?winserver

(3)創建windows監控主機配置文件

配置文件參考/usr/local/nagios/etc/objects/windows.cfg,可以直接復制過來修改,不過太亂了,自己定義吧:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
[[email protected]?objects]#?cd?winserver
[[email protected]?winserver]#?vi?winhost_172.cfg
#定義監控主機,設置主機名(不可重復)、別名、IP地址。
define?host{
????????use?????????????windows-server
????????host_name???????winhost_172
????????alias???????????ywzhou_pc
????????address?????????10.188.1.172
????????}
#定義主機組,在winserver文件下只需要一個文件定義了主機組,其他文件就不要再定義了。
define?hostgroup{
????????hostgroup_name??windows-servers
????????alias???????????Windows?Servers
????????}
#第一部分:定義基于check_nt命令的監控服務。
#一個配置文件中的service_description不能重復
#監控NSClient++客戶端軟件版本
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????NSClient++?Version
????????check_command???????????check_nt!CLIENTVERSION
????????}
#監控在線時長
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????Uptime
????????check_command???????????check_nt!UPTIME
????????}
#監控CPU負載,超過80%報警,超過90%嚴重
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????CPU?Load
????????check_command???????????check_nt!CPULOAD!-l?5,80,90
????????}
#監控內存使用情況,超過80%報警,超過90%嚴重
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????Memory?Usage
????????check_command???????????check_nt!MEMUSE!-w?80?-c?90
????????}
#監控C盤使用情況,可以復制該組服務來監控其他磁盤
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????C:\?Drive?Space
????????check_command???????????check_nt!USEDDISKSPACE!-l?c?-w?80?-c?90
????????}
#監控系統服務狀態(是否啟動),默認的W3SVC是IIS的服務,可以復制該組服務來監控其他系統服務
#可以在任務管理器中的服務項查看哪些服務器比較重要就監控起來,比如IIS、SQLServer等。
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????W3SVC
????????check_command???????????check_nt!SERVICESTATE!-d?SHOWALL?-l?W3SVC
????????}
#監控程序狀態(是否運行),默認的Explorer.exe是桌面進程的程序,可以復制該組服務來監控其他系統服務
#可以在任務管理器中的進程項查看哪些服務器比較重要就監控起來。
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????Explorer
????????check_command???????????check_nt!PROCSTATE!-d?SHOWALL?-l?Explorer.exe
????????}
#第二部分:定義基于check?plugins的監控服務。
#安裝NSCP時啟用了Enable?common?check?plugins功能
#check?plugins是位于/usr/local/nagios/libexec下的Nagios自帶的監控插件
#監控ftp服務
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????FTP
????????check_command???????????check_ftp
????????}
#監控http服務
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????HTTP
????????check_command???????????check_http
????????}
#監控ssh服務
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????SSH
????????check_command???????????check_ssh
????????}
#監控dhcp服務
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????DHCP
????????check_command???????????check_dhcp
????????}
#監控pop3服務
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????POP
????????check_command???????????check_pop
????????}
#監控imap服務
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????IMAP
????????check_command???????????check_imap
????????}
#監控smtp服務
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????SMTP
????????check_command???????????check_smtp
????????}
#監控tcp端口,常用于監控多個網站使用不同端口時,監控端口狀態
define?service{
????????use?????????????????????generic-service
????????host_name???????????????winhost_172
????????service_description?????TCP
????????check_command???????????check_tcp!80
????????}

下面列出所有插件,其中有很多暫時沒空去研究,歡迎共同探討。

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第6張

(4)載入監控配置并重啟nagios

1
2
3
[[email protected]?winserver]#?vi?/usr/local/nagios/etc/nagios.cfg
cfg_dir=/usr/local/nagios/etc/objects/winserver
[[email protected]?winserver]#?service?nagios?restart

7、Nagios頁面操作

(1)查看Hosts主機頁面:

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第7張

(2)查看Down主機,有兩臺PING不通(關機了)

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第8張

 

(3)查看主機hv02的信息,可以設置各種開關

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第9張

(4)查看主機hv02的所有監控服務

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第10張

(5)查看所有報警的監控服務

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第11張

(6)查看所有監控服務,觀察正常狀態的狀態值status informationCacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第12張

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第13張

(7)在Cacti中通過NPC插件查看Nagios信息

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第14張

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第15張

Cacti+Nagios(七):Nagios監控windows(基于check_nt) (http://www.kzrhud.live/) Linux安全運維 第16張

THE END

發表評論

青海11选5开奖结果走势图