Objet LUN

[À compter de Windows 8 et Windows Server 2012, l’interface COM du service de disque virtuel est remplacée par l’API gestion du stockage Windows.]

Un objet LUN (numéro d’unité logique) modélise une unité logique d’espace de stockage adressable créée par un fournisseur de matériel et exposée par un sous-système. Chaque LUN comprend au moins un plex de LUN, qui est à son tour composé d’extensions d’un ou de plusieurs lecteurs.

LUN Types

VDS prend en charge cinq types d’unités logiques : simple, étendue, rayée, mise en miroir et rayée avec parité. Les lun simples, étendus et entrelacés ne sont pas tolérants aux pannes; Les lun mis en miroir et de parité sont tolérants aux pannes. Le reste de cette section décrit chacun des types de LUN VDS.

  • Un lun simple est un LUN non tolérant aux pannes qui est constitué d’une seule extension de lecteur contiguë à partir d’un seul lecteur. L’étendue contiguë peut comprendre une seule plage de blocs ou plusieurs plages de blocs liées entre elles.
  • Un numéro d’unité logique étendue est un LUN non tolérant aux pannes constitué de plusieurs étendues discontigues provenant de plusieurs lecteurs. Les données sont écrites de manière linéaire dans chacune des extensions sur le premier lecteur jusqu’à ce que toutes les premières extensions de lecteur soient remplies, puis à chacune des extensions sur le deuxième lecteur, et ainsi de suite. Les lun étendus permettent une utilisation efficace de l’espace disque dans les sous-systèmes qui comprennent des lecteurs de différentes tailles.
  • Un LUN entrelacé est un LUN non tolérant aux pannes constitué de plusieurs étendues contiguës, entrelacées et provenant de plusieurs lecteurs. Les lun par bandes utilisent une configuration RAID-0, de sorte que les données sont « réparties » de façon cyclique sur les extensions sur les lecteurs contributeurs. Les lun à bandes fonctionnent mieux avec les lecteurs de même taille, modèle et fabricant.
  • Les numéros logiques mis en miroir sont des numéros logiques tolérants aux pannes qui assurent la récupération d’urgence en dupliquant les données sur plusieurs plex de LUN. Chaque plex dans un numéro logique mis en miroir contient une copie des données stockées sur le plex d’origine. Chacun des plexes réside sur un lecteur distinct. Toutes les données écrites dans un numéro logique mis en miroir sont écrites simultanément dans chacun de ses plexes. Si l’un des lecteurs contributeurs échoue, le plex sur ce lecteur devient indisponible, mais le système continue à fonctionner à l’aide du ou des plexes non affectés. Un numéro d’unité logique mis en miroir peut avoir n’importe quel nombre de plexes.
  • Les lun à bandes avec parité sont des LUN à tolérance de panne qui assurent la récupération d’urgence en répartissant les données de parité par intermittence sur trois lecteurs ou plus. Si l’un des lecteurs contributeurs échoue, les données perdues peuvent être recréées à partir des données restantes et de la parité.

Création d’un numéro d’unité

VDS prend en charge quatre modèles par lesquels les applications peuvent créer des lun : explicitement dirigés, partiellement dirigés, automagic et spécifiques au fournisseur. Tous les fournisseurs de matériel doivent prendre en charge la création de LUN dirigée explicitement et partiellement, et sont fortement encouragés à prendre en charge la création automatique de LUN. (La création d’un numéro d’unité logique propre au fournisseur n’entre pas dans le cadre de ce guide.)

La création d’un numéro d’unité logique dirigé explicitement permet à l’appelant de spécifier tous les attributs du numéro d’unité logique. La création de lun partiellement dirigé permet à l’appelant de spécifier uniquement les attributs qui présentent un intérêt particulier, puis permet au fournisseur de choisir le reste. La création automatique d’un numéro d’unité logique consiste à permettre à l’appelant de spécifier simplement le type et la taille des LUN, ainsi qu’un ensemble d'« indicateurs automagiques » (préférences prédéfinies pour les attributs d’unité logique), puis d’autoriser le fournisseur à créer automatiquement le numéro d’unité logique.

Masquage du numéro d'unité logique

