System Center Authoring Tool ile Management Pack Oluşturma

01.10.2018 / Emir Bora Turan

Microsoft System Center Operation Manager 2007/2012/2016 uygulaması bildiğimiz üzere uçtan uca monitoring yapabileceğimiz bir uygulamadır. SCOM 2007/2012/2016 ürünü istediğimiz Server,Uygulama ,Network Cihazları vb. Uygulamaları izleyebilmek için Management Packlere ihtiyaç duymaktadır. Bu management packler ise uygulamaları geliştiren firmalar tarafından yazılmış ve yayınlanmış olması gerekmektedir. Eğerki elinizde izlemek istediğimiz uygulama için bir management pack var ise SCOM 2007/2012 uygulaması içerisine Import edilir ve monitoring işine başlayabilirsiniz.

Pekala elimizde bir ürün ya da uygulama var fakat management pack yazılmamışsa ne olacak?

Bu makalemde sizlere ihtiyaç duyduğumuz ama management packi bulunmayan bir durumda nasıl custom bir management pack oluşturabiliriz bunu anlatmaya çalışacağım.

Bir management Pack oluşturabilmek için bazı temel kavramlar vardır ve bu kavramları gerçekten iyi anlamak gereklidir. Bu kavramları başka bir makalede anlatıyor olacağım.

Yeni ve Custom bir management pack oluşturabilmek için aşağıdaki linkte bulunan System Center Operation Manager 2007 R2 Authoring Tool ihtiyacımız bulunmaktadır.

http://www.microsoft.com/en-us/download/details.aspx?id=18222

Öncelikle oluşturacağımız management pack için ihtiyaçlarımızı gerçekten iyi bir şekilde belirlememiz gerekmektedir. Management Pack oluşturmak için öncelikle senaryomuzu oluşturalım.

Senaryo :

  • Mevcut yapımda bir adet System Center Operation Manager 2012 bulunmakta.
  • SCOM 2012 uygulaması ile sunucular monitor edilmekte ve üzerlerinde antivirüs yazılımı olarak Symantec Endpoint Protection Manager bulunmakta.
  • Sunucular üzerinde Symantec AV uygulamasının aktif olup olmadığını aynı zamanda veritabanının güncelliğini kontrol etmek istiyorum (Servis Takibi,Veritabanı güncelliği,vb)

Evet yukarıda örnek bir senaryomuz var bizde bu senaryoya uygun olarak bir management pack oluşturacağız ve takibine başlayacağız.

Bunun için öncelikle kurulumu yaptığımız SCOM 2007 R2 Authoring Consol’e açıyoruz ve yeni bir proje başlatıyoruz.

Bunun için öncelikle File ve New seçenekleri ile Empty Management Pack seçimi yapıyoruz. Yeni oluşturacağımız management pack için birde isim veriyoruz ve Next ile geçiyoruz.

Display Name kısmına Management pack için display name tanımlamasını yaparak Create ile management pack oluşturmuş oluyoruz.

Management Packimiz için Service Model tabına geçiyoruz ve yeni bir Class oluşturacağız. Class nedir,neden class oluştururuz gibi konuları bir başka makalede yazıyor olacağım.

Class tanımlamak için resimdede görüldüğü gibi önce New ardından da senaryomuz göre localde çalışan bir uygulama için kurduğumuzdan Windows Local Application seçimini yapıyoruz.

Oluşturmaya başladığımız class için bir ID tanımı ve class için Display Name tanımını yapıyoruz ve Next ile ilerliyoruz.

Gelen pencerimizde herhangi bir key tanımı yapmıyoruz ve Finish diyerek yeni Classımızı oluşturmuş oluyoruz.

Yukarıda da görüldüğü üzere classımız oluşmuş durumda. Ancak Classımız ile işimiz bitmedi. İzleyeceğimiz ve senaryomuza göre takibini gerçekleştireceğimiz alanlarımızı tanımlamamız gerekiyor.Bunun için oluşturmuş olduğumuz Classımız üzerinde sağ klik yapıyoruz ve Properties kısmını seçiyoruz.

Gelen ekranda Properties tabına geçiyoruz ve System Entity altında yine sağ klik yaparak Add Property seçimini yapıyoruz.

Senaryomuza göre bizler takibini yapacağımız yani izleyeceğimiz alanlarımızı burada tanımlamalarını gerçekleştiriyoruz. Bizler Version,Uygulamanın adını ve bağlı olduğu servisin takibini yapacağımızı öncesinde belirtmiştik. Tanımlamalarımızı buna göre yaptıktan sonra uyguluyor ve işimizi burada da bitirmiş oluyoruz.

