Procédure

Créer un stockage iSCSI avec MPIO

Présenter un LUN iSCSI à Windows Server avec MPIO en séparant les chemins réseau, en activant MSDSM, en créant plusieurs sessions persistantes et en testant la perte d’un chemin.

⌚ Environ 7 min de lecture
Voir mes favoris
DomaineStockageNiveauAvancéDurée60-180 minRisqueÉlevé

Objectif

Configurer un stockage iSCSI multipath sur Windows Server en utilisant des interfaces réseau dédiées, le service iSCSI Initiator et Microsoft MPIO, puis valider que le même LUN est vu comme un seul disque et reste accessible lors de la perte contrôlée d’un chemin.

Prérequis

  • LUN créé et présenté à l’IQN de l’initiateur Windows selon les règles de la baie.
  • Au moins deux chemins réseau indépendants vers des interfaces ou contrôleurs de stockage lorsque la redondance physique est recherchée.
  • Adresses IP iSCSI, VLAN et MTU documentés de bout en bout.
  • Fonctionnalité Multipath I/O disponible sur Windows Server et fenêtre de redémarrage si nécessaire.
  • Documentation du constructeur de baie pour le DSM, la politique MPIO et les paramètres recommandés.

Procédure pas à pas

1

Documenter les interfaces et les chemins réseau

Listez les interfaces Windows destinées à iSCSI, leurs adresses IP, VLAN et métriques. Chaque chemin doit pouvoir joindre le portail de stockage prévu. Évitez plusieurs passerelles par défaut sur ces interfaces. Si vous utilisez Jumbo Frames, vérifiez le MTU sur la totalité du chemin avant de l’activer ; une incohérence MTU peut créer des performances irrégulières difficiles à diagnostiquer.

Get-NetAdapter
Get-NetIPConfiguration
Get-NetIPInterface | Sort-Object InterfaceMetric
Résultat attendu
  • Les deux chemins iSCSI sont identifiés et joignent les portails prévus.
  • Le routage ne dépend pas de plusieurs passerelles concurrentes.
2

Installer et activer Multipath I/O

Installez la fonctionnalité MPIO si elle n’est pas déjà présente. Selon l’état du serveur et la fonctionnalité ajoutée, un redémarrage peut être nécessaire. Vérifiez ensuite que le module MPIO PowerShell est disponible. N’introduisez pas le LUN multipath avant d’avoir confirmé que le serveur est prêt à le revendiquer correctement.

Install-WindowsFeature Multipath-IO
Get-WindowsFeature Multipath-IO
Résultat attendu
  • Multipath-IO est installé sur le serveur.
3

Activer la revendication automatique iSCSI par MSDSM

Activez la revendication automatique des disques iSCSI par le Microsoft Device Specific Module. Cette configuration indique à MPIO de gérer les périphériques de bus iSCSI compatibles. Vérifiez ensuite le paramètre. Si votre baie fournit un DSM constructeur spécifique, suivez sa documentation au lieu de supposer que MSDSM est la cible appropriée.

Enable-MSDSMAutomaticClaim -BusType "iSCSI"
Get-MSDSMAutomaticClaimSettings
Résultat attendu
  • Le paramètre iSCSI apparaît activé pour MSDSM.
4

Démarrer l’Initiateur iSCSI et relever l’IQN

Assurez-vous que le service Microsoft iSCSI Initiator est démarré et configuré pour le démarrage automatique. Relevez l’IQN de l’initiateur et comparez-le à l’autorisation définie sur la baie. Une erreur d’IQN ou de CHAP peut empêcher toute découverte alors que le réseau fonctionne.

Set-Service MSiSCSI -StartupType Automatic
Start-Service MSiSCSI
Get-InitiatorPort
Résultat attendu
  • Le service MSiSCSI fonctionne.
  • L’IQN correspond à l’initiateur autorisé côté stockage.
5

Ajouter les portails iSCSI avec la bonne interface source

Ajoutez chaque portail cible en spécifiant l’adresse d’initiateur correspondant au chemin voulu lorsque plusieurs interfaces existent. L’objectif est d’éviter que Windows utilise toujours la même interface source pour tous les portails. Si CHAP est utilisé, protégez le secret et ne l’inscrivez pas dans un ticket ou un script non sécurisé.

New-IscsiTargetPortal -TargetPortalAddress "<TARGET-IP-1>" -InitiatorPortalAddress "<ISCSI-IP-1>"
New-IscsiTargetPortal -TargetPortalAddress "<TARGET-IP-2>" -InitiatorPortalAddress "<ISCSI-IP-2>"
Get-IscsiTargetPortal
Résultat attendu
  • Les portails apparaissent avec les interfaces source attendues.
