Management Pack függőségek és hivatkozások

Ha találkoztál már az alábbi ablakkal és nem voltak egyértelmuek a látottak, akkor jó helyen jársz.

Egy kicsit menjünk vissza a kályhához.

Kétféle Management Pack létezik. Van Sealed (.MP) én van ami nem Sealed (.XML). Kicsit leegyszerusítve van olvasható és van írható-olvasható csomag.

Sealed csomagokat leggyakrabban a gyártók készítenek alapvetoen azért, hogy biztosítani tudják a kompatibilitást a késobbi csomagok esetén; másodsorban azért, hogy az integritást fenn tudják tartani. Sealed csomagot bárki tud gyártani, aki rendelkezik Strong Name-mel.

Unsealed csomagokat leggyakrabban a SCOM adminisztrátorok készítenek elsosorban azért, hogy a gyári csomagokban található alapbeállításokat felülbírálják; másodsorban azért, hogy egyedi szabályokat, monitorokat és egyéb beállításokat tároljanak benne. Unsealed csomagot bárki tud készíteni, aki rendelkezik Notepad-del :)

A Management Pack alapkoncepciókról általánosságban ebben a dokumentumban olvashatunk. Aki MP fejlesztésre adja a fejét az legalább egyszer olvassa el az említett irományt.

Az Operations Manager 2007-es verziójában minden egyedi felügyeleti megoldás készítésekor illetve a létezo szabályok felülbírálatakor (override) alapértelmezetten a Default Management Pack-et ajánlja fel a beállítások tárolására. Ez egy hibás döntés eredménye, melyet a 2012-es verzióban már javítottunk, így nincs többé alapértelmezetten felajánlott Management Pack.

2007


2012

A Microsoft által kiadott csomagok leírásában is kivétel nélkül ajánlásként szerepel, hogy a módosításokat egy dedikált csomagban tároljuk. Példának kiragadom most a DNS Management Pack leírását (https://technet.microsoft.com/en-us/library/dd187155.aspx):

„Most vendor management packs are sealed so that you cannot change any of the original settings in the management pack file. However, you can create customizations, such as overrides or new monitoring objects, and save them to a different management pack. By default, Operations Manager 2007 saves all customizations to the default management pack. As a best practice, you should instead create a separate management pack for each sealed management pack you want to customize.

Az oldal alapvetoen három okot említ, hogy miért ez a jó gyakorlat. Az elso és a harmadik nem szorul különösebb magyarázatra, viszont a másodikat egy kicsit körüljárnám. Ez azt írja, hogy:

„This dependency requires you to delete the management pack with customizations before you can delete the original management pack.”

Ez így igaz, viszont nem az az egyetlen megoldás, hogy eltávolítjuk az egyedi csomagot (sok esetben ez egyébként sem megvalósítható). Az én megoldásom az, hogy távolítsuk el a hivatkozásokat, amik a Sealed csomagokra vonatkoznak.

Egy szemlélteto példán keresztül bemutatom, hogy hol találjuk meg a hivatkozásokat és ezeket hogyan tudjuk eltávolítani. Egy egyszeru monitor beállításait fogjuk módosítani a Windows Server 2008 felügyeleti csomagban, letároljuk a módosítást a Default Management Pack-ben, majd megpróbáljuk eltávolítani az eredeti csomagot. Megvizsgáljuk a függoségeket, megkeressük a hivatkozást majd eltávolítjuk azt. Hajrá!

Elso lépésként módosítjuk a CPU Percentage Utilization monitor beállításait és egyszeruen kikapcsoljuk. A módosítást a Default Management Pack-ben tároljuk:

Ezt ellenorizhetjük is:

Továbbá azt is látjuk, hogy a Windows Server 2008 Operating System (Monitoring) csomagra van hivatkozás és nem tudjuk eltávolítani a Sealed csomagot:

Semmi baj, töröljük ki az elobb létrehozott beállítást. Ha most megnézzük az elobbi Override nézetet, akkor nem látjuk a beállítást, ellenben a függoségek között továbbra is szerepel a Default Management Pack. Ekkor jön a jogos kérdés, hogy hogyan lehet függoség a két csomag között, hogyha kitöröltem minden egyedi beállítást?

A válasz egyszeru: A beállítások törlodtek, de a hivatkozások nem. Ezt a következo lépésekkel azonban el tudjuk végezni:

1. Exportáljuk ki a hivatkozott egyedi csomagot (esetünkben ez a Default Management Pack)

2. Nyissuk meg a Microsoft.SystemCenter.OperationsManager.DefaultUser.xml fájlt a kedvenc szerkesztonkkel

3. Keressük meg az alábbi részt (az ID a lényeg):

<Reference Alias="Windows2"> <ID>Microsoft.Windows.Server.2008.Monitoring</ID> <Version>6.0.6989.0</Version> <PublicKeyToken>31bf3856ad364e35</PublicKeyToken> </Reference>

  1. Töröljük ki a teljes <Reference> részt

5. Mentsük el az .XML-t

6. Végül importáljuk vissza az Operations Manager-be

 

Ha most megnézzük a függoségeket láthatjuk, hogy nincs ott a Default Management Pack, ergo eltávolítható a Sealed csomag:

A fenti eljárást természetesen körültekintoen kell elvégezni. Aki nem komfortos a folyamatban az végezzen pár tesztet. Elsore ne a Default Management Pack legyen a cél, hanem egy erre a célra létrehozott teszt csomag, amivel nem csinálunk kárt, ha valami balul ütne ki.

- Marci