ZENworks for Desktopsでのインベントリデータベーススキーマ

次の節では、データベーススキーマクラスおよびZENworks for Desktopsで使用するためのCIMスキーマの拡張と関連付けについて説明します。これらの拡張では、そのスキーマ名としてZENworksまたはManageWiseを使用します。 ZENworks.classnameはZENworksスキーマの拡張クラスを示し、ManageWise.classnameはManageWiseスキーマの拡張クラスを示します。

次の節は、ZENworks for Desktops 4.xデータベーススキーマの理解に役立ちます。


ZENworks for DesktopsでのCIMスキーマ実装のケーススタディ

次の構成は、特定の割り込み番号を持つ2つのパラレルポートを備えたインベントリ対象ワークステーションを示しています。

次のスキーマ図で、CIM_UnitaryComputerSystemは管理対象のインベントリシステムを表します。

この図では、クラスCIM.PointingDeviceは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとCIM.PointingDeviceを参照するSystemDevice.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対多です。つまり、コンピュータシステムには複数のポインティングデバイスを接続できます。

クラスCIM.IRQは、関連付けCIM.AllocatedResourceによってCIM.PointingDeviceに関連付けられています。DependentはCIM.PointingDeviceを参照し、AntecedentはCIM.IRQを参照します。

クラスZENworks.ZENKeyboardは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとZENworks.ZENKeyboardを参照するSystemDevice.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対1です。つまり、コンピュータシステムにはキーボードを1台だけ接続できます。

クラスZENworks.BIOSは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとZENworks.BIOSを参照するSystemBIOS.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対1です。つまり、コンピュータシステムはBIOSを1つだけ持つことができます。

クラスCIM.ZENworks.ParallelPortは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとCIM.ZENworks.ParallelPortを参照するSystemDevice.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対多です。つまり、コンピュータシステムは複数のパラレルポートを持つことができます。

クラスZENworks.BUSは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとZENworks.BUSを参照するSystemBUS.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対1です。つまり、コンピュータシステムはBUSを1つだけ持つことができます。

クラスManageWise.Userは、CurrentLoginUserとLastLoginUserによってCIM.UnitaryComputerSystemに関連付けられています。CurrentLoginUserでは、Userの特定のインスタンスは、インベントリ対象ワークステーションに現在ログインしているユーザを表します。LastLoginUserでは、Userの特定のインスタンスは、インベントリ対象ワークステーションに最後にログインしたユーザを表します。

クラスCIM.IRQは、関連付けCIM.AllocatedResourceによってCIM.ParallelPortに関連付けられています。DependentはCIM.ParallelPortを参照し、AntecedentはCIM.IRQを参照します。


CIM_UnitaryComputerSystemとその関連付けのスキーマ図

スキーマ図は次の内容を示しています。

その他のクラスもすべて同様の表記に従います。その他のクラスのスキーマ図については、ZENworks for DesktopsのCIMと拡張スキーマのスキーマ図を参照してください。


スキーマ図の凡例

スキーマ図を読むための凡例は次のとおりです。

CIMスキーマについての詳細は、DMTFのWebサイトにあるCIM 2.2スキーマの仕様を参照してください。


ZENworks for DesktopsのCIMクラスと拡張クラス

次の表は、ZENworks for Desktopsが使用するCIMクラスと拡張クラスを示しています。

ZENworks for DesktopsのCIMクラスと拡張クラス クラスモデリングの詳細説明

CIM.PointingDevice

管理対象システムで利用可能なポインティングデバイス。主にマウスのモデリングに使用します。

ZENworks.SystemInfo

シリアル番号や備品タグなど、システムを識別するための詳細。

ZENworks.PointingDeviceDeviceDriver

ポインティングデバイスと共にインストールされるデバイスドライバ。

ZENworks.SerialPort

管理対象システムのシリアルポート。

ZENworks.ParallelPort

管理対象システムのパラレルポート。

ZENworks.ZENKeyboard

システムのキーボードのプロパティをモデリングする属性。

ZENworks.BIOS

システムのBIOSソフトウェア。

ZENworks.Bus

システムのシステムバス。

ManageWise.User

インベントリ対象ワークステーションにログインしたユーザの詳細。

ManageWise.MSDomainName

Windows NT 4インベントリ対象ワークステーションが接続されているドメインの名前。

ManageWise.NDSName

Novell eDirectoryで、管理されているインベントリ対象ワークステーションが登録されているDN名とツリー。

CIM.VideoBIOSElement:

ビデオドライバ。

CIM.Processor

インベントリ対象ワークステーションのプロセッサ。

ZENworks.Videoadapter

モニタとモニタに接続しているアダプタのプロパティ。

ZENworks.ZENOperatingSystem

オペレーティングシステムの詳細。

ZENworks.InventoryScanner

