Menu
InformatiWeb Pro
  • Index
  • Admin système
  • Virtualisation

Connexion

Inscription Mot de passe perdu ?
US
  • Windows Server
    • WMS 2012
    • WS2012 R2
    • WS2016
  • Citrix
    • Citrix NetScaler Gateway
    • Citrix XenApp / XenDesktop
    • Citrix XenServer
  • VMware
    • VMware ESXi
    • VMware vSphere
    • VMware Workstation
  • Microsoft
    • Hyper-V
  • RAID
    • Adaptec SmartRAID
  • UPS
    • APC Back-UPS Pro
  • InformatiWeb Pro
  • Virtualisation
  • VMware
  • Utiliser les APIs VMware vSphere (6.7) intégration de baie (VAAI)
  • VMware
  • VMware vCenter Server (VCSA), VMware vSphere
  • 27 septembre 2024 à 13:14
  • InformatiWeb
  • 1/7

Utiliser les APIs VMware vSphere (6.7) intégration de baie (VAAI)

Les APIs VMware vSphere : intégration de baie (VAAI), vous pouvez déléguer certaines opérations liées au stockage à votre baie de stockage si celle-ci supporte le VAAI.

  1. Qu'est-ce que VAAI (vSphere APIs Array Integration) ?
  2. Primitives de stockage VAAI en mode blocs (iSCSI, FC et FCoE)
    1. Test atomique et ensemble (ATS)
    2. XCOPY (copie étendue)
    3. Écrire le même (zéro)
    4. UNMAP
    5. UNMAP depuis un OS invité
  3. Vérifier la compatibilité de la baie de stockage avec VAAI
  4. Vérifier le support de VAAI depuis le VMware vSphere Client
  5. Création d'une VM sans support de VAAI
  6. Création d'une VM avec support de VAAI
  7. Test de la primitive UNMAP
    1. Télécharger HPE StoreVirtual
    2. Déployer HPE StoreVirtual Storage 12.8
    3. Télécharger et installer manuellement la console CMC (facultatif)
    4. Ajouter un serveur HPE StoreVirtual Storage dans la console CMC
    5. Configurer le matériel de votre serveur HPE StoreVirtual Storage
    6. Créer un cluster
    7. Activer la réclamation d'espace
    8. Ajouter un serveur iSCSI à votre serveur HPE StoreVirtual Storage
    9. Télécharger et installer le script HPE iSCSI Rescan
    10. Configurer l'adaptateur iSCSI de l'hôte VMware ESXi
    11. Créer une banque de données iSCSI
    12. Test du UNMAP sur une banque de données
    13. Test du UNMAP depuis l'OS invité

1. Qu'est-ce que VAAI (vSphere APIs Array Integration) ?

VAAI fournit une assistance matérielle aux fournisseurs de stockage.
En effet, les opérations liées au stockage (telles que le clonage ou la migration d'une VM, la mise à zéro des blocs d'un disque virtuel créé en provisionnement statique, ...) sont souvent couteuses en termes de ressources.
Grâce à VAAI, ces opérations seront effectuées par votre baie de stockage. Ce qui allègera la charge de travail de vos hôtes VMware ESXi.

Notez que VAAI peut être utilisé par VMware vSphere pour toutes les opérations qui restent internes à une baie de stockage.
Donc, si vous créez plusieurs banques de données qui se trouvent dans la même baie de stockage, les opérations seront tout de même gérées par la baie de stockage (grâce au support du VAAI).

Les APIs sont composées de plusieurs primitives de stockage qui permettent d'effectuer certaines opérations sur la baie de stockage. Plus votre baie de stockage supporte de primitives de stockage, plus l'hôte pourra déléguer certains types d'opérations au niveau du stockage.

Comme vous pouvez le voir sur le schéma ci-dessous:

  • sans VAAI (à gauche) : l'hôte gérait les lectures et les écritures (via le réseau pour le iSCSI) sur le stockage de votre baie.
  • avec VAAI (à droite) : l'hôte a seulement besoin de demander à votre baie d'effectuer telle ou telle opération pour lui.
    Ce qui réduit aussi fortement le trafic réseau entre votre hôte VMware ESXi et votre baie de stockage.

Sans le support du VAAI, toutes les opérations effectuées sur le stockage seraient effectuées par le vSphere VMkernel Data Mover. Ce qui signifie que les ressources des hôtes VMware ESXi seront beaucoup plus utilisées.

