Jak přidat Windows Host na Nagios Monitoring Server
Tento článek popisuje, jak monitorovat „soukromé“ služby počítačů Windows, jako je Zatížení CPU, Využití disku, Využití paměti, Služby atd. K tomu jsme požadovali nainstalovat doplněk NSClient++ na počítač Windows. Doplněk funguje jako proxy mezi počítačem Windows a Nagios a monitoruje skutečné služby prostřednictvím komunikace s pluginem check_nt. Plugin check_nt je již nainstalován na Nagios Monitoring Server, pokud jste postupovali podle našeho instalačního průvodce Nagios.
Předpokládáme, že jste již nainstalovali a nakonfigurovali Nagios server podle našich následujících průvodců.
- Jak nainstalovat Nagios 4.0.1 na RHEL/CentOS 6.x/5.xa Fedora 19/18/17
- Přidejte Linux Host na Nagios Monitoring Server
Chcete-li sledovat Počítače se systémem Windows, budete muset provést několik kroků:
- Nainstalujte doplněk NSClient++ na počítač se systémem Windows.
- Nakonfigurujte Nagios Server pro monitorování Windows Machine.
- Přidejte nové definice hostitele a služby pro monitorování počítače se systémem Windows.
- Restartujte službu Nagios.
Aby byl tento průvodce jednoduchý a snazší, několik konfigurací již bylo provedeno v instalaci Nagios.
- Definice příkazu check_nt již byla přidána do souboru command.cfg. Tento definiční příkaz používá plugin check_nt ke sledování služeb Windows.
- Šablona hostitele systému windows-server již vytvořená v souboru templates.cfg. Tato šablona umožňuje přidat nové definice hostitele Windows.
Dva výše uvedené soubory „command.cfg“ a „templates.cfg“ lze nalézt na adrese /usr/local/nagios/etc/objects/ adresář. Můžete upravit a přidat své vlastní definice, které vyhovují vašim požadavkům. Doporučuji vám však postupovat podle pokynů popsaných v tomto článku a budete úspěšně monitorovat hostitele systému Windows za méně než 20 minut.
Krok 1: Instalace agenta NSClient++ na počítač se systémem Windows
Pomocí níže uvedených pokynů nainstalujte NSClient++ Agent na Vzdáleného hostitele Windows. Nejprve si stáhněte zdrojové soubory doplňků NSClient++ 0.3.1 nejnovější stabilní verze, které naleznete pod odkazem níže.
- http://sourceforge.net/projects/nscplus/
Jakmile si stáhnete nejnovější stabilní verzi, rozbalte soubory NSClient++ do nového adresáře C:\NSClient++.
Nyní otevřete příkazový řádek MS-DOS z Úvodní obrazovky –> Spustit –> zadejte „cmd“ a stiskněte enter a přejděte do adresáře C:\NSClient++.
C:\NSClient++
Dále zaregistrujte službu NSClient++ v systému pomocí následujícího příkazu.
nsclient++ /install
Nakonec nainstalujte NSClient++ systray pomocí následujícího příkazu.
nsclient++ SysTray
Otevřete Správce služeb systému Windows a klikněte pravým tlačítkem na NSClient, přejděte na Vlastnosti a poté na kartu Přihlásit se a klikněte na zaškrtávací políčko „Povolit službě interakci s plochou“. Pokud to ještě není povoleno, zaškrtněte políčko, abyste to povolili.
Otevřete soubor NSC.INI umístěný v adresáři C:\NSClient++ a odkomentujte všechny moduly definované v sekci „moduly“, kromě CheckWMI.dll a RemoteConfiguration.dll.
[modules]
;# NSCLIENT++ MODULES
;# A list with DLLs to load at startup.
; You will need to enable some of these for NSClient++ to work.
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
; * *
; * N O T I C E ! ! ! - Y O U H A V E T O E D I T T H I S *
; * *
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
FileLogger.dll
CheckSystem.dll
CheckDisk.dll
NSClientListener.dll
NRPEListener.dll
SysTray.dll
CheckEventLog.dll
CheckHelpers.dll
;CheckWMI.dll
;
; RemoteConfiguration IS AN EXTREM EARLY IDEA SO DONT USE FOR PRODUCTION ENVIROMNEMTS!
;RemoteConfiguration.dll
; NSCA Agent is a new beta module use with care!
;NSCAAgent.dll
; LUA script module used to write your own "check deamon" (sort of) early beta.
;LUAScript.dll
; Script to check external scripts and/or internal aliases, early beta.
;CheckExternalScripts.dll
; Check other hosts through NRPE extreme beta and probably a bit dangerous! :)
;NRPEClient.dll
Odkomentujte „allowed_hosts“ v sekci „Nastavení“ a definujte IP adresu vašeho Nagios Monitoring Server nebo ponechte jej prázdné, aby se mohli připojit všichni hostitelé.
[Settings]
;# ALLOWED HOST ADDRESSES
; This is a comma-delimited list of IP address of hosts that are allowed to talk to the all daemons.
; If leave this blank anyone can access the deamon remotly (NSClient still requires a valid password).
; The syntax is host or ip/mask so 192.168.0.0/24 will allow anyone on that subnet access
allowed_hosts=172.16.27.41
Odkomentujte „port“ v části „NSClient“ a nastavte výchozí port „12489“. Ujistěte se, že jste otevřeli port „12489“ v bráně Windows Firewall.
[NSClient]
;# NSCLIENT PORT NUMBER
; This is the port the NSClientListener.dll will listen to.
port=12489
Nakonec spusťte službu NSClient++ pomocí následujícího příkazu.
nsclient++ /start
Pokud jste správně nainstalovali a nakonfigurovali, měli byste na systémové liště vidět novou ikonu ve žlutém kruhu s černým „M“ uvnitř.
Krok 2: Konfigurace serveru Nagios a přidání hostitelů Windows
Nyní se přihlaste do Nagios Server a přidejte některé definice objektů do konfiguračních souborů Nagios, abyste mohli monitorovat nový počítač Windows. Otevřete soubor windows.cfg pro úpravy pomocí editoru Vi.
[root@tecmint]# vi /usr/local/nagios/etc/objects/windows.cfg
Ukázková definice hostitele Windows již definovaná pro počítač se systémem Windows, můžete jednoduše změnit definici hostitele, jako jsou pole host_name, alias a address, aby odpovídala hodnoty vašeho počítače Windows.
###############################################################################
###############################################################################
#
HOST DEFINITIONS
#
###############################################################################
###############################################################################
Define a host for the Windows machine we'll be monitoring
Change the host_name, alias, and address to fit your situation
define host{
use windows-server ; Inherit default values from a template
host_name winserver ; The name we're giving to this host
alias My Windows Server ; A longer name associated with the host
address 172.31.41.53 ; IP address of the host
}
Následující služby jsou již přidány a povoleny v souboru windows.cfg. Pokud chcete přidat další definice služeb, které je třeba monitorovat, můžete tyto definice jednoduše přidat do stejného konfiguračního souboru. Nezapomeňte změnit host_name pro všechny tyto služby pomocí host_name definovaného ve výše uvedeném kroku.
define service{
use generic-service
host_name winserver
service_description NSClient++ Version
check_command check_nt!CLIENTVERSION
}
Add the following service definition to monitor the uptime of the Windows server.
define service{
use generic-service
host_name winserver
service_description Uptime
check_command check_nt!UPTIME
}
Add the following service definition to monitor the CPU utilization on the Windows server and generate a CRITICAL alert if the 5-minute CPU load is 90% or more or a WARNING alert if the 5-minute load is 80% or greater.
define service{
use generic-service
host_name winserver
service_description CPU Load
check_command check_nt!CPULOAD!-l 5,80,90
}
Add the following service definition to monitor memory usage on the Windows server and generate a CRITICAL alert if memory usage is 90% or more or a WARNING alert if memory usage is 80% or greater.
define service{
use generic-service
host_name winserver
service_description Memory Usage
check_command check_nt!MEMUSE!-w 80 -c 90
}
Add the following service definition to monitor usage of the C:\ drive on the Windows server and generate a CRITICAL alert if disk usage is 90% or more or a WARNING alert if disk usage is 80% or greater.
define service{
use generic-service
host_name winserver
service_description C:\ Drive Space
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90
}
Add the following service definition to monitor the W3SVC service state on the Windows machine and generate a CRITICAL alert if the service is stopped.
define service{
use generic-service
host_name winserver
service_description W3SVC
check_command check_nt!SERVICESTATE!-d SHOWALL -l W3SVC
}
Add the following service definition to monitor the Explorer.exe process on the Windows machine and generate a CRITICAL alert if the process is not running.
define service{
use generic-service
host_name winserver
service_description Explorer
check_command check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe
}
Nakonec odkomentujte soubor windows.cfg v /usr/local/nagios/etc/nagios.cfg.
[root@tecmint]# vi /usr/local/nagios/etc/nagios.cfg
Definitions for monitoring a Windows machine
cfg_file=/usr/local/nagios/etc/objects/windows.cfg
Nakonec ověřte, zda v konfiguračních souborech Nagios nejsou nějaké chyby.
[root@tecmint]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Total Warnings: 0
Total Errors: 0
Things look okay - No serious problems were detected during the pre-flight check
Pokud proces ověření vyvolá nějaké chybové zprávy, opravte tyto chyby, dokud se proces ověření nedokončí bez jakýchkoli chybových zpráv. Jakmile tyto chyby opravíte, restartujte službu Nagios.
[root@tecmint]# service nagios restart
Running configuration check...done.
Stopping nagios: done.
Starting nagios: done.
A je to. Nyní přejděte do webového rozhraní Nagios Monitoring na adrese „http://IP-adresa-vašeho-serveru/nagios“ nebo „http://FQDN/nagios“ a zadejte uživatelské jméno „nagiosadmin “ a heslo. Zkontrolujte, zda byl přidán Vzdálený hostitel systému Windows a zda je monitorován.
A je to! prozatím vám ve svém nadcházejícím článku ukážu, jak přidat Tiskárna a Přepínače na Nagios Monitoring Server. Pokud máte nějaké potíže při přidávání hostitele Windows do Nagios. Své dotazy prosím komentujte v sekci komentářů a do té doby sledujte linux-console.net, kde najdete další takové cenné články.