管理されているインベントリ対象ワークステーションのハードウェアとソフトウェアの詳細をスキャンしたInventory Scannerの詳細。

ZENworks.NetwareClient

インベントリ対象ワークステーションのNetWareクライアントのバージョン。

CIM.Product

管理対象システムにインストールされているソフトウェア。主要属性は、製品名、ベンダ、およびバージョンです。

ZENworks.ZENNetworkAdapter

ネットワークアダプタのプロパティ情報。

ZENworks.NetworkAdapterDriver

ネットワークカードアダプタのドライバ情報。

CIM.IPProtocolEndpoint

インベントリ対象ワークステーションのIPアドレス。

CIM.IPXProtocolEndpoint

インベントリ対象ワークステーションのIPXTMアドレス。

CIM.LANEndpoint

アクティブなMACアドレス。

ManageWise.DNSName

インベントリ対象ワークステーションのDNS名。

ZENworks.SoundAdapter

インベントリ対象ワークステーションのマルチメディアアダプタの説明。

ZENworks.ZENPOTSModem

モデムデバイスの物理的設定。

CIM.DMA

システムのDMAチャネルの情報。

CIM.CacheMemory

設定済みシステムキャッシュの情報。

CIM.IRQ

システムの割り込みチャネルとそのステータスのリスト。特定の割り込み番号を使用するデバイスにも関連付けられています。

ZENworks.MotherBoard

インベントリ対象ワークステーションのマザーボードの情報。

CIM.PowerSupply

インベントリ対象ワークステーションの電源ユニットの情報。

CIM.Battery

システムバッテリの物理的詳細。

CIM.Card

システムボードにマウントされているアダプタカードの詳細。

CIM.Slot

システムボードで利用可能な拡張スロット。

ZENworks.StoragePhysicalMedia

ハードディスク、フロッピーディスクドライブ、CDドライブなど、インベントリ対象ワークステーション上のストレージデバイスの物理的情報。

ZENworks.LogicalDiskette

フロッピーディスクドライブにマッピングされているドライブ。

ZENworks.PhysicalDiskette

フロッピーディスクドライブをモデリングするためにZENworks.StoragePhysicalMediaから派生。

ZENworks.PhysicalDiskDrive

ハードディスクをモデリングするためにZENworks.StoragePhysicalMediaから派生。

ZENworks.LogicalDiskDrive

ハードディスク上のローカルドライブの情報。

CIM.LocalFileSystem

Windowsサーバにインストールされているローカルファイルシステムの情報。

ZENworks.PhysicalCDROM

CDドライブをモデリングするためにZENworks.StoragePhysicalMediaから派生。

ZENworks.WinOperatingSystem

Windowsオペレーティングシステムの詳細。

ZENworks.ZENDiskDrive

固定またはリムーバブルディスクドライブの詳細。

ZENworks.LogicalCDROM

CDドライブにマッピングされているドライブ。


ZENworks for DesktopsのCIMと拡張スキーマのスキーマ図

次のCIMと拡張スキーマのスキーマ図は、ZENworks for Desktopsのインベントリデータベースをモデリングしたものです。

次のスキーマ図で、CIM_UnitaryComputerSystemは管理対象のインベントリシステムを表します。

この図では、クラスCIM.PointingDeviceは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとCIM.PointingDeviceを参照するSystemDevice.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対多です。つまり、コンピュータシステムには複数のポインティングデバイスを接続できます。

クラスCIM.IRQは、関連付けCIM.AllocatedResourceによってCIM.PointingDeviceに関連付けられています。DependentはCIM.PointingDeviceを参照し、AntecedentはCIM.IRQを参照します。

クラスZENworks.ZENKeyboardは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとZENworks.ZENKeyboardを参照するSystemDevice.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対1です。つまり、コンピュータシステムにはキーボードを1台だけ接続できます。

クラスZENworks.BIOSは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとZENworks.BIOSを参照するSystemBIOS.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対1です。つまり、コンピュータシステムはBIOSを1つだけ持つことができます。

クラスCIM.ZENworks.ParallelPortは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとCIM.ZENworks.ParallelPortを参照するSystemDevice.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対多です。つまり、コンピュータシステムは複数のパラレルポートを持つことができます。

クラスZENworks.BUSは、CIM.UnitaryComputerSystemを参照するSystemDevice.GroupComponentとZENworks.BUSを参照するSystemBUS.PartComponentの関連付けCIM.SystemDeviceによって、CIM.UnitaryComputerSystemに関連付けられています。この2つのクラスの関係は1対1です。つまり、コンピュータシステムはただ1つのBUSを持つことができます。