Important : à l'origine, depuis VMware vSphere 4.1, il n'y avait que 3 primitives VAAI et cela était supporté uniquement pour le stockage en mode blocs (iSCSI, FC et FCoE).
Néanmoins, depuis VMware vSphere 5.0, de nouvelles primitives de stockages sont apparues pour les NAS et le provisionnement dynamique de VMware vSphere.

2. Primitives de stockage VAAI en mode blocs (iSCSI, FC et FCoE)

2.1. Test atomique et ensemble (ATS)

Lorsque vous créez une banque de données, le système de fichiers généralement utilisé est VMFS.
Dans VMFS, de nombreuses opérations nécessitent l'utilisation de verrous pour éviter la corruption de données.
En effet, étant donné que les banques de données peuvent être utilisées simultanément par plusieurs hôtes, ces verrous permettent d'éviter qu'un hôte ne tente de modifier un fichier ou des métadonnées qui seraient en cours de modification par un autre hôte.

Sans le support d'ATS, VMware vSphere utilise des réservations SCSI sur les volumes VMFS comme système de verrouillage pour éviter que 2 hôtes ne puissent modifier les mêmes métadonnées au même moment.
L'inconvénient est qu'une réservation verrouille un LUN entier. Ce qui peut créer des problèmes de contention si de nombreuses machines virtuelles se trouvent sur la même banque de données.

Avec le support d'ATS qui est un système de verrouillage amélioré, les verrous sont gérés par la baie de stockage.
De plus, grâce à ATS, il est possible de modifier uniquement un secteur de disque sur un volume VMFS sans verrouiller entièrement le LUN.

2.2. XCOPY (copie étendue)

Sans le support de VAAI, le clonage ou la migration d'une machine virtuelle (Storage vMotion) est géré par le vSphere VMkernel Data Mover.
Ce qui implique que l'hôte lise et écrive de grandes quantités de données sur baie de stockage. Ce qui utilise les ressources (CPU et autres) de l'hôte, ainsi que le réseau entre l'hôte et la baie de stockage.

Or, si votre baie de stockage supporte la primitive de stockage "XCOPY" (qui fait partie de VAAI), votre hôte devra uniquement demander à votre baie de copier les données nécessaires.
Autrement dit, votre hôte pourra demander par exemple de copier tel fichier "vmdk" à sa place sans qu'il n'ait à le lire entièrement pour le réécrire sur la même baie de stockage.
Ce qui allège fortement la charge de travail de votre hôte VMware ESXi, ainsi que l'utilisation de la bande passante réseau.

2.3. Écrire le même (zéro)

Sans le support de VAAI, lorsque vous créez un disque dur virtuel avec un type de provisionnement statique immédiatement mis à zéro, une commande SCSI est utilisée pour mettre à zéro tous les blocs nécessaires à la création de celui-ci.
Ce qui consomme à nouveau des ressources CPU, ainsi que le tampon DMA et ce qui remplit également la file d'attente HBA.

Avec le support de VAAI, vos hôtes VMware ESXi pourront mettre à zéro un grand nombre de blocs en utilisant la commande SCSI WRITE_SAME. Ce qui évite de transférer inutilement des données (via le réseau pour le iSCSI) entre l'hôte et la baie de stockage.

Notez que cette primitive permet d'accélérer les tâches liées au provisionnement lors de :

  • clonage de disques durs virtuels avec un provisionnement statique avec mise à zéro des blocs immédiate.
  • allocation de nouveaux blocs pour les disques durs virtuels avec un provisionnement dynamique.
  • initialisation de blocs précédemment non écrits pour les disques durs virtuels avec un provisionnement statique.

Notez que les baies de stockage n'écrivent pas toutes les zéros directement sur le disque.
Certaines baies de stockage utilisent un fichier de métadonnées. Ce qui peut donner des performances différentes.

2.4. UNMAP

La primitive VAAI "UNMAP" permet à un hôte VMware ESXi d'informer la baie de stockage de l'espace libéré après la migration ou la suppression d'une machine virtuelle. UNMAP est aussi connu sous le nom "Récupération de l'espace mort".

