Lorsque vous utilisez la technologie NVMe avec VMware, vous devez suivez certaines directives et des exigences spécifiques.

Conditions requises pour NVMe over PCIe

Votre environnement de stockage ESXi doit inclure les composants suivants :
  • Périphériques de stockage NVMe local.
  • Hôte ESXi compatible.
  • Adaptateur NVMe over PCIe matériel. Après l'installation de l'adaptateur, votre hôte ESXi le détecte et l'affiche dans vSphere Client en tant qu'adaptateur de stockage (vmhba) avec le protocole indiqué comme étant PCIe. Il n'est pas nécessaire de configurer l'adaptateur.

Conditions requises pour NVMe over RDMA (RoCE v2)

  • Baie de stockage NVMe avec prise en charge du transport NVMe over RDMA (RoCE v2).
  • Hôte ESXi compatible.
  • Commutateurs Ethernet prenant en charge un réseau sans perte.
  • Adaptateur réseau qui prend en charge RDMA over Converged Ethernet (RoCE v2). Pour configurer l'adaptateur, reportez-vous à Voir les adaptateurs réseau RDMA.
  • Adaptateur NVMe over RDMA logiciel. Ce composant logiciel doit être activé sur votre hôte ESXi et connecté à un adaptateur RDMA réseau approprié. Pour plus d'informations, consultez Activer les adaptateurs logiciels NVMe over RDMA ou NVMe over TCP.
  • Contrôleur NVMe. Vous devez ajouter un contrôleur après avoir configuré un adaptateur NVMe over RDMA logiciel. Reportez-vous à la section Ajouter un contrôleur pour NVMe over Fabrics.
  • Ethernet sans perte.

Conditions requises pour NVMe over Fibre Channel

  • Baie de stockage Fibre Channel prenant en charge NVMe. Pour plus d'informations, consultez Utilisation d'ESXi avec un SAN Fibre Channel.
  • Hôte ESXi compatible.
  • Adaptateur NVMe matériel. En général, il s'agit d'un HBA Fibre Channel qui prend en charge NVMe. Lorsque vous installez l'adaptateur, votre hôte ESXi le détecte et l'affiche dans vSphere Client en tant qu'adaptateur Fibre Channel standard (vmhba) avec le protocole de stockage indiqué comme étant NVMe. Il n'est pas nécessaire de configurer l'adaptateur NVMe matériel pour l'utiliser.
  • Contrôleur NVMe. Il n'est pas nécessaire de configurer le contrôleur. Après l'installation de l'adaptateur NVMe matériel requis, celui-ci se connecte automatiquement à toutes les cibles et à tous les contrôleurs qui sont accessibles à ce moment-là. Vous pourrez ensuite déconnecter les contrôleurs ou bien connecter d'autres contrôleurs qui n'étaient pas disponibles lors du démarrage de l'hôte. Reportez-vous à la section Ajouter un contrôleur pour NVMe over Fabrics.

Conditions requises pour NVMe over TCP

  • Baie de stockage NVMe avec prise en charge du transport NVMe over TCP.
  • Hôte ESXi compatible.
  • Adaptateur Ethernet.
  • Adaptateur NVMe over TCP logiciel. Ce composant logiciel doit être activé sur votre hôte ESXi et connecté à un adaptateur réseau approprié. Pour plus d'informations, consultez Activer les adaptateurs logiciels NVMe over RDMA ou NVMe over TCP.
  • Contrôleur NVMe. Vous devez ajouter un contrôleur après avoir configuré un adaptateur NVMe over TCP logiciel. Reportez-vous à la section Ajouter un contrôleur pour NVMe over Fabrics.

Prise en charge du stockage partagé VMware NVMe over Fabrics

Dans l'environnement ESXi, les périphériques de stockage NVMe sont similaires aux périphériques de stockage SCSI et peuvent être utilisés comme stockage partagé. Suivez ces règles lors de l'utilisation du stockage NVMe-oF.
  • Ne mélangez pas les types de transport pour accéder au même espace de noms.
  • Assurez-vous que les chemins actifs sont présentés à l'hôte. Les espaces de noms ne peuvent pas être enregistrés tant que le chemin actif n'est pas découvert.