クラスManageWise.Userには、CIM.UnitaryComputerSystemとの間に、CurrentLoginUserおよびLastLoginUserという2つの関連付けがあります。CurrentLoginUserでは、Userの特定のインスタンスは、インベントリ対象ワークステーションに現在ログインしているユーザを表します。LastLoginUserでは、Userの特定のインスタンスは、インベントリ対象ワークステーションに最後にログインしたユーザを表します。

クラスCIM.IRQは、関連付けCIM.AllocatedResourceによってCIM.ParallelPortに関連付けられています。DependentはCIM.ParallelPortを参照し、AntecedentはCIM.IRQを参照します。


CIM_UnitaryComputerSystemと拡張スキーマモデルのスキーマ図


CIM_UnitaryComputerSystemのスキーマ図


CIM_UnitaryComputerSystemのスキーマ図


CIM_UnitaryComputerSystemのスキーマ図


CIM_UnitaryComputerSystemのスキーマ図


CIM_UnitaryComputerSystemのスキーマ図


カスタムインベントリスキーマ

データベース内でカスタムインベントリ属性には次のクォリファイアがあります。

クォリファイア 説明

Name

カスタム属性の名前。

Value

カスタム属性に割り当てられた値。

Type

カスタム属性のデータタイプ。ZENworks for Desktops 4.xでは、カスタム属性は「String」タイプとしてのみ処理されます。

ClassName

カスタム属性が関連付けられるインベントリクラス(テーブル)。

Instance

任意のカスタム属性に割り当てられた値の数。ZENworks for Desktops 4では、カスタム属性に複数の値を割り当てることはできません。

ID

カスタム属性が関連付けられるインベントリオブジェクトのID(id$)。

CID

カスタム属性名の固有ID。

カスタムインベントリ情報は、ZENworks.CustomNameとZenworks.CustomValueの2つのテーブルに保存されます。

ZENworks.CustomNameテーブルには、属性名、ID、タイプ(使用しません)、およびクラス名が含まれています。新しいカスタム属性が保存されると、属性IDは自動的に増加します。

次のテーブルは、ZENworks.CustomNameテーブルの例です。

ID 名前 クラス名

1

Cost

ZENworks.VideoAdapter

2

ProductUnit

CIM.UnitaryComputerSystem

Zenworks.CustomValueテーブルには、オブジェクトインスタンスID、属性値、および関連付けられているカスタム属性名の参照が含まれています。CustomValueテーブルでは、カスタム属性にはインベントリオブジェクトの異なるインスタンスに複数の値を設定できますが、インベントリオブジェクトの同じインスタンスに複数の値を設定することはできません。

次のテーブルは、Zenworks.CustomValueテーブルの例です。

ID インスタンス CID

28147497671065605

1

1

200.39

28147497671065606

1

1

345

69147497671045662

1

2

BAY-2

前例では、CustomNameテーブルにはCostとProductUnitの2つのカスタム属性があります。CustomValueテーブルには3つの行があります。そのうち2つは、ビデオアダプタのコストを示し、3つめの行はComputerSystemに直接割り当てられたProductUnit属性の値を示しています。


インベントリデータベースの照会例

次の照会例は、ZENworks for Desktopsインベントリデータベースからインベントリ情報を取得するためのものです。