6

Découvrir la cible et créer des connexions persistantes

Listez les cibles découvertes puis connectez le LUN en mode multipath. Créez plusieurs sessions, une par combinaison de chemin prévue, et rendez-les persistantes pour qu’elles soient recréées au redémarrage. Vérifiez le nombre de sessions avant d’initialiser le disque afin d’éviter de valider le stockage avec un seul chemin.

Get-IscsiTarget
Connect-IscsiTarget -NodeAddress "<TARGET-IQN>" -IsPersistent $true -IsMultipathEnabled $true
Get-IscsiSession
Résultat attendu
  • La cible est connectée en multipath.
  • Plusieurs sessions existent vers les chemins réseau prévus.
7

Vérifier que MPIO présente un seul disque

Contrôlez les périphériques MPIO et les disques Windows. Le même LUN ne doit pas apparaître comme plusieurs disques indépendants. Vérifiez les chemins actifs et la policy. Avant toute initialisation, comparez la taille et l’identifiant du LUN avec la baie pour ne pas formater le mauvais volume.

mpclaim -s -d
Get-Disk
Get-MSDSMSupportedHW
Résultat attendu
  • Le LUN apparaît comme un seul disque Windows avec plusieurs chemins MPIO.
8

Initialiser et formater uniquement le nouveau LUN

Lorsque l’identification est certaine, initialisez le disque selon le standard du serveur et créez le volume. Pour un cluster Windows, ne procédez pas comme pour un disque local classique sans tenir compte des règles de cluster. Sur un serveur autonome, GPT est généralement adapté aux volumes modernes. Donnez un label explicite au volume.

Initialize-Disk -Number <DISK-NUMBER> -PartitionStyle GPT
New-Partition -DiskNumber <DISK-NUMBER> -UseMaximumSize -AssignDriveLetter | Format-Volume -FileSystem NTFS -NewFileSystemLabel "<LABEL>" -Confirm:$false
Résultat attendu
  • Le volume correspond exactement au LUN prévu et devient accessible.
9

Tester la perte d’un chemin

Pendant une fenêtre contrôlée, désactivez un seul chemin réseau ou port de stockage et observez la continuité d’accès. Le volume doit rester accessible via le chemin restant. Surveillez les événements système et les sessions iSCSI, puis réactivez le chemin et confirmez qu’il rejoint de nouveau la configuration multipath. Ne testez pas simultanément plusieurs chemins.

Get-IscsiSession
mpclaim -s -d
Résultat attendu
  • Le volume reste disponible pendant la perte d’un seul chemin.
  • Le chemin restauré revient dans l’état attendu après réactivation.

Validation

La procédure est validée lorsque :

  • MPIO est installé et MSDSM revendique le bus iSCSI ou le DSM constructeur recommandé est utilisé.
  • Le LUN apparaît une seule fois dans Windows avec plusieurs chemins actifs.
  • Les connexions iSCSI sont persistantes et utilisent les interfaces réseau prévues.
  • La perte contrôlée d’un chemin n’interrompt pas l’accès au volume.

Retour arrière

  • Ne pas supprimer le volume ou le LUN si des données ont déjà été écrites ; revenir d’abord à l’état de connexion documenté.
  • Déconnecter les sessions iSCSI ajoutées uniquement si le LUN n’est plus utilisé et que la baie est prête à retirer la présentation.
  • Désactiver l’autoclaim iSCSI seulement si le design le nécessite et après validation de l’impact sur les LUN déjà revendiqués.
  • Restaurer les VLAN, MTU et paramètres réseau précédents si la segmentation iSCSI créée doit être abandonnée.

Dépannage / erreurs fréquentes

  • Cible non découverte : vérifier routage, VLAN, TCP 3260, IQN autorisé et CHAP.
  • Même LUN visible plusieurs fois : MPIO/DSM n’a probablement pas revendiqué correctement les chemins ; ne formatez rien avant correction.
  • Un seul chemin est utilisé : contrôler InitiatorPortalAddress, portails cibles, sessions persistantes et configuration de la baie.
  • Perte de connexion avec Jumbo Frames : tester la MTU de bout en bout et revenir à 1500 si le chemin n’est pas homogène.
  • Failover lent ou erreurs disque : vérifier la policy MPIO recommandée par le constructeur et les événements System/iSCSIPrt.

Références officielles

♡ 0