Pack-Objekt

[Ab Windows 8 und Windows Server 2012 wird die COM-Schnittstelle des Virtuellen Datenträgerdiensts von der Windows Storage Management-API abgelöst.]

Ein Paketobjekt modelliert eine Datenträgergruppe, eine Sammlung von Datenträgern und Volumes, die vom einfachen oder dynamischen Softwareanbieter verwaltet werden. Ein Anbieter kann mehrere Packobjekte enthalten.

Mithilfe der API können Anwendungen VDS anweisen, einem Paket einen oder mehrere Datenträger hinzuzufügen, die Datenträger an Volumes zu binden und die Datenträger optional als Einheit zwischen Hosts zu verschieben. Sie können ein vorhandenes Volume nicht in ein Paket importieren.

Hinweis

Die Mitgliedschaft in einem Paket impliziert keine Konsistenz zwischen Datenträgern in Bezug auf Leistung, Medien, Verbindungsprotokoll oder andere Merkmale.

 

Datenträgerobjekte werden entweder nicht zugeordnet und von VDS verwaltet, oder sie sind Mitglieder genau eines Pakets. Der Basissoftwareanbieter kann über 0 oder mehr Pakete verfügen, die jeweils einen einzelnen Basisdatenträger enthalten. Der Anbieter erzwingt keine Einschränkungen für die Anzahl der Volumes auf einem Basisdatenträger. Der dynamische Anbieter kann 0 oder mehr Pakete mit mehreren dynamischen Datenträgern in jedem Paket enthalten. Dieser Anbieter schränkt die Anzahl der Volumes auf einem Datenträger basierend auf der Größe von 1 Megabyte der LDM-Datenbank (Logical Disk Manager) ein. Da ein Volume über mindestens einen Plex- und einen Datenträgerumfang verfügt, beträgt die maximale Anzahl von Volumes für ein Paket ungefähr 1000. Die maximale Anzahl sinkt, wenn die Anzahl der Datenträger steigt.

Zusätzlich zu Datenträgerobjekten kann ein Paket ein oder mehrere LUN-Objekte enthalten, die von einem oder mehreren Hardwareanbietern implementiert werden. Für den Windows-Kernel ist eine LUN nur ein anderer Datenträger. (LUN-Objekte müssen auf dem Computer entlarvt werden, der das Anbieterprogramm ausführt.) Wenn der Datenträger eine LUN ist, macht das LUN-Objekt sowohl die IVdsLun - als auch die IVdsDisk-Schnittstelle verfügbar. Ein Packobjekt verwendet IVdsDisk anstelle von IVdsLun, um die LUNs in einem Paket aufzulisten. Eine ausführlichere Beschreibung einer LUN finden Sie im LUN-Objekt.

Die folgende Abbildung zeigt ein Paket mit zwei Elementen: einem Datenträger und einer LUN. Eine Anwendung kann diese Objekte einem Onlinepaket hinzufügen und ein Volume aus den zugrunde liegenden Datenträger- und Laufwerksblöcken erstellen, die durch Spindeln dargestellt werden.

Diagramm, das ein

Verwenden Sie die IVdsSwProvider::CreatePack-Methode , um ein neues Packobjekt zu erstellen. Aufrufer können einen Zeiger auf ein bestimmtes Paket abrufen, indem sie das gewünschte Paketobjekt aus der Enumeration auswählen, die von der IVdsSwProvider:: QueryPacks-Methode zurückgegeben wird. Mit einem Packobjekt können Sie die Elemente eines Pakets hinzufügen, entfernen oder ersetzen. Wenn Sie einem Paket ein Datenträgerobjekt hinzufügen, initialisiert VDS einen Datenträger, um die Bindung aller vorhandenen Volumes aufzuheben. Im Gegensatz dazu behält eine LUN alle Bindungsdetails bei, wenn sie einem Paket hinzugefügt wird. Wenn Sie den letzten Datenträger aus einem Paket entfernen, löscht VDS das Packobjekt, wenn der Aufrufer den letzten Verweis auf das Objekt freigibt.

Zu den Objekteigenschaften gehören ein Objektbezeichner, ein Name, ein Paketstatus und Flags. Ein Onlinepaket steht zur Konfiguration und Verwendung zur Verfügung, ein Offlinepaket ist nicht verfügbar. VDS unterstützt eine beliebige Anzahl von Online- und Offlinepaketen.

Windows Server 2003: Unterstützt jeweils nur ein Onlinepaket.

VDS erzwingt ein Quorum von Onlinedatenträgern innerhalb eines Pakets. Das Quorum bestimmt, ob ein Paket über einen Onlinestatus verfügen kann, und verhindert, dass mehrere Hosts demselben Paket einen Onlinestatus gewähren. Wenn die Anzahl der Online-Datenträger in einem Paket unter das Quorum (n/2 + 1) fällt, wird das Onlinepaket von VDS offline geschaltet.

In der folgenden Tabelle sind verwandte Schnittstellen, Enumerationen und Strukturen aufgeführt.

type Element
Schnittstellen, die immer von diesem Objekt verfügbar gemacht werden IVdsPack und IVdsPack2*.
Zugeordnete Enumerationen VDS_PACK_FLAG und VDS_PACK_STATUS.
Zugeordnete Strukturen VDS_PACK_PROP und VDS_PACK_NOTIFICATION.

 

*Windows Server 2003: Diese Schnittstelle wird erst unter Windows Vista unterstützt.

Softwareanbieterobjekte

LUN-Objekt

IVdsLun

IVdsDisk