Fonctionnalité de stockage partagé Stockage SCSI over Fabrics Stockage NVMe over Fabrics
RDM Pris en charge Non pris en charge
Vidage de mémoire Pris en charge Non pris en charge
Réservations SCSI-2 Pris en charge Non pris en charge
VMDK en cluster Pris en charge Non pris en charge
VMDK partagé avec signalement multi-écriture Pris en charge Pris en charge

Dans vSphere 7.0 Update 1 et versions ultérieures.

Pour plus d'informations, reportez-vous à l'article de la base de connaissances.

Virtual Volumes Pris en charge Non pris en charge
Accélération matérielle avec plug-ins VAAI Pris en charge Non pris en charge
MPP par défaut NMP HPP (les cibles NVMe-oF ne peuvent pas être réclamées par le NMP)
Limites LUN = 1 024, chemins d'accès = 4 096 Espaces de noms = 32, chemins d'accès = 128 (4 chemins maximum par espace de noms dans un hôte)

Configuration de la technologie Ethernet sans perte pour NVMe sur RDMA

NVMe over RDMA dans ESXi nécessite un réseau Ethernet sans perte.

Pour établir des réseaux sans perte, vous pouvez sélectionner l’un des paramètres QoS disponibles.

Activer le contrôle de flux d'interruption globale

Dans cette configuration réseau, assurez-vous que le contrôle de flux d'interruption globale est activé sur les ports de commutateur réseau. Assurez-vous également que les cartes réseau compatibles RDMA dans l'hôte négocient automatiquement le contrôle de flux adapté.

Pour vérifier le contrôle de flux, exécutez la commande suivante :

#esxcli network nic get -n vmnicX
   Pause RX: true
   Pause TX: true

Si les options de commande ci-dessus ne sont pas définies sur true, exécutez la commande suivante.

#esxcli network nic pauseParams set -r true -t true -n vmnicX

Activer le contrôle de flux prioritaire

Pour que le trafic RoCE soit sans perte, vous devez configurer la valeur de priorité PFC sur 3 dans le commutateur physique et les hôtes. Vous pouvez configurer le PFC dans l'hôte ESXi de deux manières :
  • Configuration automatique. Appliquez la configuration de PFC DCB automatiquement sur l'hôte RNIC, si le pilote RNIC prend en charge DCB et DCBx.

    Vous pouvez vérifier les paramètres DCB actuels en exécutant la commande suivante :

    #esxcli network nic dcb status get -n vmnicX
  • Configuration manuelle. Dans certains cas, les pilotes RNIC fournissent une méthode pour configurer manuellement le PFC DCB à l'aide des paramètres spécifiques du pilote. Pour utiliser cette méthode, reportez-vous à la documentation du pilote propre au fournisseur. Par exemple, dans le pilote Mellanox ConnectX-4/5, vous pouvez définir la valeur de priorité PFC sur trois en exécutant la commande suivante, puis en redémarrant l’hôte.
    #esxcli system module parameters set -m nmlx5_core -p "pfctx=0x08 pfcrx=0x08"

Activer PFC basé sur DSCP

Le mode PFC basé sur DSCP est une autre méthode de configuration de réseau sans perte. Dans les commutateurs et les hôtes physiques, vous devez définir la valeur DSCP sur 26. Pour utiliser cette option, reportez-vous à la documentation du pilote propre au fournisseur. Par exemple, dans le pilote Mellanox ConnectX-4/5, vous pouvez définir la valeur de balise DSCP sur 26 en exécutant les commandes suivantes.
  1. Activez le mode d'approbation PFC et DSCP.
    #esxcli system module parameters set -m nmlx5_core -p "pfctx=0x08 pfcrx=0x08 trust_state=2"
    
  2. Définissez la valeur DSCP sur 26.
    #esxcli system module parameters set -m nmlx5_rdma -p "dscp_force=26"
  3. Vérifiez les paramètres pour vous assurer qu'ils sont corrects et définis.
    esxcli system module parameters list -m nmlx5_core | grep 'trust_state\|pfcrx\|pfctx'
  4. Redémarrez l'hôte.