Tescilli eklentileri kullanarak Nagios'un yeteneklerini geliştirin. Nagios'un kolay kurulumu Nagios kullanma örneği
Nagios açık kaynaklı bir bilgi sistemleri izleme programıdır. Ürün, izleme sistemleri için pratik olarak bir standarttır. Aşağıdakilere izin verir (dahil):
- çeşitli işletim sistemlerine (Windows, Linux, AIX, Solaris, vb.) sahip ana bilgisayarları (CPU yükü, disk kullanımı, günlükler vb.) izleyin;
- ağ hizmetlerini kontrol etmek (SMTP, POP3, HTTP, SSH, vb.);
- herhangi bir programlama dilinde (Shell, C++, Perl, Python, PHP, C#, vb.) ek uzantı modülleri (eklentiler) bağlayın - modüllerin mimarisi açık olmalıdır), hizmetleri kontrol etmek için kendi yöntemlerinizi kullanın;
- sistemlerin paralel kontrollerini gerçekleştirmek (performansı artırmak için);
- e-posta, SMS mesajları vb. kullanımında sorun olması durumunda uyarı göndermek;
- hizmet veya ana bilgisayar etkinliklerine otomatik olarak yanıt verin.
Nagios'u yükleme
Nagios, hem kaynak kodu hem de çeşitli Linux klonları için hazırlanmış paketler halinde kuruluma uygun bir Açık Kaynak projesidir. Kaynak kodlardan kurulumun hazırlanan paketlere göre daha güncel bir versiyona sahip olduğu açıktır.
Hazırlanan paketlerden kurulum, işletim sisteminin ilgili versiyonunun kurallarına göre gerçekleştirilir. Örneğin, Ubuntu için komut şuna benzer:
apt-get nagios2'yi yükle
Bu, çalışması için gerekli tüm kitaplıkların kurulumunu garanti eder ve sıradan kullanıcılar için önerilen en basit yöntemdir.
Ubuntu'ya hızlı bir şekilde program yükleme prosedürü, web sitesindeki dokümantasyon bölümünde (http://nagios.sourceforge.net/docs/3_0/quickstart-ubuntu.html) açıklanmaktadır. Kaynak kodlardan kurulumun ardından gerekli eklentilerin ve eklentilerin kurulumunun yapılması gerektiğine dikkat edin.
Kurulum tamamlandıktan sonra http://localhost/nagios/ sayfasını açarak programın çalışmasını kontrol edebilirsiniz (sayfayı uzak bir bilgisayardan açarsanız localhost yerine Nagios sunucu adını kullanmalısınız). Yetkilendirme parametreleri istendiğinde, önceki adımlarda bu hesap için atadığınız nagiosadmin adını ve şifreyi girmelisiniz.
İncirde. Şekil 7.14 program sayfalarından birini göstermektedir - Nagios tarafından kontrol edilen küçük bir sistemin yapısı (diyagram Nagios'ta otomatik olarak oluşturulmuştur).
Pirinç. 7.14.
Nagios'taki ağ şeması
Nagios'un mantığı hakkında biraz
Nagios şartlı olarak iki parça şeklinde temsil edilebilir: bir sunucu (kurulumu aslında önceki alt bölümde tartışılmıştı) ve bir istemci, yani bir aracının yardımıyla veya kurulumu olmadan kontrol edilen bir sistem.
İşletim sistemlerine yüklenen farklı aracı sürümleri vardır. Linux tabanlı sistemler için en yaygın kullanılan program NRPE'dir (bu eklentinin bağlantısı resmi Nagios web sitesindedir - http://www.nagios.org/) ve Windows bilgisayarlar için - NSClient++ (http://trac. çıplaknuns.org /nscp/).
- Not
Geçmişte, Windows için ilk istemci NPRE programının bir çeşidiydi. Uyumluluk nedeniyle NSClient++, NPRE'de kullanılan protokolü korur. İstemci ayarlarında, seçeneklerden birinin veya her ikisinin kullanımını belirtebilirsiniz (örneğin bazı eklentiler, istemcinin belirli bir sürümü için geliştirilmiştir). Lütfen bazı durumlarda NPRe'nin daha fazla kontrol sağladığını unutmayın; örneğin, komut dosyalarının kontrollü sistemin kendisinde yürütülmesini yapılandırmak için kolayca kullanılabileceğini unutmayın.
Okuyucunun dikkatini, her istemci için yapılandırmanın aşağıdaki bölümlerde anlatıldığı gibi yapılandırılması gerektiğine çekiyoruz.
İstemcilerin yardımıyla işin aktif izlenmesi gerçekleşir: sunucu, istemcideki ayarlarla belirtilen komutu başlatır ve alınan verileri analiz eder. Ayrıca müşterinin inisiyatifinde sunucuya veri gönderildiği durumlarda pasif çalışma modu da mümkündür. Örneğin SNMP tuzakları bu şekilde işlenir.
Daha önce de belirtildiği gibi, istemciden bilgi almak için Nagios sunucusunda özel komutlar (veya programlar) başlatılır. Nagios terimleriyle bu komutlara genellikle eklentiler denir.
- Not
Eklentileri internette bulmak kolaydır: Nagios web sitesinde SourceForge.net'teki projelere bir bağlantı vardır, http://www eklenti değişim sitesini kullanabilirsiniz. Monitoringexchange.org/ ve diğer kaynaklar.
İzleme sisteminin bunları kullanabilmesi için, bu tür komutların özel bir yapılandırma dosyasında (komutlar.cfg) açıklanması gerekir. Nagios terimlerindeki bu açıklamalara kontrol komutları denir.
Komutun açıklamasına ek olarak, izleme sisteminin hangi sistemleri kontrol edeceğini, kontrol komutunu ne sıklıkta çalıştıracağını, kullanımına ara verilmesinin gerekli olup olmadığını (örneğin belirli günlerde çalıştırılmaması) bilmesi gerekir. hafta içinde veya günün belirli saatlerinde vb.) Nagios'taki bu tür ayarlar kümesine genellikle hizmet adı verilir ve bunlar, kontrollü sistemin parametrelerini açıklayan bir dosyada ayrı bir blokla tanımlanır. Hizmette çok sayıda parametre bulunduğundan (yaklaşık bir buçuk düzine) ve bunların çoğu genellikle tekrarlandığından, şablonlarda yinelenen parçaları tanımlamak gelenekseldir ve doğrudan hizmet açıklamasında yalnızca böyle bir şablonu işaret etmek yeterlidir (şablon açıklamaları şablonlar.cfg dosyasında saklanır). Lütfen şablonların iç içe yerleştirmeye izin verdiğini unutmayın: bazı parametreler ayrı bir şablona ayrılabilir ve diğer açıklamalarda kullanılabilir.
İzlenen her sistem Nagios konfigürasyonunda tanımlanmalıdır. Kolaylık sağlamak için bu, sunucu başlatıldığında genel yapılandırmaya dahil edilen ayrı dosyalarda (cihaz türüne göre) yapılır. Başlangıçta, bu dosyalara olan bağlantılar "yönlere göre" yorumlanır; bu nedenle, herhangi bir cihaz sınıfını izlemeye başlamanız gerekiyorsa, önce nagios.cfg dosyasının ilgili satırındaki "#" sembolünü kaldırmalı ve ardından bir sistem açıklama bloğunu uygun dosyaya kopyalayın.
Sonuç olarak Nagios, izlenen sistemlerde belirli komutları periyodik olarak yürütür, sonuçları toplar ve kritik bir olay meydana geldiğinde operatörleri bilgilendirir. İzleme sonuçları kaydedilebilir (varsayılan olarak performans verileri saklanmaz) ve analiz için grafiksel olarak sunulabilir ("Nagios'ta grafik oluşturma" bölümüne bakın).Nagios ayrıca olaylar meydana geldiğinde yürütülecek komutları atamanıza da olanak tanır. Ortaya çıkan sorunları otomatik olarak giderebilirsiniz.
Sistem birçok bilgisayarı ve cihazı kontrol edecekse, bunları gruplandırmak uygundur. Nagios'ta bilgisayar (cihaz) ve hizmet grupları oluşturabilirsiniz. Örneğin sunuculardaki tüm servislerin durumunu takip etmeniz gerekiyorsa bu sistemlerin adlarını içeren bir grup oluşturmalısınız. Ve örneğin, birkaç fiziksel sistemde çalışan DNS ad çözümleme hizmetinin durumunu kontrol etmek istiyorsanız, bu durumda hizmet için bir grup oluşturmak uygundur: durumunu görmek yeterli olacaktır. DNS hizmetlerinin tüm bilgisayarlarda çalıştığından emin olmak için tüm grubun normal şekilde çalışmasını sağlayın. Bu şekilde yönetim ve izleme ayarlarını basitleştirebilirsiniz.
Genel konfigürasyon ayarları arasında, belirli olayların meydana gelmesi durumunda programın mesaj göndereceği operatörlerin parametrelerini de not ediyoruz. Nagios'ta bireysel operatörler gruplar halinde birleştirilebilir ve belirli türdeki mesajları belirli bir uzman grubuna gönderecek şekilde yapılandırılabilir. Ayrıca zaman aralıklarını da özelleştirebilirsiniz. Bunlar, örneğin hafta içi ve hafta sonları farklı kontrol türlerini uygulamak, yöneticileri bilgilendirmenin farklı yolları (örneğin, gündüzleri e-postayla ve geceleri çağrı cihazıyla) vb. uygulamak için kullanılabilir.
Uyarılar yükseltilebilir: Tekrarlanan olaylar durumunda hiyerarşideki bir sonraki uzmana bir uyarı gönderilebilir.
Nagios yapılandırma dosyalarının yapısı
Standart Nagios yapılandırma dosyalarının bir listesi tabloda verilmiştir. 7.1.
Tablo 7.1.
Nagios yapılandırma dosyalarının listesi
Dosya adı |
Amaç |
Temel yapılandırma ayarları dosyası. Nagios yöneticisinin adını ve adresini, sistem başlangıcında içe aktarılan yapılandırma dosyalarına bağlantıları içerir |
|
Kaynak açıklama dosyası. Güvenliği artırmak amacıyla Nagios komutlarının gerçek konumunu son kullanıcıdan gizlemek için eşanlamlılar içerir |
|
Web sunucusu ayarları parametreleri. Bu dosyada ek Nagios kullanıcıları ve onlara verilen erişim hakları açıklanmaktadır |
|
Klasör nesneleri vb. |
Nagios başlatıldığında konfigürasyona aktarılan ayrı dosyaların bulunduğu klasörler. Bu klasörler nagios.cfg dosyasında açıklanmaktadır. |
Nagios komutlarının açıklaması
Nagios komutları, komutlar.cfg dosyasında açıklanmıştır (varsayılan yol /usr/local/nagios/etc/object/commands.cfg).
Uygulamada, commands.cfg dosyası genellikle yürütülebilir dosyanın konumunun, Nagios tarafından kullanılacak adının ve başlangıç satırı parametrelerinin belirtilmesini gerektirir. Varsayılan olarak, kurulu sistemin yapılandırma dosyası, tipik doğrulama komutlarının bazı açıklamalarını zaten içerir (ping kontrolleri - check_ping, http sunucu kontrolleri - check_http ve diğerleri). Bu örnekleri kullanarak kendi doğrulama ekiplerinizi kolayca oluşturabilirsiniz, ancak bunlar genellikle hemen hemen her kontrol seçeneği için internette kolayca bulunabilen hazır geliştirmeleri kullanırlar. Aşağıda, ping komutunu kullanarak bir ana bilgisayarın erişilebilirliğini kontrol eden en basit komutun açıklamasına bir örnek verilmiştir:
Bu açıklama, check-host-alive adlı bir komut oluşturur; yürütülebilir dosya, kurulu Nagios yardımcı programlarından check_ping komutudur. Dolar işareti içindeki karakterler kullanılan değişkenleri gösterir. Nagios açısından bunlar, çalışma zamanında değerlerle değiştirilen makrolardır. Genellikle makroların farklı bir tanımına alışkın olduğumuz için bu kitapta bu adlara değişkenler adını vereceğiz. $hostaddress$ geleneksel olarak test edilen sistemin adıyla çağrıldığında değiştirilir ve $arg1$, $arg2$ vb. - sırayla hizmet açıklamasında belirtilen argümanlarla değiştirilir. w ve c tuşları uyarı (w) veya hata (c) durumunu oluşturmak için kullanılacak değerleri tanımlar. Kural olarak, mutlak veya göreceli değerleri (veya her ikisini de) belirtebilirsiniz: tipik bir konfigürasyonda, örneğin w parametresi %3000.0.80 olarak belirtilir. Son anahtar (-p), ping komutunun beş araştırma paketi göndermesi gerektiğini belirtir.
Nagios Hizmetleri
Hizmetler genellikle, izlenen her sistem türü için yapılandırma dosyalarında ayrı ayrı açıklanır (bu tür dosyalar, nagios.cfg dosyasındaki cgf_file=... yönergeleri kullanılarak genel Nagios yapılandırmasına aktarılır). Yapılandırma dosyalarının oluşturulması şablonların açıklamalarıyla başlar, ardından ana bilgisayarların açıklamaları ve ardından hizmetlerin açıklamaları gelir.
Hizmet açıklamasının artık şablonlardaki ortak değerleri tekrarlaması gerekmiyor, dolayısıyla tipik bir hizmet tanımı şuna benzer:
Bu örnekte Bellek Kullanımı adı verilen bir hizmet, winserver olarak tanımlanan ana bilgisayar için genel hizmet şablonundaki ayarları kullanır. Bir komut olarak hizmet, memuse ve -w 80 -c 90 komut satırı parametreleriyle check_nt'yi çalıştırır (ikinci parametreler, kullanılan belleğin hangi dönüş değerinin kritik olarak kabul edilmesi gerektiğini - %90 ve bunun için durumun uyarı olarak ayarlanması gerektiğini belirtir) - %80 ile 90 arasında; parametreler "!" sembolüyle ayrılmış olarak listelenir.
Genellikle aynı komut aynı tipteki cihazları kontrol etmek için kullanılabilir. Bu durumda, servis açıklamasında bu tür tüm cihazları virgülle ayırarak listelemek yeterlidir:
Hizmetlere yönelik bağımlılıkları tanımlayabilirsiniz. Bu “ekstra” uyarıları gizlemek için yapılır. Örneğin, bazı sistemler yönlendiriciden sonra yerel ağda bulunuyorsa, bunların bu cihaza bağımlılığını belirleyebilirsiniz. Bu yönlendiricinin arızalanması durumunda arkasında bulunan tüm cihazlara erişilemeyeceği açıktır. Bir bağımlılığın yapılandırılması, bir arıza durumunda, anahtarın çalışması geri yüklenene kadar bağımlı cihazların kullanılamamasıyla ilgili uyarıların gizlenmesine ve bunlara karşılık gelen hizmetlerin durumunun kontrol edilmemesine olanak tanır.
Nagios'ta izlenen sistemlerin açıklaması
Kolaylık sağlamak için, farklı türdeki kontrollü sistemler genellikle farklı konfigürasyon dosyalarında açıklanır. Kullanılan tipik konfigürasyon dosyalarının bir listesi usr/local/nagios/etc/nagios.cfg dosyasında verilmiştir, bazı dosyalara yorum eklenmiştir. Dolayısıyla, ağdaki anahtarları kontrol etmeniz gerekiyorsa #cfg_file=/usr/local/nagios/etc/objects/switch.cfg vb. satırın açıklamasını kaldırın.
Ana bilgisayar açıklamasının kendisi (windows.cfg veya switch.cfg veya yazıcı.cfg vb. dosyasında yer alacaktır) bu durumda minimum olarak şu şekilde görünebilir:
Ana bilgisayar açıklamasına, sistem arızası durumunda gerçekleştirilecek eylemleri belirleyecek iki parametre ekleyebilirsiniz:
Nagios check-host-alive komutunu yürütecek ve ana bilgisayar durumunda bir değişiklik tespit edilir edilmez sunucu yeniden başlatma programı başlayacaktır. Bu şekilde, örneğin kontrollü sunucularda durdurulan hizmetleri başlatabilir, sistemleri yeniden başlatabilirsiniz vb.
Analiz kolaylığı için ana bilgisayarlar gruplar halinde birleştirilebilir. Bunu yapmak için yapılandırma dosyasındaki grubu aşağıdaki gibi tanımlamanız gerekir:
Hizmetlerde olduğu gibi, ana bilgisayarlar için de bazı sistemlerin diğerlerine olan bağımlılıklarını tanımlayabilirsiniz.
Zamanlama parametrelerinin açıklaması
Zaman parametreleri çeşitli konfigürasyonlarda kullanılır: ana bilgisayarların açıklamalarında (izlemenin yapılması gereken dönem ve mesajların gönderilmesi gereken dönem), hizmetler ve kişiler (mesajların ana bilgisayar ve hizmet tarafından gönderilebileceği dönemler). Yeni bir dönem tanımlamanın söz dizimi /usr/local/nagios/etc/objects/timeperiods.cfg dosyasında yer alan örneklerden kolaylıkla anlaşılmaktadır.
Açıklamada şablona bir isim verilmesi ve içinde yer alan zaman aralıklarının satır satır listelenmesi gerekmektedir. Ayrıca haftanın gün isimlerini, ayları ve seri numaralarını (ayın son/ilk Pazartesi) kullanabilirsiniz. Zaman aralıkları virgülle ayrılmış olarak listelenebilir. Gerekirse, bir şablondan, başka bir şablonda açıklanan dönemleri, hariç tutma yönergesini ve ardından bir zaman dönemleri listesini (virgülle ayrılmış) kullanarak hariç tutabilirsiniz.
Nagios'un yerleşik kontrol komutlarını kullanma
Nagios ve eklentilerin standart kurulumuyla birlikte, sistemleri kontrol etmek için kullanılabilecek bir dizi komut (eklenti) içerir. Bunların bir listesi tabloda verilmiştir. 7.2.
Tablo 7.2.
Nagios eklentilerinin listesi
Yarar |
Amaç |
Apt-get komutlarını kullanarak Linux sistem güncellemelerini izleme. Uygun şekilde yapılandırılırsa güncelleme işlemini başlatmanıza olanak tanır |
|
Breezecom Wi-Fi sinyal gücü izleme |
|
Bu eklenti, SSH protokolünü kullanarak uzaktaki bir sistemde komutları çalıştırmanıza olanak tanır |
|
CLAMD (antivirüs programı) ile uzak ana bilgisayar arasındaki bağlantıyı kontrol etme |
|
Linux kümesindeki ana bilgisayarların durumunu kontrol etme |
|
Ağdaki DHCP sunucularının kullanılabilirliğini kontrol etme |
|
Ana bilgisayardaki DNS hizmetinin çalışmasını kontrol etme (dig komutunu kullanarak) |
|
Disk alanı kullanımını kontrol etme (kendi ve takılı diskler) |
|
SMB protokolü aracılığıyla bağlanan disklerin kullanım hacimlerinin kontrol edilmesi (bunlar genellikle Windows sistemlerindeki disklerdir) |
|
Nslookup kullanarak DNS sunucusunu kontrol etme |
|
Yapılandırma eklentisi: çalıştırıldığında açıklanan sayısal parametreyi ve dizeyi döndürür |
|
Dosya oluşturma sürelerini kontrol etme |
|
Flexlm lisans yöneticisi hizmetini kontrol etme |
|
Uzak bir ana bilgisayarla FTP bağlantısını kontrol etme |
|
JetDirect kartı takılı Hewlett Packard yazıcılarının durumunun kontrol edilmesi (kontrol SNMP protokolü kullanılarak gerçekleştirilir) |
|
Uzak bir sistemle http bağlantılarını kontrol etme. Doğrulama hem HTTP hem de HTTPS protokolleri kullanılarak gerçekleştirilebilir. Bağlantı kurulum süresini, sunucu sertifikalarının geçerlilik süresini ve sunucu yanıtını (normal ifadelerin kullanımı da dahil olmak üzere yanıtta belirli bir dizeyi arayarak) kontrol edebilirsiniz. |
|
ICMP protokolünü kullanarak uzak ana bilgisayarları kontrol etme |
|
S.M.A.R.T. teknolojisini kullanarak yerel diskin (Linux sisteminde) durumunu kontrol etme |
|
check_ifoperstatus |
Belirli bir Linux sistemindeki ağ arayüzünün çalışma durumunu kontrol etme |
Belirli bir Linux sistemindeki ağ arayüzünün durumunu kontrol etme |
|
IMAP protokolünü kullanarak uzak bir ana bilgisayarın çalışmasını kontrol etme. Sunucunun kendisine gönderilen bir imap istek dizisine verdiği yanıtı analiz edebilirsiniz. |
|
Nagios IRCD eklentisini kontrol etme |
|
Uzak bir ana bilgisayara JABBER bağlantısını kontrol etme |
|
LDAP sunucusunu kontrol etme (ilgili özelliği aramak için bir istek gönderebilirsiniz) |
|
LDAP sunucusunun aynı kontrolü, yalnızca güvenli bağlantılar kullanılarak (SSL protokolü aracılığıyla) |
|
Linux sistem önyüklemesini kontrol etme |
|
Belirli bir karakter dizisinin varlığı açısından Linux sistem günlüklerinin kontrol edilmesi |
|
Posta sunucusu kuyruğundaki mesaj sayısını kontrol etme (sendmail, qmail'in farklı sürümleriyle çalışır) |
|
MRTG (Çok Yönlendiricili Trafik Grapher) günlüğündeki belirli bir değişkeni minimum/maksimum değerler açısından kontrol eder (performans parametrelerini izlemek için check_mrtgtraf kullanılmalıdır) |
|
MRTG günlüğüne kayıtlı giden ve gelen anahtar trafiği değerlerini kontrol eder. MRTG paketinin ilk kurulumunu gerektirir (http://ee-staff.ethz.ch/~oetiker/webtools/mrtg/mrtg.html) |
|
Yerel makinedeki Nagios işleminin durumunu kontrol eder |
|
Belirtilen ana bilgisayara NNTP bağlantısını kontrol etme |
|
Aynısı, ancak NNTPS protokolünü kullanıyor |
|
NRPE eklentisi Nagios |
|
Bu eklenti Windows sistemlerinde NSClient hizmetinden veri toplar |
|
NTP sunucusu kontrol ediliyor. Bu eklenti yerine check_ntp_peer kullanılması tavsiye edilir |
|
NTP sunucusu kontrol ediliyor. Diğer şeylerin yanı sıra zaman sinyalinin titreşimini de değerlendirmenizi sağlar |
|
Bu eklenti, yerel sunucu ile belirli bir uzak zaman sunucusu arasındaki zaman farkını kontrol eder |
|
Novell sunucularından veri toplamak için kullanılır. Ek paketlerin kurulumunu gerektirir |
|
Oracle sunucusuna bağlantıyı kontrol eder, veritabanlarının boyutunu ve boş alanın kullanılabilirliğini, önbellek arabelleklerinin durumunu vb. tahmin etmenize olanak tanır. |
|
Uzak bir sistemdeki Over-CR toplayıcı arka plan programının durumunu kontrol eder (http://www.molitor.org/overcr) |
|
Ping paketlerini kullanarak uzaktaki bir sisteme bağlantıyı test eder |
|
POP protokolünü kullanarak uzak ana bilgisayarları kontrol etme. Posta sunucusuna bir sorgu dizesi göndermenize ve sunucu yanıtını analiz etmenize olanak tanır |
|
Linux sistem işlemlerinin durumunu kontrol eder |
|
GERÇEK hizmetin durumunu kontrol eder (RTCP bağlantıları) |
|
Belirtilen ana bilgisayardaki RPC hizmetinin durumunu kontrol eder |
|
Linux sistem donanımı sensörlerinin durumunu kontrol eder. Sensörlerden gelen bilgiler lm_sensors paketi kullanılarak elde edilir |
|
Güvenli bir kanal üzerinden sunucuya olan IMAP bağlantısını kontrol eder. Yanıt süresi ve içerik kontrol edilir (belirli bir talebe verilen yanıt analiz edilerek), sertifikaların geçerliliği |
|
Sunucuya olan SMTP bağlantısını kontrol eder. Posta sunucusu yanıtı, belirtilen dizelerin varlığı açısından analiz edilebilir. Tepki süresi de kontrol edilir |
|
SNMP protokolünü kullanarak uzak sistemleri kontrol etme (ve onlardan veri alma) |
|
Sunucuya güvenli bir kanal üzerinden POP bağlantısını test eder. Yanıt süresi ve içerik kontrol edilir (belirli bir talebe verilen yanıt analiz edilerek), sertifikaların geçerliliği |
|
SSH sunucusuna bağlantı kontrol ediliyor |
|
Sunucuya güvenli bir kanal üzerinden SMTP bağlantısını kontrol eder. Posta sunucusu yanıtı, belirtilen dizelerin varlığı açısından analiz edilebilir. Tepki süresi de kontrol edilir |
|
Yerel sistem takas dosyasındaki boş alanı kontrol eder |
|
Belirtilen sisteme TCP bağlantısını kontrol eder. Yanıtın varlığı, zamanı, yanıtta belirtilen satırların varlığı vb. kontrol edilir. |
|
Belirtilen ana bilgisayardaki saati kontrol etme |
|
Belirtilen sisteme UDP bağlantısı kontrol ediliyor. Yanıtın varlığı, zamanı, yanıtta belirtilen satırların varlığı vb. kontrol edilir. |
|
Yerel veya uzak bir Linux sistemindeki kesintisiz güç kaynaklarının durumunu kontrol etme. Eklentinin çalışması için sistemde UPSD arka plan programının (http://www.networkupstools.org) kurulu olması gerekir. |
|
Yerel olarak oturum açan kullanıcıların sayısını kontrol etme |
|
WI-FI sinyal seviyesinin kontrol edilmesi |
Bu eklentilerin her biri, kullanım özelliklerini açıklayan yardım bilgileri içerir (komutta yardım görüntülenir)<плагин>-H).
Bir sistem izleme eklentisini kullanmak için Nagios'un onu kullanan komutu tanımlaması gerekir. Commands.cfg dosyası, en sık kullanılan sistem kontrolü örneklerinden birkaçını içerir. Nagios'u pratikte kullanırken bu dosyanın kendi kontrol komutlarınızla genişletilmesi gerekir.
Nagios'ta Windows Sunucularını İzleme
Windows tabanlı sistemleri izlemek için birkaç farklı aracı geliştirilmiştir. En sık kullanılanlar NSClient++, NC_NET (http://sourceforge.net/projects/nc-net) ve OpMonAgent'tır (http://www.opmon.org/project/opmonagent.zip). Bu aracıların işlevleri neredeyse aynıdır, bu nedenle yazarın görüşüne göre belirtilen listedeki en popüler olan NSClient++ aracısını kullanmayı düşüneceğiz.
NSClient++ aracısına http://trac.nakednuns.org/nscp/ adresinden ulaşılabilir. Bu program arşiv (zip) veya kurulum dosyası (msi) olarak indirilebilir ve 32 ve 64 bit platformlar için aracının farklı versiyonları kullanılmalıdır. Arşivi indirdiyseniz, paketini istediğiniz klasöre açmanız ve Windows hizmetini komutla yüklemeniz gerekir.
NSClient++ -kurulum
Bir msi dosyası kullanmak daha uygundur, çünkü bu durumda kurulum sihirbazı, yanıtlarınızın sonuçlarına göre bazı ayarları hemen aracı yapılandırmasına ekleyecektir (Şekil 7.15).
Pirinç. 7.15.
NSClient++ program parametrelerini yapılandırma.
Kurulum aşamasında girilen kullanıcı ayarları program tarafından konfigürasyon dosyasına kaydedilecektir.
Kurulumdan sonra, hizmet özelliklerini açarak hizmetin masaüstüyle etkileşime girmesine izin vermelisiniz ( Kontrol Paneli | Yönetim | Hizmetler| NSClientpp... hizmetini bulun (tam ad sürüme bağlıdır) ve özelliklerini açın) ve seçeneği etkinleştirin Masaüstü etkileşimine izin ver.
Hizmete başlamadan önce şunları yapmalısınız: mutlakaçalışma parametrelerini kontrol edin. Bunu yapmak için, nsc.ini dosyasını (aracı yükleme klasöründe) açın ve sistem izleme için kullanılması amaçlanan program modüllerine karşılık gelen satırların açıklamalarını kaldırın. Yapılandırma parametrelerinin oldukça ayrıntılı açıklamaları http://trac sayfasındaki eklenti belgelerinde verilmiştir. Nakednuns.org/nscp/wiki/doc/Configuration.
Bir konfigürasyon ayarlarken prensip, şu anda gerekli olandan daha fazla seçeneği dahil etmemeniz gerektiği olmalıdır. Örneğin, WMI sorguları aracılığıyla bilgi almayı planlamıyorsanız CheckWMI.dll modülünü yüklememelisiniz.
Lütfen aracının teşhis modunda başlatılabileceğini unutmayın. Bu durumda hem konfigürasyon dosyasındaki olası hataları görebilir hem de kendi sorgularınızın hatalarını ayıklayabilirsiniz (Şekil 7.16).
Pirinç. 7.16.
Tanılama modunda NSClient++ program penceresi
NSClient++'ı teşhis modunda başlatmak için komut satırına yazmanız yeterlidir
NSClient++ /test
NSClient++ penceresinde, öncelikle tüm modüllerin yüklenmesinin sonuçlarını görebilir, ikinci olarak kendi komutlarınızı girebilir ve hem Nagios sunucusundan hem de yerel komutlardan gelen isteklerin yürütülmesinin sonuçlarını görebilirsiniz. İncirde. Şekil 7.16 CheckDriveSize ShowAll MinWarnFree=20% MinCritFree=10% Drive=D:\ komutunun girildiği ve sistem yanıtının göründüğü eklenti hata ayıklama penceresini göstermektedir.
NSClient++ eklentisi tabloda verilen parametreleri kontrol etmenizi sağlar. 7.3. Kullanım ayrıntıları teknik belgelerde (http://trac.nakednuns.org/nscp/wiki/CheckCommands) ayrıntılı olarak açıklanmaktadır ve mevcut örnekleri kullanarak kendi Windows durum kontrol komutlarınızı oluşturmak kolaydır.
Tablo 7.3.
NSClient++ tarafından kontrol edilen Windows ayarları
Parametre |
Tanım |
Bir dosya veya klasörün boyutunu kontrol eder |
|
Sabit sürücülerdeki veya çıkarılabilir sürücülerdeki boş veya kullanılmış alan miktarını izler (disk türü komuttan seçilebilir) |
|
Dosyaları oluşturulma tarihine, son erişim zamanına, dosya yazma işlemlerine veya dosya boyutuna göre izler |
|
Günlük dosyasındaki hata mesajlarını arar. Genellikle bu tür çok sayıda mesaj olduğundan, bu kontrolün kullanılması sistemi ağır şekilde yükler. |
|
Belirli bir süre boyunca CPU kullanımını izler |
|
Sistemin çalışma süresini kontrol eder |
|
Hizmet Durumunu Kontrol Et |
Bir Windows hizmetinin durumunu izler (hizmetin gerçek durumu, komutta parametre olarak belirtilenle eşleşmezse kritik bir mesaj oluşturulur). İstisna belirleyerek tüm servisleri aynı anda izleyebilirsiniz. Hizmet adı, hizmet özelliklerinde görüntülenen ad olmalıdır |
Windows işlemlerinin durumunu izler. Aslında yürütülebilir dosyanın adına göre bulunan bir işlemin durumunu izlemenize olanak tanır. Aynı anda çalışan işlemlerin sayısını da kontrol edebilirsiniz. |
|
Sanal ve fiziksel belleğin durumunu izler; yazılı hafıza sayfalarının (kayıtlı sayfalar) sayısı için parametre mevcuttur |
|
Performans sayaçlarının değerlerini izler. Kullanım kolaylığı açısından komutların (hizmetlerin) açıklamalarında sayaç nesnelerinin belirtilmesi tavsiye edilir. |
|
Kontrol EtHer ZamanOK |
Sözde yardımcılar. Önceden belirlenmiş bir değer döndürürler (bu, komutun adına göre değerlendirilebilir). Sistem kurulumu ve hata ayıklama süreçlerinde kullanılır |
Yukarıdaki liste Windows sistemlerinin kontrol yeteneklerini sınırlamaz. Örneğin harici komut dosyaları kullanarak kontrollü parametreler ekleyebilirsiniz.
Windows sistemlerinin izlenmesi çeşitli protokollere dayalı olarak gerçekleştirilebilir. En sık kullanılan protokoller NSClient ve NRPE'dir ("pasif" izleme için, çevrimiçi belgelerde daha ayrıntılı olarak okuyabileceğiniz NSCA protokolünü de kullanabilirsiniz). Uygulamada bunlardan herhangi birini kullanabilirsiniz; yalnızca istemci ayarları dosyasındaki (nsc.ini) ilgili modülleri etkinleştirmeniz/devre dışı bırakmanız yeterlidir. Aynı zamanda yazarın görüşüne göre NRPE protokolü kullanım açısından biraz daha esnektir ve değişim verilerinin şifrelenmesini sağlar. NRPE protokolünü kullanırken komut sözdizimi aşağıdaki gibidir:
check_nrpe ... -c<команда>-A<аргументы>
Örneğin, kullanılabilir fiziksel belleğin kontrol edilmesi şu şekilde yapılabilir:
check_nrpe -H 192.168.0.9 -c CheckMem -a MaxWarn=70% MaxCrit=>%80 tür=fiziksel
WMI'ya dayalı Windows sistemlerini izleme
NSClient++, WMI kullanarak bir Windows sistemini izlemenize olanak tanıyan CheckWMI.dll modülünü içerir.
CheckWMI modülü aslında iki alt modülden oluşur: CheckWMIValue ve CheckWMI. CheckWMIValue modülü sayısal değerleri izlemek için optimize edilmiştir. Örneğin, mevcut işlemci yükü (bu yük yüzdesidir) veya monitör çözünürlüğü (piksel sayısı) vb. Bu komutta, kontrol edilen parametreleri ve bunlara izin verilen minimum/maksimum değerleri kolayca belirtebilirsiniz, örneğin şöyle:
CheckWMIValue "Query=win32_DisplayConfiguration'dan PelsWidth'i seçin"
!}
MinCrit=640 MinWarn=800 Kontrol:Genişlik=PelsGenişlik
Burada verilen komut hata ayıklama modunda (nsclient++ /test) kullanılmak üzere tasarlanmıştır. Ekranın yatay çözünürlüğünü sorgular ve 640'a eşit veya daha küçükse kritik bir durumu bildirir ve değer 800'ü aşmazsa bir uyarı verir. Bu komutu kullanmanın özellikleri arasında, sorgu dizesinden sonra ( tırnak içine alınmış) minimum/maksimum değerlerin parametrelerini yazmanız ve ancak daha sonra komut (PelsWidth) tarafından kontrol edilen parametrenin adını belirtmeniz gerekir. Komut satırında kullanılan Check seçeneğini de açıklayalım. Kontrolden sonra, kontrol sisteminde kullanılacak parametrenin adını girmeniz gerekir (adı WMI'daki açıklamadan kaydedebilirsiniz, ancak genellikle kendi adınızı girmek daha uygundur) ve buna karşılık gelen adı girmeniz gerekir. sınıf nesnesi (örneğin, WMI görüntüleme yardımcı programı Nesne Tarayıcısında görüntülenen nesne).
Daha fazla örnek için (Nagios yapılandırması seçenekleri dahil), bkz. http://trac.nakednuns.org/nscp/wiki/CheckWMIValue.
CheckWMI modülü, WMI sorgusu sonucunda döndürülen bir dize parametresini ayrıştırmayı veya birden çok değer talep etmeyi planladığınız durumlarda kullanılmalıdır. CheckWMI kullanırken, filtre kullanma ihtiyacı nedeniyle sorgu dizeleri biraz daha karmaşık hale gelir. CheckWMI sözdizimi http://nsclient.org/nscp/wiki/CheckWMI/ CheckWMI adresinde açıklanmaktadır. CheckWMI sorgularının yapısı, sistem günlüklerini analiz etmek için kullanılan filtrelere benzer.
Nagios'ta Linux Sunucularını İzleme
Linux sunucularının çalışmasının izlenmesi, NRPE eklentisi kullanılarak gerçekleştirilir ve Nagios sunucusuna bir eklenti olarak ve izlenen Linux sisteminde bir arka plan programı olarak kurulmalıdır. Kurulum için eklentinin hem hazırlanmış versiyonu hem de kaynak kodları kullanılabilir.
Yönetici, izleme sırasında standart sete ek olarak internette yaygın olarak bulunan mevcut eklentilerden herhangi birini kullanabilir.
NRPE protokolünü kullanarak, izlenen bir ana bilgisayarda başka bir ana bilgisayarı kontrol etmek için check_nrpe komutunu verebilirsiniz. Bu şekilde belirli bir alt ağı tek bir bilgisayar üzerinden kontrol edebilirsiniz. Böyle bir kontrol organizasyonuyla, proxy olarak kullanılan ana makineye hem NRPE protokolü arka plan programının hem de eklentinin yüklenmesi gerekir.
SNMP protokolünü kullanarak sistemleri izleme
SNMP protokolü aracılığıyla çalışmak için Nagios'ta uygun eklentinin kurulu olması gerekir. Nagios eklentileri arasında yer almaktadır ancak yalnızca daha önce net-snmp paketini yüklediyseniz kullanabilirsiniz. Bu nedenle SNMP modülünü kullanmayı düşünüyorsanız http://net-snmp.sourceforge.net/ sunucusundan bu paketin indirilmesi, ardından eklentilerin yeniden derlenip yeniden kurulması gerekmektedir. Yazar, yeni bir kurulum için öncelikle önceki kurulumun ayarlarını temizleyecek make clean komutunu çalıştırmanızı tavsiye ediyor.
- Not
http://net-snmp.sourceforge.net/ web sitesinde gerekli paket yalnızca kaynak kodunda veya RPM formatında sunulur.
SNMP protokolünü kullanarak izleme özelliğini ayarladıktan sonra, basit istekleri kullanarak 1 performansı test etmeniz gerekir. Örneğin cihazın çalışma süresini kontrol edin:
/usr/local/nagios/libexec/check_snmp -H<адрес_устройства>-C
sysUpTime.sysUpTime. 0
Yanıt olarak şöyle bir mesaj almalısınız:
SNMP Tamam - Zaman işaretleri: (622339555) 72 gün, 0:43:15.55 |
check_snmp komutu, sayısal bir değer kabul eden bir parametre talep edebilir ve değerinin belirli bir aralıkta olup olmadığını kontrol edebilir. Böylece, uyarı ve kritik durumlar (-w ve -c anahtarları) veya bir değer aralığı (iki nokta üst üste işaretiyle ayrılmış) için değerler belirleyebilirsiniz. Örneğin, kritik değerin a ile b (b > a) aralığında döndürülen sayıyı yorumlamasını istiyorsanız aralığın b:a olarak belirtilmesi gerektiğini lütfen unutmayın. a:b gibi "olağan" biçimde bir aralık belirtirseniz, döndürülen değer bu aralığın içindeyse sonuç normal bir durum olarak kabul edilir, değilse bir uyarı veya kritik olarak kabul edilir ( kullanılan tuşa bağlı olarak). Ek olarak, komut döndürülen dize değerini kontrol edebilir (yanıtın kontrol edildiği değer -s anahtarında belirtilmelidir) veya hatta normal ifadeleri (-r, -R anahtarları) kullanarak bir kontrol gerçekleştirebilir. Ayrıca bir istekte birkaç parametreyi aynı anda kontrol edebilir, OID'lerini virgüllerle ayırarak listeleyebilirsiniz, örneğin şöyle:
İstek derlenip hata ayıklandıktan sonra, yeni komutu komutlar.cfg dosyasında tanımlamak ve gerekli hizmetleri kontrol edilen cihazların açıklama dosyalarına eklemek yeterlidir.
İnternette, pratikte uygulanabilecek SNMP protokolünü kullanarak Nagios'u cihazları izleyecek şekilde yapılandırmanın yeterli sayıda örneğini bulabilirsiniz. Bu nedenle, http://wiki.nagios.org/index.php/Howtos:snmp-apc-smart-ups adresi APC'den kesintisiz güç kaynaklarının durumunu kontrol edebileceğiniz ayarların bir açıklamasını içerir (pil durumu, voltaj parametreleri, sıcaklık vb.).
Anahtarlama ekipmanının izlenmesi
Aktif ağ ekipmanı - anahtarlar, hub'lar, modemler vb. SNMP protokolü (yönetilen modeller) kullanılarak kontrol edilir. Ekipman portlarının durumunu alabilir, portlarda belirli sayıda paket iletim hatası meydana gelirse uyarı verebilir, cihazın sıcaklığını ve VPN oturum sayısını izleyebilirsiniz. SNMP protokolü aracılığıyla izleme için açıklamaya göre uygun tanımlayıcıların seçilmesi yeterlidir. Çoğu durumda bu kontrol için yeterlidir.
Ancak, belirtilen parametrelere ek olarak yöneticiler genellikle gerçek ekipman yükünü ve kullanılan bant genişliği yüzdesini bilmek isterler. Bu değerler belirli bir donanım durumu parametresi sorgulanarak elde edilemez. Periyodik olarak elde edilen verilerin analizine dayanarak hesaplanır. En popüler programlardan biri olan MRTG, bu tür izleme için özel olarak oluşturulmuştur. Anahtar parametresi işleme yetenekleri Nagios'ta kullanılmaktadır.
MRTG programı, check_mrtgtraf eklentisini kullanarak daha sonra görüntülenmek üzere Nagios'a aktarılan SNMP protokolünü kullanarak aktif ekipmandan istatistik toplar.
MRTG programını kurduktan sonra programın toplayacağı cihazları ve parametre değerlerini belirttiğiniz ayar dosyalarını oluşturmanız gerekmektedir. Bu ayarlar /etc/mrtg.conf dosyasında olmalıdır. Bir MRTG konfigürasyonu oluşturmak oldukça karmaşık bir iştir, bu nedenle paket, cihazı otomatik olarak yoklayacak ve bir konfigürasyon dosyası (cfgmaker) oluşturacak özel bir program içerir. Çalıştırırken, topluluk dizesini ve cihaz adresini parametre olarak belirtmeniz gerekir. Program çıktısı, değerleri daha sonra ayarlar dosyasına aktaracağımız bir dosyaya yönlendirilmelidir. Böyle bir dosyanın adı olarak yoklanan cihazın adını (veya adresini) kullanmak uygundur:
cfgmaker topluluğu@adresi > /etc/mrtg/address.cfg
CFgmaker komutunun sonuçlarına göre tek yapmanız gereken, bu cihaz için analiz edilmesi gereken veri bloklarını yapılandırma dosyasında bırakmaktır. Programın dosya bilgilerine göre grafik sayfalarında başlıklar ve hizmet açıklamaları oluşturduğu göz önüne alındığında, grafiklerde görüntülenmesi gereken bu pozisyonların başlıklarını ve açıklamalarını ayarlamak mantıklı olacaktır. Verimi uç cihazların (sunucular, iş istasyonları) bağlı olduğu bağlantı noktalarına göre analiz etmek bir anlam ifade etmediğinden, aktarım izlemesinin yalnızca ana bağlantı noktaları (diğer anahtarlara veya hub'lara bağlı bağlantı noktaları) için tutulması önerilir.
Ayarlar dosyasını düzenledikten sonra cihaz konfigürasyonunu parametre olarak belirterek mrtg programını çalıştırabilirsiniz. UTF-8 kodlamalı sistemler için run komutu şu şekilde görünecektir:
env LANG=C /usr/bin/mrtg /etc/mrtg.cfg
MRTG paketini kurarken sistem, her beş dakikada bir anahtarlardan otomatik olarak bilgi toplayacak şekilde yapılandırılmıştır. İstenirse /etc/cron.d/mrtg dosyası buna göre düzenlenerek bu süre artırılabilir.
Bireysel cihaz bağlantı noktalarına ilişkin performans grafikleri, http://nagiosserver/mrtg/ klasörünü bir tarayıcıda açıp uygun dosyayı seçerek görüntülenebilir. İstenirse gösterimi basitleştirmek için ortak bir indeks dosyası oluşturulabilir. Bu, indexmaker komutu kullanılarak yapılır. Dosyayı oluşturmak için gerekli anahtarlar, indexmaker -h çağrıldıktan sonra yardım bilgisi kullanılarak kolayca açıklanabilir.
Açıklandığı gibi yapılandırıldıktan sonra performans verilerini toplamak için Nagios check_mrtg ve check_mrtgtraf komutlarını kullanabilirsiniz. check_mrtgtraf komutu aşağıdaki parametreleri gerektirir:
check_mrtgtraf -F -a -w gelen, giden -c gelen, giden -eaging_period
Bu örnekte -a parametresi, analiz süresi boyunca maksimum değerin (maks) dikkate alınıp alınmayacağını veya programın ortalama değeri (ortalama) tahmin edip etmeyeceğini belirtir. w ve c tuşlarından sonra, belirli bir portta giden ve gelen trafik için limit çiftleri belirtilir. Sistemin hangi porttaki verileri izleyeceği seçilen log dosyasına göre belirlenir. İncirde. Şekil 7.17 mrtg paketi tarafından oluşturulan bir grafiğin örneğini göstermektedir.
Pirinç. 7.17.
Bağlantı noktası yük grafiğini değiştir
Kendi izleme programlarınızı kullanma
Nagios, herhangi bir sistemi izlemek için kendi eklentilerinizi oluşturmanızı kolaylaştırır. Herhangi bir yürütülebilir dosya bu şekilde kullanılabilir. Sadece tamamlama kodunu tabloya uygun olarak raporlamalarını sağlamak gerekir. 7.4.
Tablo 7.4.
Nagios için sistem izleme programları için dönüş kodları
Komut dosyaları oluştururken bunların izleme aracısı hizmeti adına başlatılacağını dikkate almalısınız. Varsayılan olarak bu hizmet, yerel sistem için maksimum haklara sahiptir ancak ağdaki bilgisayarlarla etkileşime giremez. Diğer bilgisayarlardan veri toplamak için komut dosyaları kullanmayı planlıyorsanız, komut dosyalarına uygun hesabın parametreleriyle bağlantı işlemlerini dahil etmeniz veya aracıyı farklı bir ad altında çalışacak şekilde yapılandırmanız gerekir.
Nagios'ta grafiklerin çizilmesi
Sistemleri izleyen Nagios komutları yalnızca durumu (iyi veya kötü) değil aynı zamanda belirli parametrelere ilişkin verileri de (örneğin, disk kullanım yüzdesi veya oturum açan kullanıcı sayısı) döndürür. Bu veriler varsayılan olarak kaydedilmez ancak örneğin ilgili hizmetlere ilişkin grafikler çizmek için kullanılabilir.
Bu özelliği uygulamak için ek bir eklenti yüklemeniz gerekir. Nagios'ta grafik oluşturmaya yönelik en popüler eklentilerden biri, http://sourceforge.net/projects/nagiosgraph/ adresinden indirilebilen nagiosgraph paketidir.
İncirde. Şekil 7.18, fare imlecini ilgili parametreye getirdiğinizde, değişikliklerin bir grafiğinin dinamik olarak görüntülendiği, hizmetlerin durumunu izlemek için bir sayfa örneğini göstermektedir. İstenirse yönetici herhangi bir hizmet için ve belirli bir süre için bir program seçmeye devam edebilir.
Pirinç. 7.18.
Dinamik grafiği olan bir sayfa örneği
Nagios arayüzünü ayarlama
Nagios için, izleme verilerinin görüntüsünü yöneticinin ihtiyaçlarına göre özelleştirmenize olanak tanıyan birçok eklenti geliştirilmiştir. Yani taktiksel bir genel bakış yerine (Şekil 7.19), Nagios'un her cihazın durumunu görüntüleyeceği özel ağ haritalarını kullanabilirsiniz.
Pirinç. 7.19.
Nagios'ta genel sistem durumunu görüntülemek için standart seçenek
İncirde. 7.20 (http://www.nagvis.org sitesinden örnek), NagVis paketi kullanılarak oluşturulan bir izleme haritasının gerçek bir versiyonunu gösterir.
Pirinç. 7.20.
NagVis paketini kullanırken ağ durumunu görüntüleme
Bu durumda Nagios, cihazlara ve iletişim hatlarına ilişkin göstergeleri gerçek zamanlı olarak görüntüleyecektir. Aynı zamanda, harita üzerinde gruplara (ana bilgisayarlar ve hizmetler) göre özet durumların, iletişim hatları boyunca gerçek trafiğin değerlerinin vb. görüntülenmesi mümkündür. Bu tür gösterimlerin pratik kullanım için çok uygun olduğu açıktır.
1 Örnekler SNMP sürüm 1'i kullanır. Gerçek koşullarda genellikle sürüm 3 kullanılır, bu nedenle örneklerin kimlik doğrulama parametreleriyle desteklenmesi gerekir.
Nagios (Nagios Azizlik Konusunda Israr Etmeyecek)- bilgisayar sistemlerini ve ağlarını izlemek için tasarlanmış açık kaynaklı bir program. Düğümlerin ve hizmetlerin durumunu izler, izler ve hizmetlerden herhangi birinin çalışmayı durdurması (veya devam ettirmesi) durumunda yöneticiyi uyarır.
Bugünkü yazımızda size nasıl kurulum yapılacağını anlatacağız. Nagios 4.1 Açık Ubuntu15.04.
Bu bölüme giderek Nagios ve diğer programların/hizmetlerin/PBX'in nasıl olduğunu test edebilir ve görebilirsiniz.
Hazırlık
Sunucunuzun tam olarak çalıştığından emin olun LAMBA, yüklü değilse devam etmeden önce yükleyin LAMBA sunucu. Aşağıdaki bileşenleri yükleyelim:
Sudo apt-get install build-essential libgd2-xpm-dev apache2-utils unzip
Bir Nagios kullanıcısı ve grubu oluşturalım
Yeni bir kullanıcı hesabı oluşturun nagiolar ve grup nagcmd:
Sudo useradd -m nagios
sudo şifresi nagios
sudo groupadd nagcmd
sudo usermod -a -G nagcmd nagios
sudo usermod -a -G nagcmd www-verileri
Nagios'u ve bunun için eklentileri indirin
Resmi web sitesinde en son sürüm şu şekilde listelenmiştir: 4.1.0 sürüm adayı 2, hadi indirelim.
Cd /usr/src
sudo wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.1.0rc2.tar.gz
Eklentileri indirin
Sudo wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
Nagios'u yükleme
Nagios'u ve eklentileri indirdiğimiz klasöre gidin ve şu komutu kullanarak sıkıştırmayı açın:
Sudo tar xzf nagios-4.1.0rc2.tar.gz
Cd nagios-4.1.0rc2/
Derlemek ve yüklemek için aşağıdaki komutları çalıştırın Nagios:
Sudo ./configure --with-command-group=nagcmd
sudo hepsini yap
sudo make install
sudo make install-init
sudo make install-config
sudo make install-komut modu
Web arayüzünü yükleme Nagios:
Sudo make install-webconf
Kurulum işlemi sırasında aşağıdaki hatayı alırsanız:
/usr/bin/install -c -m 644 sample-config/httpd.conf /etc/httpd/conf.d/nagios.conf
/usr/bin/install: '/etc/httpd/conf.d/nagios.conf' normal dosyası oluşturulamıyor: Böyle bir dosya veya dizin yok
Makefile:296: "install-webconf" hedefi için tarif başarısız oldu
yap: ***Hata 1
Nagios dahili olarak bir nagios.conf dosyası oluşturmaya çalışıyor /etc/httpd.conf/directory, ancak sistemlerde ubuntu nagios.conf dosyaları yerleştirilmelidir /etc/apache2/sites-enabled/directory. Daha sonra bunun yerine başka bir komut kullanırız sudo make install-webconf
Sudo /usr/bin/install -c -m 644 sample-config/httpd.conf /etc/apache2/sites-enabled/nagios.conf
Bir hesap oluşturalım Nagiosadmin web arayüzüne giriş yapmak için Nagios. Belirlediğiniz şifreyi hatırladığınızdan emin olun; Web arayüzüne giriş yaparken bu şifreye ihtiyacınız olacaktır.
Sudo htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Yeni ayarların etkili olması için Apache'yi yeniden başlatalım:
Sudo systemctl apache2'yi yeniden başlat
Eklentileri indirdiğimiz klasöre dönüyoruz ve eklentileri açıyoruz:
Cd /usr/src
tar xzf nagios-eklentileri-2.0.3.tar.gz
Sıkıştırılmış dizine gidin:
Cd nagios-plugins-2.0.3/
Eklentileri derlemek ve yüklemek için aşağıdaki komutları çalıştırıyoruz:
Sudo ./configure --with-nagios-user=nagios --with-nagios-group=nagios
sudo yap
sudo make install
Nagios'u başlatın
Kontrol etme nagios.conf hatalar için:
Sudo /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Eğer hata yoksa çalıştıralım Nagios ve otomatik çalıştırmaya ekleyin:
Sudo hizmeti nagios başlangıcı
sudo ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios
Başlangıçta ise Nagios aşağıdaki hatayı gördünüz:
nagios.service başlatılamadı: nagios.service birimi yüklenemedi: Böyle bir dosya veya dizin yok.
[....] Nagios başlatılıyor (systemctl yoluyla): nagios.service Nagios.service başlatılamadı: nagios.service birimi yüklenemedi: Böyle bir dosya veya dizin yok.failed!
Düzeltmek için kopyalamanız gerekir /etc/init.d/skeleton V /etc/init.d/nagios
Sudo cp /etc/init.d/skeleton /etc/init.d/nagios
Hadi düzenleyelim /etc/init.d/nagios:
Sudo nano /etc/init.d/nagios
En sonuna şunu ekliyorum:
DESC = "Nagios"
İSİM=nagios
DAEMON=/usr/local/nagios/bin/$NAME
DAEMON_ARGS = "-d /usr/local/nagios/etc/nagios.cfg"
PIDFILE=/usr/local/nagios/var/$NAME.lock
Kaydet ve çık.
Son dokunuş - aşağıdakileri gerçekleştirme haklarını veriyoruz:
Sudo chmod +x /etc/init.d/nagios
ve başlat Nagios:
Sudo /etc/init.d/nagios başlat
Şimdi girdiğimiz tarayıcıda http://nagios-sunucu-ip/nagios, kullanıcı adı alanına şunu girin: nagiosadmin ve kurulum işlemi sırasında belirlediğimiz şifre.
Konsolun sol panelindeki “Ana Bilgisayar” seçeneğine tıklayın. Nagios'un şu anda kendisinden başka hiçbir ana bilgisayarı izlemediğini göreceksiniz.
Bu kurulumumuzu tamamlıyor. Tüm talimatları uyguladıktan sonra Ubuntu 15.04 üzerinde Nagios 4.1 kurulumunu gerçekleştirdik.
Popüler bir izleme çözümü olan nagios, ölçeklenebilir sistemler uygulamanıza olanak tanır. Dağıtılmış sistemler için yapılandırma uzun bir süreçtir; bu makalede uzak bir ana bilgisayardaki bir hizmetin izlenmesini uygulayacağız.
Kurulum çalışması işletim sistemine sahip bir sunucu üzerinde gerçekleştirilecektir CentOS 7 nrpe istemcisi ayrıca CentOS 7'yi kullanacak
Eklentiyi istemciye yükleyin hayır ve ayarlarında sunucuya bağlantıya izin verin.
İzleme sunucusunun Nagios kurulumu ve yapılandırması
Nagios sunucusu görevi görecek bir makinede kuruluma başlıyoruz. Gerekli paketleri kuralım:
yum install -y wget httpd php gcc glibc glibc-common gd gd-devel net-snmp'nin sıkıştırmasını açmasını sağlar
nagios çalışıyor Apaçi, yani kurulu paketler listesinde httpd mevcut
Geçici dosyalarla kök dizine gidiyoruz ve wget kullanarak nagios ve nagios eklentilerinin en son sürümlerini indiriyoruz.
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-4.2.8.tar.gz
wget http://nagios-plugins.org/download/nagios-plugins-2.1.2.tar.gz
Sistem kullanıcısı ve grubu oluşturma
Nagios kullanıcısını nagcmd grubuna ekleyin
usermod -a -G nagcmd nagios
usermod -a -G nagios, nagcmd apache
CentOS kullandığımız için httpd www-data kullanıcısı olarak değil apache kullanıcısı olarak çalışıyor
Gelecekte hak çatışmalarını önlemek için apache kullanıcısını nagios, nagcmd gruplarına ekleyin
İndirilen arşivin içeriğinin çıkarılması
tar -zxvf nagios-4.2.0.tar.gz
Nagios dosyalarının bulunduğu dizine gidin
Gelecekte kaynak kodlarından hem nagios hem de nrpe'yi kuracağız
./configure --with-command-group=nagcmd
Derleme sırasında nagcmd grubunu bir seçenek olarak belirtin
Derleme
kurulum komut modunu yap
Kitaplıkların bulunduğu dizini yinelemeli olarak sunucudaki /usr/local dizinine kopyalayın
cp -R katkısı/olay işleyicileri /usr/local/nagios/libexec
Ayrıca dizinlerin ve dosyaların sahibinin sahibini ve grubunu yinelemeli olarak nagios olarak değiştiriyoruz
chown -R nagios:nagios /usr/local/nagios/libexec/eventhandlers
Ana yapılandırma dosyasının yolunu belirterek nagios sürümünü başlatmaya ve görmeye çalışıyoruz.
Nagios'u başlangıca ekleyin - sistem başlangıçta onu her zaman başlatacaktır
systemctl nagios'u etkinleştir
Hizmetin başlatılması
Benzer işlemleri web sunucusuyla da gerçekleştiriyoruz
Nagios kullanıcı şifresini ayarlayın
Yardımla htpasswd nagiosadmin kullanıcısının erişimini kısıtlayacak bir dosya oluşturun
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Ana paketin kurulumu artık tamamlanmıştır. Bir İnternet tarayıcısı açın ve arama çubuğuna sunucunun IP adresini girin, ardından /nagios'u girin ve web arayüzüne gidin
Uzak bir ana bilgisayarda hizmet izlemeyi ayarlama
Nagios istemcisi görevi görecek başka bir sunucu makinesine gidiyoruz
/tmp/ dizinine gidin
nagios-plugins-2.1.2 paketini açın
tar -zxvf nagios-eklentileri-2.1.2
cd nagios eklentileri-2.1.2
Nagios kullanıcısını ve grubunu belirterek derliyoruz
./configure —with-command-user=nagios —with-nagios-group=nagios
Şimdi kurulumu yapalım nrpe eklentisi
Öncelikle depodan openssl-devel'i ek olarak kuruyoruz; eğer zaten kuruluysa bu adımı atlıyoruz (paketin nagios sunucusunda da mevcut olması gerekiyor)
yum -y openssl-devel'i yükle
Depodan da yükleyebilirsiniz
yum nagios-plagins-all nagios-plagins-nrpe'yi yükleyin
Daha yeni bir sürüme ihtiyacınız varsa ne olacak?
Paketi indirin
wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
tar.gz dosyasını açın
tar -zxvf nrpe-2.15.tar.gz
Daha önce olduğu gibi derliyoruz
Nagios sunucusuna gidelim
Anahtardan sonra belirterek sunucudan bağlanmaya çalışıyoruz -Hİstemci IP adresi
Bağlantının reddedildiğini alıyoruz ve eklentiyi yapılandırmaya gidiyoruz
İstemcide nrpe'yi başlatıyoruz ve hizmeti başlangıca ekliyoruz
Ana yapılandırma dosyasını açın ve izin verilen_anasistemler bölümünde değer olarak sunucu IP adresini belirtin
mcedit /etc/nrpe/nrpe.cfg
izin verilen_ana bilgisayarlar = 10.11.27.11
Sunucuya geri dönüyoruz
/usr/local/nagios/libexec/check_nrpe -H 10.11.27.44
Artık girişimimiz başarılı oldu ve nagios versiyonunu görüyoruz
Ana yapılandırmayı tekrar açın
Yorum işaretini satırından kaldırın cfg_dir(cfg_dir=/usr/local/nagios/etc/servers)
Bir dizin oluşturun ve ona gidin
mkdir /usr/local/nagios/etc/servers
cd /usr/local/nagios/etc/servers
İzlenecek hostları belirliyoruz. Ana bilgisayarların herhangi bir adı olabilir, nagios cfg uzantılı tüm dosyaları görecektir
Host parametrelerini belirliyoruz, direktiflerin anlamı isminden belli. İzlemenin ince ayarı gerekliyse, bu direktiflerden önemli ölçüde daha fazlası olabilir; burada temel çalışma konfigürasyonunu ele alacağız.
ana bilgisayarı tanımla (
linux sunucusunu kullan
ana bilgisayar_adı cenos11
takma ad sadece nagios istemcisi
adres 10.11.27.44
max_check_attempts 5
check_period 24×7
bildirim_aralığı 30
bildirim_dönemi 7×24
}
İzlediğimiz servise ait bir config ekliyoruz. Şimdi kendimizi ana bilgisayara ping varlığını kontrol etmekle sınırlayacağız
{
genel hizmeti kullan
ana bilgisayar_adı cenos11
service_description PING
check_command check_ping!%100.0.20!%500.0.50
}
Check_command komutu kullanıldı, kılavuzdan bununla ilgili bir alıntı şöyle diyor:
check_ping -H -w ,% -c ,%
[-p paketleri] [-t zaman aşımı] [-4|-6]
Buna göre paketlerin %20'si kaybolursa uyarı alırız, %50'si kaybolursa UYARI alırız
Tekrar çalıştırın ve hata olmadığından emin olun
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Hizmeti yeniden başlatma
systemctl nagios'u yeniden başlat
Web arayüzüne gidiyoruz ve izlediğimiz uzak ana bilgisayardaki hizmetin orada görüntülendiğini görüyoruz (ekran görüntüsünde gösterilen konfigürasyonda, bir dizi başka kaynağın izlenmesi yapılandırılmıştır). İzleme sunucusunun temel işlevlerle kurulumu tamamlandı.
Nagios'ta ALERT'leri ayarlama
Ana yapılandırma dosyasını açın ve gerekirse satırın açıklamasını kaldırın cfg_file=/usr/local/nagios/etc/objects/contacts.cfg:
mcedit /usr/local/nagios/etc/nagios.cfg
Dosyada bildirimlerin gönderilmesi için iletişim e-posta adresini tanımlıyoruz:
mcedit /usr/local/nagios/etc/objects/contacts.cfg
kişiyi tanımla (
iletişim_adı nagiosadmin
jenerik-iletişim kullan
takma adı Nagios Admin
e-posta [e-posta korumalı]
}
Hizmeti yeniden başlatma
cyctemctl nagios'u yeniden başlat
Örneğin SMS mesajları göndermek için kullanılabilecek ek yazılımlar da kullanılabilir. UYARI-temel olarak önemli hizmetlerle ilgili. Çalışan bir Nagios sunucusu alındı, kurulum ve konfigürasyon artık tamamlandı.
Sunucular için, Nagios sunucusunu ve istemcisini aynı makineye kurabilirsiniz, ancak başka bir paketi kullanmak çok daha kolaydır - örneğin .
- Acemi bir kullanıcı için: 1C:Enterprise program sisteminin yazılım ürünleri arasındaki farklar
- Program 1s 8.3 demo sürümü. Mobil uygulama "UNF" YENİ
- Şirketimizin 1C yönetimini sıfırdan kurmak
- Warface'e ücretsiz kayıt
- World Of Tanks oyununa kayıt – bilmeniz gerekenler nelerdir?
- Starcraft II Stratejisi ve Taktikleri
- Rusça Çay Postası takibi