Précédemment, sous vSphere 5.0, cette opération UNMAP était effectuée de manière automatique (par exemple : juste après la migration d'une machine virtuelle). Néanmoins, cela posait des problèmes de performances.
Ensuite, cette opération devait être effectuée manuellement.
Néanmoins, depuis vSphere 6.5, cette primitive UNMAP est de nouveau automatique si vous formatez votre banque de données en VMFS6. En effet, pour les banques de données VMFS6, un robot UNMAP automatisé fonctionne en continu en arrière-plan pour informer la baie de l'espace libéré sur celles-ci.

Source : Demandes de récupération d'espace des banques de données VMFS - VMware Docs.

2.5. UNMAP depuis un OS invité

Depuis vSphere 6.0, un OS invité peut également informer une baie de l'espace libéré lorsque celui-ci est installé sur un disque dur virtuel avec un provisionnement dynamique.

Le support natif de UNMAP était limité à Windows Server 2012 R2. Les distributions Linux ne pouvaient pas effectuer cette opération UNAMP, car la version SCSI utilisée par le matériel virtuel était la version 2 et que la version minimum requise était la version 5.
Grâce au support SPC-4 apparu avec vSphere 6.5 pour le matériel virtuel, les distributions Linux sont maintenant en mesure d'effectuer ses opérations UNMAP.

Important : il est recommandé que la taille des blocs utilisée pour les partitions du système d'exploitation invité soit de 1 Mo pour que UNMAP puisse fonctionner correctement.

Source : VMware vSphere APIs: Array Integration (VAAI) | VMware.

3. Vérifier la compatibilité de la baie de stockage avec VAAI

Pour vérifier si VAAI est supporté par votre baie de stockage, ainsi que savoir quelles primitives VAAI elle supporte, vous pouvez accéder à la page "VMware Compatibility Guide - Storage/SAN".

Pour l'exemple, nous allons chercher la baie de stockage "HPE LeftHand" :

  • Partner Name : Hewlett Packard Entreprise
  • Keyword : LeftHand

Cliquez sur le nom de votre baie de stockage.
Dans notre cas : Lefthand.

Choisissez votre version de VMware ESXi dans la liste en haut à gauche et consultez les informations concernant la version du firmware qu'elle possède.
Dans notre cas, nous pouvons voir que celle-ci supporte tous les primitives VAAI, y compris UNMAP :

  • UNMAP
  • HW Assisted Locking = ATS
  • Full Copy = XCOPY
  • Block Zero = écrire le même zéro

4. Vérifier le support de VAAI depuis le VMware vSphere Client

Pour vérifier si votre baie de stockage supporte le VAAI, sélectionnez votre hôte VMware ESXi et allez dans "Configurer -> Stockage -> Adaptateurs de stockage".
Ensuite, sélectionnez le "iSCSI Software Adapter" et allez dans l'onglet "Périphériques" (en bas de page).

S'il est indiqué "Pris en charge" dans la colonne "Accélération matérielle", c'est que le VAAI est supporté par la baie de stockage où se trouve sur le disque iSCSI souhaité.
Dans le cas contraire, il sera indiqué "Non pris en charge".

Important : le fait qu'il soit indiqué "Pris en charge" ne veut pas dire que l'UNMAP (qui est une des fonctionnalités du VAAI) est aussi supporté.
Pour le vérifier, vous devrez vous connecter en ligne de commandes (SSH) à votre hôte VMware ESXi.

Comme vous pouvez le voir :

  • l'accélération matérielle (VAAI) est supportée pour les disques iSCSI créés sous StarWind Virtual SAN.
  • l'accélération matérielle (VAAI) n'est pas supportée pour les disques iSCSI créés sous Windows Server.

Source : Does W2K12R2 Storage Server integrate into VMware with VAAI?

Pour connaitre précisément quelles fonctionnalités VAAI sont supportées, allez dans "Configurer -> Système -> Services" et démarrez le service "SSH".

Connectez-vous à votre hôte VMware ESXi en SSH.

Tapez la commande :

Plain Text

esxcli storage core device vaai status get

Comme vous pouvez le voir :

  • les fonctionnalités VAAI (ATS, Clone et Zero) sont supportées pour nos disques iSCSI "eui..." créés sous StarWind Virtual SAN.
    Mais, la fonctionnalité VAAI "Delete" (qui correspond au UNMAP) n'est pas supportée.
  • les fonctionnalités VAAI ne sont pas supportées pour notre disque iSCSI "naa..." créé sous Windows Server.
    D'où la valeur "VMW_VAAIP_MASK" qui apparait.

Source : Listing VAAI Filters and Plug-ins – teaser.

Plain Text

eui.0ca9aa96ed2401f9
   VAAI Plugin Name:
   ATS Status: supported
   Clone Status: supported
   Zero Status: supported
   Delete Status: unsupported

...

eui.47f31a4cc14db26c
   VAAI Plugin Name:
   ATS Status: supported
   Clone Status: supported
   Zero Status: supported
   Delete Status: unsupported

naa.60003ff44dc75adcafe8cc13f634ba70
   VAAI Plugin Name: VMW_VAAIP_MASK
   ATS Status: unsupported
   Clone Status: unsupported
   Zero Status: unsupported
   Delete Status: unsupported

5. Création d'une VM sans support de VAAI

Si vous souhaitez tester la différence entre sans et avec le support du VAAI, il vous suffit de créer une machine virtuelle sur un stockage qui le supporte et en créer une autre sur un stockage qui ne le supporte pas.
Vous remarquerez que grâce au VAAI vous bénéficierez de meilleures performances que sans.

Pour commencer, sélectionnez votre hôte VMware ESXi et cliquez sur : Actions -> Nouvelle machine virtuelle.

Dans l'assistant "Nouvelle machine virtuelle" qui apparait, sélectionnez "Créer une machine virtuelle" et cliquez sur Next.

Sélectionnez un disque iSCSI dont l'accélération matérielle (VAAI) n'est pas prise en charge.

Utilisez un provisionnement statique immédiatement mis à zéro pour son disque dur virtuel.

Patientez pendant la création de la machine virtuelle.

Calculez le temps que la création de cette machine virtuelle a pris en vous basant sur l'heure de début et celle de fin.

6. Création d'une VM avec support de VAAI

Maintenant, créez une nouvelle machine virtuelle en sélectionnant un stockage fourni par une baie de stockage supportant les primitives VAAI.
Dans notre cas, nous sélectionnons notre banque de données "SW iSCSI DS 1" créé sur un disque iSCSI fourni par notre baie de stockage StarWind Virtual SAN.

A nouveau, utilisez un provisionnement statique immédiatement mis à zéro pour son disque dur virtuel.

Patientez pendant la création de cette machine virtuelle.

Si vous comparez le temps passé, vous verrez que la création de la même machine virtuelle prendra moins de temps avec le support du VAAI, car la mise à zéro du disque dur virtuel sera géré par la baie de stockage et non par l'hôte VMware ESXi.

Note : dans notre cas, étant donné que tout est virtualisé, il n'y a pas vraiment de différence lors de nos tests. Mais dans un environnement professionnel avec de vraies baies de stockage, vous pourrez voir la différence en effectuant ces tests.

Page suivante

Partager ce tutoriel

Partager
Tweet

A voir également

  • VMware ESXi 7.0 / 6.7 - Installer VMware PowerCli (avec ou sans Internet)

    VMware 14/9/2022

    VMware ESXi 7.0 / 6.7 - Installer VMware PowerCli (avec ou sans Internet)

  • VMware vSphere 6.7 - Activer vSphere FT sur un cluster

    VMware 7/3/2025

    VMware vSphere 6.7 - Activer vSphere FT sur un cluster

  • VMware vSphere 6.7 - Créer une banque de données NFS 4.1

    VMware 19/9/2024

    VMware vSphere 6.7 - Créer une banque de données NFS 4.1

  • VMware vSphere 6.7 - Installer et utiliser la console VMRC

    VMware 12/7/2024

    VMware vSphere 6.7 - Installer et utiliser la console VMRC

Commentaires

Vous devez être connecté pour pouvoir poster un commentaire

Donnez-nous votre avis

Contenu épinglé

  • Logiciels (Admin système)
  • Logiciels Linux
  • Nos programmes
  • Conditions générales
  • Donnez votre avis

Contact

  • Livre d'or
  • Support technique
  • Contact

® InformatiWeb-Pro.net - InformatiWeb.net 2008-2022 - © Lionel Eppe - Tous droits réservés.

Toute reproduction totale ou partielle de ce site est interdite et constituerait une contrefaçon sanctionnée par les articles L.335-2 et suivants du Code de la propriété intellectuelle.