Common Information Model
A Common Information Model (CIM) egy számítástechnikai szabvány, amelyet információs rendszerek entitásainak gyártó és szolgáltatófüggetlen kezelésére fejlesztettek ki. Mivel a CIM objektumorientált, ezek az entitások objektumokkal reprezentálódnak. A CIM a WBEM (Web-based Enterprise Management) szabvány részét alkotja és áll egyrészt a specifikációból, amely a nyelvet, az elnevezéseket és a más management modellekre való leképezéseket definiálja, másrészt a sémából, amely nem más, mint a modell formális definíciója.
Specifikáció
[szerkesztés]A specifikáció definiálja azokat a fogalmakat és szabályokat, amelyekre a séma alapul. A specifikáció része egy objektumleíró nyelv, a Managed Object Format (MOF), amellyel magát a CIM sémát és annak termékspecifikus kiterjesztéseit definiálják. A fogalmak az UML-re alapulnak, így a CIM séma objektumorientált. A menedzselt elemek CIM osztályokkal, a köztük lévő kapcsolatok asszociációkkal reprezentálódnak. Az öröklődés felhasználásával általános alapelemeket definiálnak, s azokból származtatják a specifikusabb elemeket.
Osztályok
[szerkesztés]A MOF osztályok az objektumorientált programozásból ismert osztályfogalomnak felelnek meg. Tulajdonságaik és metódusaik lehetnek:
[Version("0.0.1"), Description ( "Ez egy nagyon egyszerű, metódus nélküli osztály.")] class KiadoIngatlan { uint16 Alapterulet; uint16 HaviBerletiDij; boolean IrodanakAlkalmas; }
Tulajdonságok
[szerkesztés]MOF osztály tulajdonsága az alábbi alaptípusok valamelyike lehet:
Adattípus | Jelentés |
---|---|
uint8 | Előjel nélküli 8 bites egész |
sint8 | Előjeles 8 bites egész |
uint16 | Előjel nélküli 16 bites egész |
sint16 | Előjeles 16 bites egész |
uint32 | Előjel nélküli 32 bites egész |
sint32 | Előjeles 32 bites egész |
uint64 | Előjel nélküli 64 bites egész |
sint64 | Előjeles 64 bites egész |
string | UCS-2 sztring |
boolean | Logikai érték |
real32 | IEEE 4 bájtos lebegőpontos szám |
real64 | IEEE 8 bájtos lebegőpontos szám |
datetime | dátumot tartalmazó sztring típus |
<osztálynév> ref | Referencia |
char16 | 16 bites UCS-2 karakter |
Metódusok
[szerkesztés]A metódusok az objektumorientált programozásból ismert metódusoknak felelnek meg. A metódus szignatúrája (fejléce) tartalmazza a metódus nevét, visszatérési értékét, valamint az opcionális input és output paramétereket. Metódus visszatérési értéke valamely alaptípus lehet, nem lehet tömb. Metódus paramétere az alaptípusokon kívül lehet még azokból képzett tömb is illetve objektumreferencia is. Álljon itt egy egyszerű példa egy metódus fejlécére:
uint64 getMagyarAllamadossag(IN datetime valamiDatum);
Séma
[szerkesztés]A séma egy fogalmi séma, amely az informatikai környezet elemeinek objektumorientált reprezentációját írja le. A CIM-et gyakran úgy jellemzik, hogy lehetővé teszi a rendszerelemek állapotának lekérdezését. Ennél többről van szó, hiszen a CIM nem csak a lekérdezés eszköze, hanem lehetőséget ad a menedzselt elemek manipulálására is. A Common Information Model segítségével a management szoftvert elegendő egyszer megírni, és az univerzális használható lesz minden CIM-et implementáló rendszerrel anélkül, hogy külön fejlesztésre lenne szükség. A CIM séma megalkotásakor a legtöbb mai informatikai rendszerelemre gondoltak, úgy mint például a számítógép rendszerek, operációs rendszerek, hálózatok, middleware és a storage.
A CIM séma közös alapot biztosít ezen adminisztrált elemek reprezentálására. Mivel a legtöbb rendszerelem termék- illetve gyártóspecifikus, ezért a CIM séma kiterjeszthető, hogy tetszőleges tulajdonságok és viselkedések leírhatóak legyenek vele. A CIM séma három rétegű. A lealsó réteg a Core Model, amely a rendszermenedzselés minden területét érintő, átfogó osztályokat és asszociációkat tartalmazza. Erre épül, a Common Models réteg, amely a rendszermenedzselés egyes területeit hivatott lefedni. A legfelső réteg az Extension Schema, amely a technológiaspecifikus kiterjesztések definiálására alkalmas. Az ábrán látható a három említett réteg viszonya:
Extension Schema |
Common Models |
Core Model |
Core Model
[szerkesztés]A Core Model definiálja a menedzselt környezet alapvető osztályait és asszociációit. Minden osztály a CIM_ManagedElement osztály leszármazottja. Az áttekinthetőség végett a Core Modelt modulokba szervezik a következőképpen:
Modul | Tartalom |
---|---|
Capabilities | Ősosztály a különböző menedzselt elemek funkcióinak leírására. |
Collection | Collection osztályok. |
CoreElements | Az alapvető CIM osztályok (például ManagedElement, ManagedSystemElement, LogicalElement, System, Service, …), és alapvető asszociációk (például Dependency, Component, LogicalIdentity, …) |
Device | A hardverek reprezentációja. |
MethodParms | Metódusparaméterek |
Physical | Fizikai elemek reprezentációja |
PowerMgmt | Energiagazdálkodás |
ProductFRU | Termékek |
Qualifiers | Minősítők |
Redundancy | A LogicalDevice-ból származtatott osztály, amely a storage-ek kezelését általánosítja. |
Service | Szolgáltatások. |
Settings | Beállítások. |
Software | Szoftverkomponensek kezelése. |
Statistics | Statisztikai információk kinyerése az egyes menedzselt elemekről. |
StorageExtent | A LogicalDevice-ból származtatott osztály storage-ok kezelésére. |
Common Models
[szerkesztés]A Common Models a rendszermenedzselés különböző területeit fedi le, azonban nem tér ki konkrét technológiákra és implementációkra. A modellt jelenleg 12 területre osztják:
Terület | Tartalom |
---|---|
Applications | Alkalmazások |
Event | Eseménykezelés |
Network | Hálózatok menedzselése |
Support | Terméktámogatás |
Database | Adatbáziskezelés. |
Interop | A webalapú vállalati menedzsment (Web-Based Enterprise Management, WBEM) |
Physical | A fizikai eszközkészlet kezelése. Ide tartoznak a különböző bővítőkártyák és kábelezések leírásai. |
Systems | Számítógéprendszerek |
Devices | Hardverelemek |
Metrics | Metrikák |
Policy | Policy-k, irányelvek kezelése. Gyakori példa erre a biztonsági irányelvrendszer, idegen szóval security policy. |
User | Felhasználói azonosítók, felhasználói fiókok kezelése. |
Extension Schema
[szerkesztés]Az Extension Schema lehetőséget ad termékspecifikus funkciók támogatására. A kiterjesztés lehet:
- Új tulajdonság vagy metódus hozzáadása létező séma létező osztályához.
- Új osztály hozzáadása létező sémához.
- Új névtér és séma létrehozása.
További információk
[szerkesztés]- A legtöbb DMTF (Distributed Management Task Force) specifikáció a CIM-re alapul (például a WBEM és a SMASH).
- A CIM séma első verzióját 1997. április 9-én adta ki a DMTF.
- Számos gyártó kínál különböző CIM implementációkat különböző formákban. Például a Windows Management Instrumentation API, ami a Windows 2000-ben jelent meg először, a CIM séma 2. verziójára alapul.