Embedded Event Manager 1.Kısım

Bu yazıda sizlere bir Cisco IOS özelliği olan ve kısaca IOS mimarisine gömülü ,birden çok komutu otomatik olarak çalıştırmaya/etkinleştirmeye yarayan, komutsal hataları azaltıp raporlayabileceğimiz bir IOS scripting dili olan Embedded Event Manager’dan bahsedeceğim.

EEM genel olarak CLI ortamında yapılanları isteğe bağlı monitörleme, syslog mesajı ile mesaj gönderme, interfacelerde gerçekleşen değişiklikleri saptayabilme, bu değişiklikleri saklayabilme gibi ilgili ağ cihazına birtakım özellikler kazandırır ve kendi kendini düzeltebilmesini sağlar.Yazının ilk kısmında EEM yapısı hakkında bilgi verip ikinci kısımda birkaç örnekle konuyu pekiştireceğiz 🙂

NOT: Yazıda, ilgilendiğimiz cihazda oluşan herhangi bir değişikliği (bir interface’in down olması, cpu kullanımının belirli bir değere ulaşması vs.) ‘olay’ diye tabir edeceğim.

EEM üç bileşenden oluşur; EEM server, event publisher(event detector) ve event subscriber (policies.) Aşağıdaki resimde bu üç kısmın nasıl çalıştığı şematize edilmiştir.

 

 

Event Detectors (Olay dedektörleri)

İzledeğimiz bir olayın oluşması durumunda EEM server’a haber veren mekanizma olarak düşünebiliriz. EEM policy’lerle herhangi bir monitörleme programı(ör. SNMP) arasında bağlantı kurar. Bazı event detector tiplerinden bahsedecek olursak;
Application-Specific Event Detector: Bir olay oluşması halinde o olayla ilgili tüm EEM policy’lerinin uygulanmasını sağlar
Command-Line Interface (CLI) Event Detector: CLI ortamında girilen komutların önceden tanımladığımız EEM appletindeki kelimeyle eşleşmesi halinde policy’leri devreye sokar.
Interface-Counter Event Detector: Belirlediğimiz bir interface’in belli bir treshold değerini geçmesi halinde Cisco CLI İnterface couunter’ı devreye sokar.

Bunların dışında sadece bilgi olsun diye yazmak gerekirse diğer event detector’ler;

cialis Counter Event Detector
– Enhanced-Object-Tracking Event Detector
– Interface-Counter Event Detector
– Online Insertion and Removal (OIR) Event Detector
– Resource Event Detector
– SNMP Event Detector
– Timer Event Detector
– None Event Detector

EEM Policy

Bir olay yada hata tespit edildiğinde, EEM policy içinde daha önceden kurallarını belirlemiş olduğumuz düzeltme mekanizmasını çalıştırır. Düzeltme mekanızmasından kastımız otomatik olarak Cisco IOS CLI komutu çalıştırma, durum hakkında email gönderme, SNMP trap oluşturma gibi aksiyonlardır. Cisco IOS Software CLI applet interface ve TCL subsystem and interpreter olmak üzere iki yapıdan oluşur.

EEM Applet

CLI konfigurasyonuyla oluşturulmuş policy’lerdir. EEM applet konfigurasyon modunda üç tip durum bulunur:

event komutları; hangi olayla ilgili applet yazılacağımı belirleme için kullanılır.
action komutları; EEM appleti devreye girdiğinde hangi işlevi gerçekleşterecekse o işlevle ilgili komutlardır.
set ranexa canadian pharmacy komutları: EEM applet değişkeninin değerini belirlemede kullanılır.

Cihaza kayıtlı applet’leri görmek için show event manager policy registered komutu kullanılabilir.

EEM Script

TCL(Tool Command Language) dili EEM tarafından desteklenmektedir ve bize kendi TCL scriptlerimizi yazmamıza olanak tanır. TCL dilinde global değişkenler kullanılır, bir TCL scripti çalışırken EEM’de tanımlanan environment variables (çevresel değişkenler) otomatik olarak TCL global değişkenlerine dönüştürülür. EEM’de tanımlı üç tip pharmacy in canada environment variables tanımlıdır.

  • User-defined: yazacağımız herhangi birpolicy’de bizim tanımlayabileceğimiz çevresel değişkenler.
  • Cisco-defined: Cisco’nun belirli policy’ler için tanımladığı çevresel değişkenler.
  • Cisco built-in (EEM applet’leri için): Cisco çevresel değişkenleri read-only yada read/write tipinde tanımlayabilir. Read-only çevresel değişkenler sistem tarafından applet çalışmadan önce set edilmiş değişkenlerdir, read/write tipinde değişkenler ise olay karşısında appletin ne yapması gerektiğini belirttiğimiz değişkenlerdir.

Aynı EEM Applet’lerinde olduğu gibi TCL Script’leriyle de ilgili olay için çalıştaracağımız policy’yi tanımlayabilir, bu policy için ilgili event-detector mekanizmasını seçebilir ve hangi bu durum karşısında hangi işlevlerin yapılacağına karar verebiliriz.

Cisco kendi bünyesinde birtakım örnek policy’ler barındırmaktadır, bunları koplayalıp kendi isteğimize göre düzenleyebilir yada kendi policy’lerimizi yazabiliriz..

Evet bu kadar teorik bilgiden sonra insanın canı örnek görmek istiyor :), yazının 2. Kısmında faydalı olabileceğine inandığım örnekleri çok geçmeden paylaşacağım, ancak yinede boş göndermemek adına ufak bir örnekle yazımı tamamlamak isterim 🙂

“reload” komutunu etkisiz hale getirme:

AgciyizRouter(config)#event manager applet NoReload
AgciyizRouter(config-applet)# event cli pattern “reload” sync no skip yes
AgciyizRouter(config-applet)# action 1.0 syslog priority errors msg “Bu cihazla Reload komutunu çalistiramasiniz”

Appletimizi hazırladık, şimdi elle cihazda ‘reload’ komutunu işlettiğimizde applet otomatik olarak devreye girecektir;

AgciyizRouter(config)#reload
AgciyizRouter#
*%SYS-5-CONFIG_I: Configured from console by console
*Aug 12 19:09:44: %HA_EM-3-LOG: NoReload: Bu cihazla Reload komutunu çalistiramasiniz

*%SYS-5-CONFIG_I: Configured from console by console

Görüldüğü gibi appletimiz görevini başarıyla tamamladı 🙂 yazının ikinci kısmında görüşmk üzere sağlıcakla kalın..

 

“Embedded Event Manager 1.Kısım” için bir cevap

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir