Debian Squeeze Nagios Monitoring
Nagios ile ne yapılabilir:
- Network servisleri denetleneme (SMTP, POP3, HTTP, NNTP, PING, vs)
- Makine kaynakları denetleneme (disk kullanımı vs )
- Otomatik log döndürme (log rotation)
- Belirtilen servisler yada makineler üzerinde belirtilen durumlarda kullanıcıya çeşitli yöntemlerle uyarı verme
- Mail , SMS , Telefon , ICQ vb yöntemlerle uyarı verebilme
- Web arayüzünden makinelerin , servislerin ,logların ayrıntılı takibi
olarak sıralanabilir. [1]
Nagios hakkında kısa bir bilgi verdikten sonra,Debian Squeeze üzerine Nagios kurulumunu ve diğer Debian Squeeze sunucuların nasıl monitor edileceği hakkında kısaca değineceğim.
İlk olarak Nagios'u monitoring yapacağımız makinaya kurulumunu yapalım ve daha sonra nagios client ile izleyeceğimiz diğer sunuculara geçelim.Kısaca bir makinamız Nagios Server ve diğer izleyeceğimiz sunucu ise Nagios Client olarak anabiliriz.
Nagios Server Kurulumu :
Debian Squeeze depolarında nagios paketlerini bulunduğu için ,direk depodan kurulum yapacağım.Kaynak koddan kurulum yapmayacağım.Kaynak kodlardan kurulum için bu adrese bakabilirsiniz.
Depodan gerekli paketleri kuralım:
Nagios Server
# apt-get install nagios3 nagios-plugins nagios-nrpe-plugin
Bu kurulum aşamasında SAMBA sizden workgroup adı isteyecektir.Öntanımlı ayarları onaylayarak geçebilirsiniz.Ayrıca Nagiosadmin için sizden parola belirlemenizi isteyecektir.İsteğinize göre parola belirleyip devam edin.
Şimdi Nagios Client olan sunucumuza gerekli kurulumları yapabiliriz.
Nagios Client
# apt-get install nagios-nrpe-server nagios-plugins
Nagios Client sunucumuzda gerekli paketleri kurduktan sonra yapılandırmalara geçelim.Nagios Client sunucumuzda Nagios Server'ımızın ip adresini verelim.Bunun " /etc/nagios/nrpe.cfg " dosyasında gerekli değişiklikleri yapalım:
# vi /etc/nagios/nrpe.cfg
Dosyamızı açtıktan "allowed_hosts= " ile başlayan satırı bulun ve ;
allowed_hosts=127.0.0.1
yerine Nagios Server'ımızın ip'sini girelim.( Örnek olarak 192.168.1.45 Nagios Server'ımın ip'si)
allowed_hosts=192.168.1.45
Şeklinde değiştirin.Yapacağımız diğer bir ayar ise eğer disk kullanımını izlemek istiyorsak gerekli değişikliği yapmalıyız.
Bunun içinde Nagios Client makinamızdaki izleyeceğimiz disk ve partition'ı belirleyip,nagios'a bunu bildirmek.
İzleyeceğiniz disk ve partition'ı yine "/etc/nagios/nrpe.cfg" dosyasında belirtelim. (disklerimizi ve partitionlarınızı 'df -h' komutuyla görebilirsiniz.) Örnek olarak 'sda5' partition'ı izlemek için gerekli ayarlar:
# vi /etc/nagios/nrpe.cfg
Dosyamızı açtıktan sonra aşağıdaki satırı bulup gerekli değişiklikleri yapalım.
command[check_hda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1
yerine
command[check_sda5]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sda5
şeklinde değiştirin.
Nagios Client tarafında gerekli ayarlamaları yaptıktan sonra 'nagios-nrpe' servisini yeniden başlatın.
# /etc/init.d/nagios-nrpe-server restart
Şimdilik Nagios Client tarafındaki işlemlerimiz bitti.Artık Nagios Server tarafındaki ayarlamalara geçelim. İlk olarak Nagios Server'a izleyeceğimiz client'ı ve bu client üzerinde izleyeceğimiz servislerin ayarlarını yapalım. Biraz önce Client ayarlarını yaparken Nagios Server'ımızın ip adresini(192.168.1.45) vermiştik,şimdi de Nagios Server'a Client'ın ip'sini ve izleyeceğimiz servisleri verelim.(Client makinamın ip'si 192.168.1.91 ve izleyeceğim servisler HTTP servisi,disk durumu,load avarage,prossesler )
Nagios Server'a bunları belirtmek için her ayrı client'a özel "/etc/nagios3/conf.d/ " dizini altında bir konfigurasyon dosyası oluşturalım.
# touch /etc/nagios3/conf.d/client1_nagios.cfg
dosyamızı oluşturduktan sonra aşağıdaki ayarları dosyaya yazıp,kaydedelim.
define host{ use generic-host host_name client1 alias client1 address 192.168.1.91 } define service{ use generic-service host_name client1 service_description HTTP-Server check_command check_http }
define service{ use generic-service host_name client1 service_description Current Load check_command check_nrpe_1arg!check_load } define service{ use generic-service host_name client1 service_description Current Users check_command check_nrpe_1arg!check_users } define service{ use generic-service host_name client1 service_description Disk Space check_command check_nrpe_1arg!check_sda5 } define service{ use generic-service host_name client1 service_description Total Processes check_command check_nrpe_1arg!check_total_procs }
Yukardaki gibi girildikten sonra Nagios servisini yeniden başlatalım.
# /etc/init.d/nagios3 restart
Artık bir client için gerekli ayarları yaptık.Şimdi ayarlarımızı ve çalışıp,çalışmadığını test edelim:
# cd /usr/lib/nagios/plugins/ # ./check_nrpe -H 192.168.1.91 -c check_users
Eğer düzgün çalışıyorsa aşağıdaki gibi bir sonuç alacaksınız :
USERS OK - 2 users currently logged in |users=2;5;10;0
Nagios kurulumunu burada tamamladık. Buarada anlatılanlardan daha fazla servis ve client ekleyebilirsiniz,hepsi size kalmış :)