関連付けられているスキーマクラスと属性の詳細については、ZENworks for DesktopsのCIMと拡張スキーマのスキーマ図のスキーマ図を参照してください。

  1. データベースからすべてのインベントリ対象ワークステーションの名前とIDを取得し、これらのワークステーションが登録されているeDirectoryツリーも取得します。次に、この照会を示します。
    SELECT u.id$,m.label,m.tree FROM managewise.NDSName 
    m,cim.UnitaryComputerSystem u,managewise.Designates s
    where s.Designation=m.id$and s.HOST=u.id$

    この照会では、ツリー名はコンピュータシステム名の一部です。

  2. データベース内のすべてのインベントリ対象ワークステーションの管理タグ、メーカー、モデル番号を取得します。次に、この照会を示します。
    SELECT m.Tag as AssetTag,m.Manufacturer,m.SerialNumber as ModelNumber FROM cim.UnitaryComputerSystem u,zenworks.SystemInfo m,cim.ComputerSystemPackage s WHERE s.Antecedent=m.id$ and s.Dependent=u.id$
  3. 'NOVELL_AUS' eDirectoryツリーに登録されているインベントリ対象ワークステーション'SJOHN164_99_139_79'にインストールされているすべてのMicrosoftアプリケーションおよびそのバージョンとIDを取得します。次に、この照会を示します。
    SELECT m.name,m.version,m.IdentifyingNumber FROM cim.Product m,cim.UnitaryComputerSystem u, zenworks.InstalledProduct s WHERE (s.Product=m.id$ and s.ComputerSystem=u.id$) AND u.name='SJOHN164_99_139_79.Novell_AUS'AND m.Vendor LIKE 'Microsoft%'
  4. インベントリ対象ワークステーション'SJOHN164_99_139_79.NOVELL_AUS'のプロセッサ情報を取得します。次に、この照会を示します。
    SELECT m.DeviceID,m.Family,m.Stepping,m.OtherFamilyDescription,m.MaxClockSpeed,m.CurrentClockSpeed,m.Role,m.UpgradeMethod FROM cim.Processor m,cim.UnitaryComputerSystem u,cim.ComputerSystemProcessor s WHERE (s.PartComponent=m.id$ and s.GroupComponent=u.id$) AND u.name='SJOHN164_99_139_79.Novell_AUS'
  5. インベントリ対象ワークステーション'SJOHN164_99_139_79.NOVELL_AUS'に使用するUnitaryComputerSystemのIDを取得します。次に、この照会を示します。
    SELECT id$ FROM CIM.UnitaryComputerSystem u,ZENworks.InventoryScanner m, CIM.InstalledSoftwareElement s  WHERE u.name='SJOHN164_99_139_79.Novell_AUS'AND m.id$=s.Software AND u.id$=s.System
  6. データベース内のインベントリ対象コンピュータの数を調べます。次に、この照会を示します。
    SELECT count(u.*) FROM CIM.UnitaryComputerSystem u,ZENworks.InventoryScanner m, CIM.InstalledSoftwareElement s  WHERE m.id$=s.Software AND u.id$=s.System
  7. 照会例5に示されている照会によって、特定のインベントリ対象ワークステーションに使用するUnitaryComputerSystemのIDが判明すると、照会例4を次のように変更できます。
    SSELECT m.DeviceID,m.Family,m.Stepping,m.OtherFamilyDescription,m.MaxClockSpeed,m.CurrentClockSpeed,m.Role,m.UpgradeMethod FROM cim.Processor m,cim.UnitaryComputerSystem u,cim.ComputerSystemProcessor s u.id$=? and s.PartComponent=m.id$ and s.GroupComponent=u.id$

    指定されたインベントリ対象ワークステーションのIDを、照会の「u.id」の値「?」と置き換えます。

  8. データベース内のすべてのインベントリ対象ワークステーションのIPアドレス、IPXアドレス、およびMACアドレスを一覧表示します。次に、この照会を示します。
    SELECT ip.Address, ipx.Address, mac.MACAddress FROM 
    cim.IPProtocolEndpoint ip, cim.IPXProtocolEndpoint ipx,
    cim.LANEndpoint mac, cim.UnitaryComputerSystem u,
    cim.HostedAccessPoint s WHERE (s.Dependent=ip.id$ and
    s.Antecedent=u.id$) AND (s.Dependent=ipx.id$ and
    s.Antecedent=u.id$) AND (s.Dependent=mac.id$ and
    s.Antecedent=u.id$)

    同じ照会を次のように変更して、特定のインベントリ対象ワークステーションの情報を取得します。

    SELECT ip.Address, ipx.Address, mac.MACAddress FROM 
    cim.IPProtocolEndpoint ip, cim.IPXProtocolEndpoint ipx,
    cim.LANEndpoint mac, cim.UnitaryComputerSystem u,
    cim.HostedAccessPoint s WHERE (s.Dependent=ip.id$ and
    s.Antecedent=u.id$) AND (s.Dependent=ipx.id$ and
    s.Antecedent=u.id$) AND (s.Dependent=mac.id$ and
    s.Antecedent=u.id$)AND u.id$=?

    照会例5に示されている照会を使用して、指定されたインベントリ対象ワークステーションのIDを取得し、そのIDを照会の「u.id」の値「?」と置き換えます。

  9. 指定されたインベントリ対象ワークステーションのハードディスクのドライブの名前とその他のプロパティを取得します。次に、この照会を示します。
    SELECT m.id$,n.id$,m.DeviceID,n.FileSystemSize, 
    n.AvailableSpace,m.VolumeSerialNumber,m.caption as
    VolumeLabel, n.FileSystemType FROM
    ZENworks.LogicalDiskDrive m,CIM.LocalFileSystem
    n,CIM.HostedFileSystem s,CIM.ResidesOnExtent r WHERE
    (s.GroupComponent=? and s.PartComponent=n.id$) AND
    (r.Antecedent=m.id$and r.Dependent=n.id$)
  10. データベースに保存されているすべてのカスタム属性情報を取得します。次に、この照会を示します。
    SELECT * FROM Zenworks.CustomInformation
  11. クラスCIM.UnitaryComputerSystemに関連付けられているカスタム属性情報をすべて取得します。照会は次のとおりです。
    SELECT * FROM Zenworks.CustomInformation WHERE extractClass(id) IN  (SELECT id FROM MW_DBA.t$Class WHERE ClassName='CIM.UnitaryComputerSystem')