VDS prend en charge le démasquage de LUN pour les sous-systèmes qui offrent cette fonctionnalité. Tous les lun sont exposés à l’ordinateur sur lequel le fournisseur s’exécute. Le démasquage de LUN permet à un appelant de « démasquer » les numéros logiques sélectionnés sur d’autres ordinateurs du réseau. Si vous démasquez un numéro d’unité logique sur un ordinateur, l’ordinateur a accès au numéro d’unité logique. Les ordinateurs pour lesquels un numéro d’unité logique est masqué ne le font pas.

Un numéro d’unité logique non masqué expose les interfaces IVdsLun et IVdsDisk à l’hôte local. Vous pouvez utiliser IVdsDisk pour ajouter un numéro d’unité logique à un pack de fournisseurs de logiciels, créer et supprimer des volumes, attribuer des lettres de lecteur, etc. Pour plus d’informations sur les opérations effectuées sur un disque, consultez l’objet Disk.

Une fois qu’un numéro d’unité logique est masqué sur un ordinateur cible ou masqué à partir d’un ordinateur cible, la visibilité du numéro d’unité logique sur cet ordinateur ne peut pas changer tant qu’une nouvelle analyse de bus n’est pas effectuée. L’application VDS sur l’ordinateur cible lance la nouvelle analyse du bus en appelant IVdsService::Reenumerate. Le lancement de la nouvelle analyse du bus est de la responsabilité de l’application VDS, et non du fournisseur de matériel.

LUN Multipathing

Les fournisseurs de matériel qui prennent en charge les E/S multipath (MPIO) peuvent définir des stratégies d’équilibrage de charge sur les chemins entre un numéro d’unité logique et l’hôte local. Les lun qui prennent en charge cette fonctionnalité exposent l’interface IVdsLunMpio à l’hôte local.

Utilisation des lun

Utilisez la méthode IVdsSubSystem::CreateLun pour créer un objet LUN. Vous pouvez interroger les lun qui sont exposés par un sous-système spécifique en appelant la méthode QueryLuns , également exposée par IVdsSubSystem. Un appelant peut obtenir un pointeur vers un numéro d’unité logique spécifique en sélectionnant l’objet LUN souhaité dans l’énumération retournée par QueryLuns. Avec un objet LUN, vous pouvez définir l’état du numéro d’unité logique . requête pour tous les contrôleurs actifs, plexes et indicateurs automagiques ; étendre et réduire le numéro d’unité logique ; ajouter et supprimer des plexes ; définir des masques; appliquer des indicateurs ; et supprimez le numéro d’unité logique.

En plus d’un identificateur d’objet, d’un nom et d’un numéro de série, les propriétés de l’objet LUN incluent le type, la taille, l’état, l’intégrité, l’état de transition et les indicateurs de lun ; une liste de démasquage ; et un paramètre de priorité de reconstruction.

Le tableau suivant répertorie les interfaces, les énumérations et les structures associées.

Type Élément
Interfaces qui sont toujours exposées par cet objet IVdsLun
Interfaces toujours exposées par cet objet dans les fournisseurs Fibre Channel VDS 1.1 et 2.0 uniquement IVdsLunControllerPorts
Interfaces toujours exposées par cet objet dans les fournisseurs iSCSI VDS 1.1 et 2.0 uniquement IVdsLunIscsi
Interfaces qui peuvent être exposées par cet objet* IVdsMaintenance, IVdsLunMpio, IVdsLunNaming et IVdsLunNumberWindows Server 2008, Windows Vista et Windows Server 2003 : L’interface IVdsLunNumber n’est pas prise en charge.
Énumérations associées VDS_LUN_FLAG et VDS_LUN_STATUS, et VDS_LUN_TYPE
Structures associées VDS_LUN_INFORMATION, VDS_LUN_PROP et VDS_LUN_NOTIFICATION

* Consultez Objet disque pour une interface supplémentaire (IVdsDisk) exposée si le numéro d’unité logique est masqué en tant que disque sur l’ordinateur hôte local.

Objets du fournisseur de matériel

Pack, objet

Objet Disk

IVdsLun

IVdsDisk

Ajout d’une lettre de lecteur à un numéro d’unité logique