Class ile işimizi bitirdikten sonra sırada önemli olan bir başka ayrıntımız Symantec Endpoint Protection uygulamamızın kurulu olduğu sunucuları keşfetmekde. Bunun için yukarıda ki resimde görüldüğü üzere Health Model tabı altında Discoveries seçimini yapıyoruz.

Sağ taraftaki alanda sağ klik ile New ve Registry (Filtered) seçimini yapıyoruz. Bu noktada yukarıdaki resimde de görüldüğü üzere farklı discovery seçimleri mevcut kendinize uygun olan seçimi yaparak farklı yollarda deneyebilirsiniz. Hele powershell ‘e hakimseniz yapılamayacak şey bulunmuyor desek yeridir.

Yeni bir Discovery oluşturma kısmında yine bir ID ve display name tanımını yapıyoruz.Target olarak Windows Server Computer olarak belirliyoruz ve Next ile ilerliyoruz.

Oluşturacağımız keşfetme (Discovery) için ne kadar sürede bir kontrol edeceğini yani ne sıklıkta keşfe çıkacağını belirliyoruz. Bu tanımı yaptıktan sonra Next ile bir sonraki adıma geçiyoruz.

Açılan ekranda Next ile bir sonraki ekrana geçiyoruz.

Discovery tanımını yaparken Registry (Filtered) seçimini yapmıştık. Bu adımda aslında ilk başta oluşturduğumuz Classımızda tanımladığımız Property leri keşfederek dolduruyor olacağız. Aynı zamanda Symantec Endpoint Protection uygulamasının yüklü olduğu sunucuları keşfetmek içinde bu adımdan faydalanacağız.

Register altında Symantec Endpoint Protection uygulaması yüklü ise

HKLM\SOFTWARE\Symantec\Symantec Endpoint Protection

Anahtarı bulunmakta bende keşif yaparken bu anahtarı kullanıyor olacağım. Yukarıdaki resimde görüldüğü gibi key için tanımlamaları yaptım. Diğer alanlar içinde aynı yolu kullanabilirsiniz.

Gerekli tanımlamaları yaptıktan sonra Next ile bir sonraki adıma geçiyoruz.

Bu penceremizde ise bir önceki adımda tanımladığımız registry değerleri için eşitleme seçeneklerini yapıyor olacağız. Ben bu adımda Symantec Endpoint Protection uygulaması için keşif işlemi yapmak istediğimden yine bir önceki adımda tanımladığım anahtar değerinin varlığını kontrol ettim. Eğerki bahsedilen anahtar sunucudaki registry altında var ise Symantec Endpoint Protection bulunduğu anlamına geliyor. Next diyerek bir sonraki adıma geçiyoruz.

Gelen ekran aslında bizim için en önemli ekranlardan bir tanesi. Oluşturmuş olduğumuz Class ı seçiyoruz. Seçtikten sonra yine Class içerisinde oluşturduğumuz property ler burada görünüyor.

Yukarıdaki resimde de görüldüğü üzere ve register altından sorguladığımız değerlerimizi gerekli yerlere map edeceğiz.

Bunun için

Version bilgisi için $Data/Values/Version$

Application Name için $Data/Values/ApplicationName$

Service Name için $Data/Values/ServiceName$

Bilgilerini giriyoruz ve finish ile işimizi bitiriyoruz.

Oluşturmuş olduğumuz management packimizi System Center Operation Manager 2012 uygulamamıza Export edeceğiz.Oluşturmuş olduğumuz management packi kaydederek manuel olarakda Import edebiliriz.Ben SCOM 2012 sunucumun olduğu ortamda çalıştığım için direk Authoring Tool consoleden Export işlemini yapacağım.Bunun için Export MP to Management Group seçimini yapıyorum.

ve scom2012 uygulamamın kurulu olduğu sunucuya yukarıda ki resimde görüldüğü üzere connection sağlayacak ve managament packi uyguluyor olacak.

Management Pack yüklendikten sonra SCOM 2012 uygulamamız da Monitoring tabına geçiyoruz. Monitoring tabı altında bulunan Discovered Inventory alanını seçiyorum.Sağ tarafta bulunan Task panelinden Change Target Type seçimini yapıyorum.Gelen Search ekranında oluşturmuş olduğumuz management pack’i seçerek ok diyoruz.

Yukarıdaki resimde görüldüğü üzere Symantec Endpoint Protection yüklü olan sunucular keşfedilmiş ve bizlerin tanımlamış olduğu Propertylerde dolmuş durumda.

İşimiz elbetteki bitmedi bizler şu anda symantec endpoind protection uygulamasının yüklü olduğu sunucuları sadece keşfettik herhangi bir monitoring(izleme) yapılmamakta. Makalemizin ikinci bölümünde managament pack içerisinde Monitoring,Rule ,Presentation gibi kısımları tanımlıyor olacağız.

Yazan: Yenal TIRPANCI (Eczacıbaşı Bilişim)