Nagios İzleme Sunucusuna Windows Host Nasıl Eklenir
Bu makalede, CPU yükü, Disk kullanımı, gibi Windows makinelerinin “özel” hizmetlerinin nasıl izleneceği açıklanmaktadır. >Bellek kullanımı, Hizmetler vb. Bunun için Windows makineye bir NSClient++ eklentisi kurmamız gerekiyordu. Eklenti, Windows makinesi ile Nagios arasında proxy görevi görür ve check_nt eklentisiyle iletişim kurarak gerçek hizmetleri izler. Nagios kurulum kılavuzumuzu izlediyseniz check_nt eklentisi zaten Nagios İzleme Sunucusu'nda yüklüdür.
Nagios sunucusunu zaten aşağıdaki kılavuzlarımıza göre kurup yapılandırdığınızı varsayıyoruz.
- Nagios 4.0.1'i RHEL/CentOS 6.x/5.x ve Fedora 19/18/17'ye Yükleme
- Nagios İzleme Sunucusuna Linux Ana Bilgisayarı Ekleme
Windows Makinelerini izlemek için birkaç adımı uygulamanız gerekir; bunlar:
- Windows Makinesine NSClient++ eklentisini yükleyin.
- Windows Makinesini izlemek için Nagios Sunucusunu yapılandırın.
- Windows makine izleme için yeni ana bilgisayar ve hizmet tanımları ekleyin.
- Nagios Hizmetini yeniden başlatın.
Bu kılavuzu basit ve kolay hale getirmek için Nagios kurulumunda sizin için birkaç yapılandırma zaten yapılmıştır.
- command.cfg dosyasına zaten eklenmiş bir check_nt komut tanımı. Bu tanım komutu, Windows hizmetlerini izlemek için check_nt eklentisi tarafından kullanılır.
- templates.cfg dosyasında zaten oluşturulmuş bir Windows sunucusu ana bilgisayarı şablonu. Bu şablon yeni Windows ana bilgisayar tanımları eklemenizi sağlar.
Yukarıdaki iki dosya olan “command.cfg” ve “templates.cfg” dosyaları /usr/local/nagios/etc/objects/ adresinde bulunabilir. güçlü> dizin. İhtiyaçlarınıza uygun kendi tanımlarınızı değiştirebilir ve ekleyebilirsiniz. Ancak bu makalede açıklanan talimatları izlemenizi öneririm; 20 dakikadan kısa bir sürede Windows ana makinenizi başarıyla izliyor olacaksınız.
Adım 1: NSClient++ Agent'ı Windows Makinesine Yükleme
NSClient++ Agent'ı Uzak Windows Ana Bilgisayarına yüklemek için lütfen aşağıdaki talimatları kullanın. Öncelikle aşağıdaki bağlantıda bulabileceğiniz en son kararlı sürüm NSClient++ 0.3.1 eklenti kaynak dosyalarını indirin.
- http://sourceforge.net/projects/nscplus/
En son kararlı sürümü indirdikten sonra NSClient++ dosyalarını yeni bir C:\NSClient++ dizinine açın.
Şimdi Başlat Ekranı'ndan bir MS-DOS komut istemi açın –> Çalıştır –> 'cmd' yazın ve enter tuşuna basın ve C:\NSClient++ dizinine geçin.
C:\NSClient++
Daha sonra aşağıdaki komutla NSClient++ hizmetini sisteme kaydedin.
nsclient++ /install
Son olarak aşağıdaki komutla NSClient++ sistem tepsisini yükleyin.
nsclient++ SysTray
Windows Hizmet Yöneticisi'ni açın ve NSClient'e sağ tıklayın, Özellikler'e gidin ve ardından 'Oturum Aç sekmesine gidin ve tıklayın "Hizmetin masaüstüyle etkileşime girmesine izin ver" yazan onay kutusunu işaretleyin. Zaten izin verilmiyorsa lütfen izin vermek için kutuyu işaretleyin.
C:\NSClient++ dizininde bulunan NSC.INI dosyasını açın ve modüller bölümünde tanımlanan tüm modüllerin açıklamalarını kaldırın. >CheckWMI.dll ve 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
"Ayarlar" bölümünde "allowed_hosts" ifadesinin açıklamasını kaldırın ve Nagios İzleme Sunucunuzun IP adresini tanımlayın veya Ana bilgisayarların bağlanmasına izin vermek için boş bırakın.
[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
"NSClient" bölümünde "bağlantı noktası"nın açıklamasını kaldırın ve varsayılan bağlantı noktası "12489" olarak ayarlayın. Windows Güvenlik Duvarı'nda "12489" bağlantı noktasını açtığınızdan emin olun.
[NSClient]
;# NSCLIENT PORT NUMBER
; This is the port the NSClientListener.dll will listen to.
port=12489
Son olarak NSClient++ hizmetini aşağıdaki komutla başlatın.
nsclient++ /start
Düzgün yüklenip yapılandırılmışsa, sistem tepsisinde sarı daire içinde, içinde siyah "M" bulunan yeni bir simge görmelisiniz.
Adım 2: Nagios Sunucusunu Yapılandırma ve Windows Ana Bilgisayarlarını Ekleme
Şimdi Nagios Sunucusunda oturum açın ve yeni Windows makinesini izlemek için Nagios yapılandırma dosyalarına bazı nesne tanımları ekleyin. Vi düzenleyiciyle düzenlemek için windows.cfg dosyasını açın.
[root@tecmint]# vi /usr/local/nagios/etc/objects/windows.cfg
Windows makinesi için önceden tanımlanmış örnek bir Windows ana bilgisayar tanımı; ana bilgisayar_adı, takma ad ve adres alanları gibi ana bilgisayar tanımını uygun şekilde değiştirebilirsiniz. Windows makinenizin değerleri.
###############################################################################
###############################################################################
#
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
}
Aşağıdaki hizmetler zaten windows.cfg dosyasına eklenmiş ve etkinleştirilmiştir. İzlenmesi gereken başka hizmet tanımları da eklemek isterseniz, bu tanımları aynı yapılandırma dosyasına ekleyebilirsiniz. Tüm bu hizmetler için ana bilgisayar_adı'nı yukarıdaki adımda tanımlanan ana bilgisayar_adı ile değiştirdiğinizden emin olun.
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
}
Son olarak, /usr/local/nagios/etc/nagios.cfg dosyasındaki windows.cfg dosyasının açıklamasını kaldırın.
[root@tecmint]# vi /usr/local/nagios/etc/nagios.cfg
Definitions for monitoring a Windows machine
cfg_file=/usr/local/nagios/etc/objects/windows.cfg
Son olarak Nagios yapılandırma dosyalarında herhangi bir hata olup olmadığını doğrulayın.
[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
Doğrulama işlemi herhangi bir hata mesajı verirse doğrulama işlemi herhangi bir hata mesajı olmadan tamamlanana kadar bu hataları düzeltin. Bu hataları düzelttikten sonra Nagios hizmetini yeniden başlatın.
[root@tecmint]# service nagios restart
Running configuration check...done.
Stopping nagios: done.
Starting nagios: done.
Bu kadar. Şimdi “http://Sunucunuzun-IP-adresi/nagios” veya “http://FQDN/nagios” adresindeki Nagios Monitoring Web arayüzüne gidin ve kullanıcı adı “nagiosadmin ” ve şifre. Uzak Windows Ana Bilgisayarının eklendiğini ve izlendiğini kontrol edin.
Bu kadar! şimdilik, gelecek makalemde size Nagios Monitoring Server'a Yazıcı ve Anahtarları nasıl ekleyeceğinizi göstereceğim. Nagios'a Windows ana bilgisayarını eklerken herhangi bir zorluk yaşıyorsanız. Lütfen sorularınızı yorum bölümü aracılığıyla yorum olarak belirtin, o zamana kadar bu tür değerli makalelerin devamı için linux-console.net'u takip etmeye devam edin.