Configuration du device mapper multipath
Utilisation de la fonction Device Mapper Multipath
Résumé
Rendre l'open source plus inclusif
Red Hat s'engage à remplacer les termes problématiques dans son code, sa documentation et ses propriétés Web. Nous commençons par ces quatre termes : master, slave, blacklist et whitelist. En raison de l'ampleur de cette entreprise, ces changements seront mis en œuvre progressivement au cours de plusieurs versions à venir. Pour plus de détails, voir le message de notre directeur technique Chris Wright.
Fournir un retour d'information sur la documentation de Red Hat
Nous apprécions vos commentaires sur notre documentation. Faites-nous savoir comment nous pouvons l'améliorer.
Soumettre des commentaires sur des passages spécifiques
- Consultez la documentation au format Multi-page HTML et assurez-vous que le bouton Feedback apparaît dans le coin supérieur droit après le chargement complet de la page.
- Utilisez votre curseur pour mettre en évidence la partie du texte que vous souhaitez commenter.
- Cliquez sur le bouton Add Feedback qui apparaît près du texte en surbrillance.
- Ajoutez vos commentaires et cliquez sur Submit.
Soumettre des commentaires via Bugzilla (compte requis)
- Connectez-vous au site Web de Bugzilla.
- Sélectionnez la version correcte dans le menu Version.
- Saisissez un titre descriptif dans le champ Summary.
- Saisissez votre suggestion d'amélioration dans le champ Description. Incluez des liens vers les parties pertinentes de la documentation.
- Cliquez sur Submit Bug.
Chapitre 1. Vue d'ensemble du multipathing du device mapper
Avec Device mapper multipathing (DM Multipath), vous pouvez configurer plusieurs chemins d'E/S entre les nœuds de serveur et les baies de stockage dans un seul périphérique. Ces chemins d'E/S sont des connexions physiques de réseau de stockage (SAN) qui peuvent inclure des câbles, des commutateurs et des contrôleurs distincts. Le multipathing regroupe les chemins d'E/S et crée un nouveau périphérique composé des chemins regroupés.
DM Multipath fournit :
- Redondance
- DM Multipath peut assurer le basculement dans une configuration active/passive. Dans une configuration active/passive, seul un sous-ensemble de chemins est utilisé à tout moment pour les E/S. Si un élément d'un chemin d'E/S, tel que le câble, le commutateur ou le contrôleur, tombe en panne, DM Multipath passe à un autre chemin.
Le nombre de chemins dépend de la configuration. En général, les configurations DM Multipath ont 2, 4 ou 8 chemins d'accès au stockage, mais il s'agit d'une configuration courante et d'autres nombres sont possibles pour les chemins d'accès.
- Amélioration des performances
- DM Multipath peut être configuré en mode actif/actif, dans lequel les E/S sont réparties sur les chemins d'accès selon la méthode round-robin. Dans certaines configurations, DM Multipath peut détecter la charge sur les chemins d'E/S et rééquilibrer dynamiquement la charge.
1.1. Configuration multipath active/passive avec un dispositif RAID
Dans cette configuration, il y a deux adaptateurs de bus hôte (HBA) sur le serveur, deux commutateurs SAN et deux contrôleurs RAID. Les défaillances possibles dans cette configuration sont les suivantes :
- Défaillance du HBA
- Défaillance du câble Fibre Channel
- Défaillance d'un commutateur SAN
- Défaillance du port du contrôleur de réseau
Lorsque DM Multipath est configuré, une défaillance à l'un de ces points fait basculer DM Multipath sur le chemin d'E/S alternatif. L'image suivante décrit la configuration avec deux chemins d'E/S du serveur vers un périphérique RAID. Ici, un chemin d'E/S passe par hba1
, SAN1
et cntrlr1
et un second chemin d'E/S passe par hba2
, SAN2
et cntrlr2
.
Figure 1.1. Configuration multipath active/passive avec un dispositif RAID
1.2. Configuration multipath active/passive avec deux dispositifs RAID
Dans cette configuration, il y a deux HBA sur le serveur, deux commutateurs SAN et deux périphériques RAID avec deux contrôleurs RAID chacun. Lorsque DM Multipath est configuré, une défaillance à l'un des points du chemin d'E/S vers l'un des périphériques RAID entraîne le basculement de DM Multipath vers le chemin d'E/S alternatif pour ce périphérique. L'image suivante décrit la configuration avec deux chemins d'E/S vers chaque périphérique RAID. Ici, il y a deux chemins d'E/S vers chaque périphérique RAID.
Figure 1.2. Configuration multipath active/passive avec deux dispositifs RAID
1.3. Configuration multipath active/active avec un dispositif RAID
Dans cette configuration, il y a deux HBA sur le serveur, deux commutateurs SAN et deux contrôleurs RAID. L'image suivante décrit la configuration avec deux chemins d'E/S du serveur vers un périphérique de stockage. Ici, les E/S peuvent être réparties entre ces deux chemins.
Figure 1.3. Configuration multipath active/active avec un dispositif RAID
1.4. Composants DM Multipath
Le tableau suivant décrit les composants de DM Multipath.
Tableau 1.1. Composants du DM Multipath
Composant | Description |
| Réachemine les E/S et prend en charge le basculement des chemins et des groupes de chemins. |
| Configure et active le multipathing du device mapper. |
|
Répertorie et configure les dispositifs à trajets multiples. Il est également exécuté par |
|
Crée et supprime automatiquement les périphériques à chemins multiples et surveille les chemins ; lorsque les chemins échouent et reviennent, il peut mettre à jour le périphérique à chemins multiples. Permet d'apporter des modifications interactives aux dispositifs à chemins multiples. Recharge le service en cas de modification du fichier |
|
Crée des périphériques de mappage de périphériques pour les partitions d'un périphérique. Cette commande est automatiquement exécutée par |
|
Configure les réservations persistantes |
1.5. La commande multipath
La commande multipath
permet de détecter et de combiner plusieurs chemins d'accès aux périphériques. Elle fournit une série d'options que vous pouvez utiliser pour administrer vos appareils à chemins multiples.
Le tableau suivant décrit certaines options de la commande multipath
qui peuvent s'avérer utiles.
Tableau 1.2. Options utiles de la commande multipath
Option | Description |
---|---|
|
Affiche la configuration multipath actuelle recueillie à partir de |
|
Affiche la configuration multipath actuelle recueillie à partir de |
| Supprimez le périphérique à trajets multiples nommé. |
| Supprimez tous les dispositifs à trajets multiples inutilisés. |
|
Supprime le site |
|
Réinitialiser le fichier |
1.6. Sortie de la commande Multipath
Lorsque vous créez, modifiez ou répertoriez un appareil à trajets multiples, vous obtenez un affichage de la configuration actuelle de l'appareil. Le format est le suivant.
- Pour chaque appareil à trajets multiples :
action_if_any: alias (wwid_if_different_from_alias) dm_device_name_if_known vendor,product size=size features='features' hwhandler='hardware_handler' wp=write_permission_if_known
- Pour chaque groupe de chemins :
- - policy='scheduling_policy' prio=prio_if_known status=path_group_status_if_known
- Pour chaque chemin :
`- host:channel:id:lun devnode major:minor dm_status_if_known path_status online_status
Par exemple, la sortie d'une commande multipath peut se présenter comme suit :
3600d0230000000000e13955cc3757800 dm-1 WINSYS,SF2372 size=269G features='0' hwhandler='0' wp=rw |-+- policy='round-robin 0' prio=1 status=active | `- 6:0:0:0 sdb 8:16 active ready running `-+- policy='round-robin 0' prio=1 status=enabled `- 7:0:0:0 sdf 8:80 active ready running
Si le chemin est en place et prêt pour les E/S, l'état du chemin est ready
ou ghost
. Si le chemin est en panne, l'état est faulty
ou shaky
. L'état du chemin est mis à jour périodiquement par le démon multipathd
en fonction de l'intervalle d'interrogation défini dans le fichier /etc/multipath.conf
.
Les autres valeurs possibles de l'état du chemin sont les suivantes.
-
i/o pending
: Le vérificateur vérifie activement ce chemin, et l'état sera mis à jour sous peu. -
i/o timeout
: C'est la même chose quefaulty
. Elle indique à l'utilisateur que le vérificateur n'a pas renvoyé de succès ou d'échec avant la fin du délai d'attente. -
removed
: Le chemin a été supprimé du système et sera bientôt supprimé du dispositif à trajets multiples. Il est traité de la même manière quefaulty
. -
wild
multipathd
n'a pas pu exécuter le vérificateur de chemin, en raison d'une erreur interne ou d'un problème de configuration. C'est à peu près la même chose que , sauf que multipath sautera de nombreuses actions sur le chemin.faulty
-
unchecked
: Le vérificateur de chemin ne s'est pas exécuté sur ce chemin, soit parce qu'il vient d'être découvert, soit parce qu'il n'y a pas de vérificateur de chemin assigné, soit parce que le vérificateur de chemin a rencontré une erreur. Ce message est traité de la même manière quewild
. -
delayed
: Le vérificateur de chemin indique que le chemin est en place, mais multipath retarde le rétablissement du chemin parce que le chemin a récemment échoué plusieurs fois et que multipath a été configuré pour retarder les chemins dans ce cas.
En termes de noyau, l'état dm est similaire à l'état path. L'état dm active
couvre les états path ready
et ghost
. L'état du chemin pending
n'a pas d'état dm équivalent. Tous les autres états de chemin d'accès correspondent à l'état dm failed
. L'état dm conservera son statut actuel jusqu'à ce que le vérificateur de chemin ait terminé.
Les valeurs possibles pour online_status
sont running
et offline
. L'état offline
signifie que ce périphérique SCSI a été désactivé.
Lorsque vous créez ou modifiez un périphérique multipath, multipath imprime la configuration du périphérique. Cependant, certaines caractéristiques, par exemple les autorisations d'écriture, et d'autres informations sur les caractéristiques peuvent être inconnues. Il peut y avoir une différence entre la sortie et les caractéristiques que vous avez sélectionnées lors de la création ou de la modification. Il s'agit d'un comportement normal. Répertoriez le dispositif après sa création pour voir l'état correct.
1.7. Affichage de la configuration des trajets multiples
Vous pouvez utiliser les commandes -l
et multipath
pour afficher la configuration actuelle des chemins multiples. L'option -l
affiche la topologie des chemins multiples à partir des informations contenues dans sysfs
et du mappeur de périphériques. L'option -ll
affiche les informations de l'option -l
en plus de tous les autres composants disponibles du système.
Lors de l'affichage de la configuration des chemins multiples, vous pouvez spécifier un niveau de verbosité avec l'option -v
de la commande multipath
. L'option -v0
ne produit aucun résultat. En spécifiant -v1
, vous n'obtenez que les noms des chemins multiples créés ou mis à jour, que vous pouvez ensuite transmettre à d'autres outils tels que kpartx
. L'option -v2
permet d'imprimer tous les chemins d'accès, chemins multiples et cartes de périphériques détectés. Pour obtenir des informations encore plus détaillées, vous pouvez également spécifier -v3,
-v4
ou -v5
.
L'exemple suivant montre la sortie d'une commande multipath -l
.
# multipath -l
3600d0230000000000e13955cc3757800 dm-1 WINSYS,SF2372
size=269G features='0' hwhandler='0' wp=rw
|-- policy='round-robin 0' prio=1 status=active
| `- 6:0:0:0 sdb 8:16 active ready running
`-- policy='round-robin 0' prio=1 status=enabled
`- 7:0:0:0 sdf 8:80 active ready running
L'exemple suivant montre la sortie d'une commande multipath -ll
.
# multipath -ll
3600d0230000000000e13955cc3757801 dm-10 WINSYS,SF2372
size=269G features='0' hwhandler='0' wp=rw
|-- policy='round-robin 0' prio=1 status=enabled
| `- 19:0:0:1 sdc 8:32 active ready running
`-- policy='round-robin 0' prio=1 status=enabled
`- 18:0:0:1 sdh 8:112 active ready running
3600d0230000000000e13955cc3757803 dm-2 WINSYS,SF2372
size=125G features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
|- 19:0:0:3 sde 8:64 active ready running
`- 18:0:0:3 sdj 8:144 active ready running
1.8. Ressources supplémentaires
-
multipath(8)
etmultipathd(8)
pages de manuel -
/etc/multipath.conf
fichier
Chapitre 2. Dispositifs à trajets multiples
DM Multipath permet d'organiser les chemins d'E/S de manière logique, en créant un périphérique multipath unique au-dessus des périphériques sous-jacents. Sans DM Multipath, le système traite chaque chemin entre un nœud de serveur et un contrôleur de stockage comme un périphérique distinct, même si le chemin d'E/S relie le même nœud de serveur au même contrôleur de stockage.
2.1. Identificateurs de dispositifs à trajets multiples
Lorsque de nouveaux appareils sont contrôlés par DM Multipath, ils sont créés dans les répertoires /dev/mapper/
et /dev/
.
Les dispositifs de la forme /dev/dm-X
sont réservés à un usage interne et ne doivent jamais être utilisés directement par l'administrateur.
Les paragraphes suivants décrivent les noms des périphériques multipath :
-
Lorsque l'option de configuration
user_friendly_names
est définie surno
, le nom du périphérique à trajets multiples est défini sur World Wide Identifier (WWID). Par défaut, le nom d'un dispositif à trajets multiples est défini sur son WWID. Le nom du dispositif serait/dev/mapper/WWID
. Il est également créé dans le répertoire/dev/
, sous le nom de/dev/dm-X
. -
Vous pouvez également définir l'option
user_friendly_names
suryes
dans le fichier/etc/multipath.conf
. Ainsi, l'optionalias
de la sectionmultipath
est remplacée par un nom unique de nœud de la formempathN
. Le nom du dispositif serait/dev/mapper/mpathN
et/dev/dm-X
. Mais il n'est pas garanti que le nom du dispositif soit le même sur tous les nœuds utilisant le dispositif à trajets multiples. De même, si vous définissez l'optionalias
dans le fichier/etc/multipath.conf
, le nom n'est pas automatiquement cohérent sur tous les nœuds de la grappe.
Cela ne devrait pas poser de problème si vous utilisez LVM pour créer des périphériques logiques à partir du périphérique multipath. Pour que les noms de vos périphériques à chemins multiples restent cohérents dans chaque nœud, Red Hat recommande de désactiver l'option user_friendly_names
.
Par exemple, un nœud avec deux HBA attachés à un contrôleur de stockage avec deux ports au moyen d'un seul commutateur FC non zoné voit quatre dispositifs : /dev/sda
, /dev/sdb
, /dev/sdc
, et /dev/sdd
. DM Multipath crée un périphérique unique avec un WWID unique qui réachemine les E/S vers ces quatre périphériques sous-jacents en fonction de la configuration multipath.
Outre les options user_friendly_names
et alias
, un dispositif à trajets multiples possède également d'autres attributs. Vous pouvez modifier ces attributs pour un périphérique multipath spécifique en créant une entrée pour ce périphérique dans la section multipaths
du fichier /etc/multipath.conf
.
Ressources supplémentaires
-
multipath(8)
etmultipath.conf(8)
pages de manuel -
/etc/multipath.conf
fichier - Composants DM Multipath
2.2. Dispositifs à chemins multiples dans les volumes logiques
Après avoir créé des périphériques multipath, vous pouvez utiliser les noms des périphériques multipath comme vous le feriez avec un nom de périphérique physique lors de la création d'un volume physique LVM (Logical Volume Manager). Par exemple, si /dev/mapper/mpatha
est le nom d'un périphérique multipath, la commande pvcreate /dev/mapper/mpatha
marque /dev/mapper/mpatha
comme volume physique.
Vous pouvez utiliser le périphérique physique LVM résultant lorsque vous créez un groupe de volumes LVM, comme vous le feriez avec n'importe quel autre périphérique physique LVM.
Pour filtrer tous les dispositifs sd
dans le fichier /etc/lvm/lvm.conf
, ajoutez le filtre filter = [ "r/block/", "r/disk/", "r/sd./", "a/./" ]
dans la section devices
du fichier.
Si vous tentez de créer un volume physique LVM sur un périphérique entier sur lequel vous avez configuré des partitions, la commande pvcreate
échoue. Les programmes d'installation Anaconda et Kickstart créent des tables de partitions vides si vous n'indiquez rien d'autre pour chaque périphérique en bloc. Si vous souhaitez utiliser l'ensemble du périphérique au lieu de créer une partition, supprimez les partitions existantes du périphérique. Vous pouvez supprimer les partitions existantes à l'aide de la commande kpartx -d
device et de l'utilitaire fdisk
. Si votre système possède des périphériques de bloc de plus de 2 To, utilisez l'utilitaire parted
pour supprimer les partitions.
Lorsque vous créez un volume logique LVM qui utilise des baies multipath active/passive
comme périphériques physiques sous-jacents, vous pouvez éventuellement inclure des filtres dans le fichier /etc/lvm/lvm.conf
afin d'exclure les disques qui soulignent les périphériques multipath. En effet, si la matrice passe automatiquement du chemin actif au chemin passif lorsqu'elle reçoit des entrées/sorties, le multipath basculera et reviendra en arrière chaque fois que LVM analysera le chemin passif, si ces périphériques ne sont pas filtrés.
Le noyau modifie l'état actif/passif en détectant automatiquement le gestionnaire matériel correct à utiliser. Pour les chemins actifs/passifs qui nécessitent une intervention pour changer leur état, le multipath utilise automatiquement ce gestionnaire de matériel pour le faire si nécessaire. Si le noyau ne détecte pas automatiquement le gestionnaire de matériel à utiliser, vous pouvez configurer le gestionnaire de matériel à utiliser dans le fichier multipath.conf avec l'option "hardware_handler". Pour les baies active/passive
qui nécessitent une commande pour rendre le chemin passif actif, LVM affiche un message d'avertissement lorsque cela se produit.
En fonction de votre configuration, LVM peut afficher l'un des messages suivants :
Le LUN n'est pas prêt :
end_request: I/O error, dev sdc, sector 0 sd 0:0:0:3: Device not ready: <6>: Current: sense key: Not Ready Add. Sense: Logical unit not ready, manual intervention required
Lire l'échec :
/dev/sde : échec de la lecture après 0 de 4096 à 0 : erreur d'entrée/sortie
Les raisons des erreurs mentionnées sont les suivantes :
- Les chemins multiples ne sont pas configurés sur les périphériques de stockage qui fournissent des chemins actifs/passifs à une machine.
- Les chemins sont accessibles directement, au lieu de passer par le dispositif à chemins multiples.
Ressources supplémentaires
-
lvm.conf
page de manuel - Composants DM Multipath
Chapitre 3. Configuration de DM Multipath
Vous pouvez configurer DM Multipath à l'aide de l'utilitaire mpathconf
. Cet utilitaire crée ou modifie le fichier de configuration /etc/multipath.conf
multipath en fonction des scénarios suivants :
-
Si le fichier
/etc/multipath.conf
existe déjà, l'utilitairempathconf
le modifiera. -
Si le fichier
/etc/multipath.conf
n'existe pas, l'utilitairempathconf
créera le fichier/etc/multipath.conf
à partir de zéro.
3.1. Vérification du paquet device-mapper-multipath
Avant d'installer DM Multipath sur votre système, assurez-vous que votre système est à jour et qu'il comprend le paquetage device-mapper-multipath
.
Procédure
Vérifiez si votre système comprend le paquetage
device-mapper-multipath
:# rpm -q device-mapper-multipath device-mapper-multipath-current-package-version
Si votre système n'inclut pas le paquet, le message suivant s'affiche :
package device-mapper-multipath n'est pas installé
Si votre système n'inclut pas le paquetage, installez-le en exécutant la commande suivante :
# dnf install device-mapper-multipath
3.2. Mise en place de DM Multipath pour une configuration basique de basculement
Utilisez la procédure suivante pour configurer DM Multipath pour une configuration de basculement de base si vous devez éditer le fichier /etc/multipath.conf
avant de démarrer le démon multipathd.
Procédure
Activer le fichier de configuration multipath :
#
mpathconf --enable
Modifiez le fichier
/etc/multipath.conf
si nécessaire. Les paramètres par défaut de DM Multipath sont compilés dans le système et ne doivent pas être explicitement définis dans le fichier/etc/multipath.conf
.La valeur par défaut de
path_grouping_policy
est fixée àfailover
, de sorte que, dans cet exemple, il n'est pas nécessaire de modifier le fichier/etc/multipath.conf
.La section initial defaults du fichier de configuration configure votre système de sorte que les noms des périphériques multipath soient de la forme
/dev/mapper/mpathn;
. Sans ce paramètre, les noms des périphériques multipath seraient aliasés avec le WWID du périphérique. Si vous ne souhaitez pas utiliser des noms conviviaux, vous pouvez entrer la commande suivante :# mpathconf --enable --user_friendly_names n
Si vous devez modifier le fichier de configuration multipath après avoir démarré le démon multipath, vous devez exécuter la commande
systemctl reload multipathd.service
pour que les modifications soient prises en compte.- Enregistrez le fichier de configuration et quittez l'éditeur, si nécessaire.
Démarrez le démon multipath et créez les périphériques multipath :
# systemctl start multipathd.service
Si vous supprimez le paquet device-mapper-multipath
, vous ne supprimez pas le fichier /etc/multipath.conf
, ni aucun fichier du répertoire /etc/multipath
, car ce répertoire peut contenir d'autres fichiers que ceux énumérés actuellement. Vous devrez peut-être supprimer ces fichiers manuellement lors d'installations ultérieures du paquet device-mapper-multipath
.
3.3. Ignorer les disques locaux lors de la génération de périphériques multipath
Certaines machines ont des cartes SCSI locales pour leurs disques internes et DM Multipath n'est pas recommandé pour ces périphériques. Si vous attribuez la valeur on
au paramètre de configuration find_multipaths
, il n'est pas nécessaire de désactiver le multipathing sur ces périphériques.
Si vous ne définissez pas le paramètre de configuration find_multipaths
sur on
, vous pouvez utiliser la procédure suivante pour modifier le fichier de configuration DM Multipath afin d'ignorer les disques locaux lors de la configuration du multipath.
Procédure
Déterminez quels sont les disques internes. Dans ces exemples,
/dev/sda
est le disque interne :Afficher les dispositifs à trajets multiples existants :
# multipath -v2 -l SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1 dm-2 WINSYS,SF2372 size=33 GB features="0" hwhandler="0" wp=rw `-+- policy='round-robin 0' prio=0 status=active |- 0:0:0:0 sda 8:0 active undef running
Affiche les périphériques multipath supplémentaires que DM Multipath pourrait créer :
# multipath -v2 -d : SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1 undef WINSYS,SF2372 size=33 GB features="0" hwhandler="0" wp=undef `-+- policy='round-robin 0' prio=1 status=undef |- 0:0:0:0 sda 8:0 undef ready running
Modifiez la section
blacklist
du fichier/etc/multipath.conf
pour inclure ce dispositif.Identifiez le périphérique à l'aide de son attribut WWID. Bien que vous puissiez identifier le périphérique
sda
à l'aide d'un typedevnode
, cette procédure n'est pas sûre, car il n'est pas garanti que/dev/sda
soit le même au redémarrage.Dans l'exemple précédent, le WWID du dispositif
/dev/sda
estSIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1
. Pour ignorer ce périphérique, il faut inclure ce qui suit dans le fichier/etc/multipath.conf
:blacklist { wwid SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1 }
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
Ressources supplémentaires
-
multipath.conf(5)
page de manuel
3.4. Configuration de périphériques de stockage supplémentaires
Par défaut, DM Multipath prend en charge les baies de stockage les plus courantes, qui supportent DM Multipath.
Procédure
Afficher la valeur de la configuration par défaut, y compris les appareils pris en charge :
# multipathd show config # multipath -t
Facultatif : Pour ajouter un périphérique de stockage supplémentaire qui n'est pas pris en charge par défaut en tant que périphérique à trajets multiples connu, modifiez le fichier
/etc/multipath.conf
et insérez les informations appropriées sur le périphérique.L'exemple suivant illustre comment ajouter des informations sur la série HP Open-V. L'appareil est mis en file d'attente pendant une minute ou 12 tentatives et 5 secondes par tentative après l'échec de tous les chemins d'accès.
devices { device { vendor "HP" product "OPEN-V" no_path_retry 12 } }
3.5. Mise en place du multipathing dans le système de fichiers initramfs
Vous pouvez configurer le multipathing dans le système de fichiers initramfs
. Vous n'avez pas besoin de le configurer si vous n'utilisez pas les périphériques que vous voulez multipatcher, jusqu'à ce que le démarrage quitte le système de fichiers initramfs
.
Conditions préalables
- Vous avez configuré DM multipath dans votre système.
Procédure
Reconstruisez le système de fichiers
initramfs
avec les fichiers de configuration multipath en exécutant la commande suivante :# dracut --force --add multipath
Si vous exécutez multipath à partir du système de fichiers
initramfs
et que vous modifiez les fichiers de configuration de multipath, vous devez reconstruire le système de fichiersinitramfs
pour que les modifications soient prises en compte. Lorsqu'un périphérique racine utilise multipath, l'exécution de la commandedracut
ajoute automatiquement le module multipath au système de fichiersinitramfs
.Facultatif : Si vous avez besoin que le multipath fonctionne dans l'initramfs, mais que vous ne configurez pas un périphérique racine multipath, exécutez :
# echo add_dracutmodules+=\"multipath\" > /etc/dracut.conf.d/multipath.conf # dracut --force
La commande dracut
inclut multipath dans le fichier initramfs
, même si multipath n'est plus nécessaire. Pour ne plus inclure multipath, exécutez :
# rm /etc/dracut.conf.d/multipath.conf # dracut --force
Chapitre 4. Activation du multipathing sur les périphériques NVMe
Vous pouvez multipather les périphériques Non-volatile Memory Express™ (NVMe™) qui sont connectés à votre système sur un transport fabric, tel que Fibre Channel (FC). Vous pouvez choisir entre plusieurs solutions de multipathing.
4.1. Multipathing NVMe natif et DM Multipath
Les périphériques Non-volatile Memory Express™ (NVMe™) prennent en charge une fonctionnalité de multipathing native. Lors de la configuration du multipathing sur NVMe, vous pouvez choisir entre le cadre DM Multipath standard et le multipathing NVMe natif.
DM Multipath et le multipathing NVMe natif prennent tous deux en charge le schéma de multipathing ANA (Asymmetric Namespace Access) des périphériques NVMe. ANA identifie des chemins optimisés entre le contrôleur et l'hôte et améliore les performances.
Lorsque le multipathing NVMe natif est activé, il s'applique globalement à tous les périphériques NVMe. Il peut offrir de meilleures performances, mais ne contient pas toutes les fonctionnalités offertes par DM Multipath. Par exemple, le multipathing NVMe natif ne prend en charge que les méthodes de sélection de chemin numa
et round-robin
.
Par défaut, le multipathing NVMe est activé dans Red Hat Enterprise Linux 9 et constitue la solution de multipathing recommandée.
4.2. Activation de DM Multipath sur les périphériques NVMe
Le paramètre par défaut du noyau pour l'option nvme_core.multipath
est défini sur Y
, ce qui signifie que le multipathing Non-volatile Memory Express™ (NVMe™) natif est activé. Vous pouvez activer DM Multipath sur les périphériques NVMe connectés en désactivant le multipathing NVMe natif.
Conditions préalables
- Les périphériques NVMe sont connectés à votre système. Pour plus d'informations, voir Vue d'ensemble des périphériques NVMe over fabric.
Procédure
Vérifier si le multipathing NVMe natif est activé :
# cat /sys/module/nvme_core/parameters/multipath
La commande affiche l'un des éléments suivants :
N
- Le multipathing NVMe natif est désactivé.
Y
- Le multipathing NVMe natif est activé.
Si le multipathing NVMe natif est activé, désactivez-le en utilisant l'une des méthodes suivantes :
Utilisation d'une option du noyau :
Ajoutez l'option
nvme_core.multipath=N
à la ligne de commande :# grubby --update-kernel=ALL --args="nvme_core.multipath=N"
Sur l'architecture IBM Z 64 bits, mettez à jour le menu de démarrage :
# zipl
- Redémarrer le système.
Utilisation d'un fichier de configuration du module du noyau :
Créez le fichier de configuration
/etc/modprobe.d/nvme_core.conf
avec le contenu suivant :options nvme_core multipath=N
Sauvegarder le fichier
initramfs
:# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname r).bak.$(date %m\r%H%M%S).img
Reconstruire le site
initramfs
:# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img # dracut --force --verbose
- Redémarrer le système.
Activer DM Multipath :
# systemctl enable --now multipathd.service
Distribuer les E/S sur tous les chemins disponibles. Ajoutez le contenu suivant dans le fichier
/etc/multipath.conf
:devices { device { vendor "NVME" product ".*" path_grouping_policy group_by_prio } }
NoteLe fichier de configuration
/sys/class/nvme-subsystem/nvme-subsys0/iopolicy
n'a aucun effet sur la distribution des E/S lorsque DM Multipath gère les périphériques NVMe.Rechargez le service
multipathd
pour appliquer les changements de configuration :# multipath -r
Vérification
Vérifiez si le multipathing NVMe natif est désactivé :
# cat /sys/module/nvme_core/parameters/multipath N
Vérifiez que DM multipath reconnaît les périphériques nvme :
# multipath -l eui.00007a8962ab241100a0980000d851c8 dm-6 NVME,NetApp E-Series size=20G features='0' hwhandler='0' wp=rw `-+- policy='service-time 0' prio=0 status=active |- 0:10:2:2 nvme0n2 259:3 active undef running `-+- policy='service-time 0' prio=0 status=enabled |- 4:11:2:2 nvme4n2 259:28 active undef running `-+- policy='service-time 0' prio=0 status=enabled |- 5:32778:2:2 nvme5n2 259:38 active undef running `-+- policy='service-time 0' prio=0 status=enabled |- 6:32779:2:2 nvme6n2 259:44 active undef running
Ressources supplémentaires
4.3. Activation du multipathing NVMe natif
Si le multipathing NVMe natif est désactivé, vous pouvez l'activer à l'aide de la solution suivante.
Conditions préalables
- Les périphériques NVMe sont connectés à votre système. Pour plus d'informations, voir Vue d'ensemble des périphériques NVMe over fabric.
Procédure
Vérifier si le multipathing NVMe natif est activé dans le noyau :
# cat /sys/module/nvme_core/parameters/multipath
La commande affiche l'un des éléments suivants :
N
- Le multipathing NVMe natif est désactivé.
Y
- Le multipathing NVMe natif est activé.
Si le multipathing NVMe natif est désactivé, activez-le en utilisant l'une des méthodes suivantes :
Utilisation d'une option du noyau :
Supprime l'option
nvme_core.multipath=N
de la ligne de commande du noyau :# grubby --update-kernel=ALL --remove-args="nvme_core.multipath=N"
Sur l'architecture IBM Z 64 bits, mettez à jour le menu de démarrage :
# zipl
- Redémarrer le système.
Utilisation d'un fichier de configuration du module du noyau :
Supprimez le fichier de configuration
/etc/modprobe.d/nvme_core.conf
:# rm /etc/modprobe.d/nvme_core.conf
Sauvegarder le fichier
initramfs
:# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date %m-\r%H%M%S).img
Reconstruire le site
initramfs
:# dracut --force --verbose
- Redémarrer le système.
Facultatif : Sur le système en cours d'exécution, modifiez la stratégie d'E/S sur les périphériques NVMe afin de répartir les E/S sur tous les chemins disponibles :
# echo "round-robin" > /sys/class/nvme-subsystem/nvme-subsys0/iopolicy
Facultatif : Définissez la politique d'E/S de manière persistante à l'aide des règles
udev
. Créez le fichier/etc/udev/rules.d/71-nvme-io-policy.rules
avec le contenu suivant :ACTION=="add|change", SUBSYSTEM=="nvme-subsystem", ATTR{iopolicy}="round-robin"
Vérification
Vérifiez que votre système reconnaît les périphériques NVMe. L'exemple suivant suppose que vous avez un sous-système de stockage NVMe over fabrics connecté avec deux espaces de noms NVMe :
# nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 a34c4f3a0d6f5cec Linux 1 250.06 GB / 250.06 GB 512 B + 0 B 4.18.0-2 /dev/nvme0n2 a34c4f3a0d6f5cec Linux 2 250.06 GB / 250.06 GB 512 B + 0 B 4.18.0-2
Liste de tous les sous-systèmes NVMe connectés :
# nvme list-subsys nvme-subsys0 - NQN=testnqn \ +- nvme0 fc traddr=nn-0x20000090fadd597a:pn-0x10000090fadd597a host_traddr=nn-0x20000090fac7e1dd:pn-0x10000090fac7e1dd live +- nvme1 fc traddr=nn-0x20000090fadd5979:pn-0x10000090fadd5979 host_traddr=nn-0x20000090fac7e1dd:pn-0x10000090fac7e1dd live +- nvme2 fc traddr=nn-0x20000090fadd5979:pn-0x10000090fadd5979 host_traddr=nn-0x20000090fac7e1de:pn-0x10000090fac7e1de live +- nvme3 fc traddr=nn-0x20000090fadd597a:pn-0x10000090fadd597a host_traddr=nn-0x20000090fac7e1de:pn-0x10000090fac7e1de live
Vérifiez le type de transport actif. Par exemple,
nvme0 fc
indique que l'appareil est connecté via le transport Fibre Channel, etnvme tcp
indique que l'appareil est connecté via TCP.Si vous avez modifié les options du noyau, vérifiez si le multipathing NVMe natif est activé sur la ligne de commande du noyau :
# cat /proc/cmdline BOOT_IMAGE=[...] nvme_core.multipath=Y
Si vous avez modifié la stratégie d'E/S, vérifiez que
round-robin
est la stratégie d'E/S active sur les périphériques NVMe :# cat /sys/class/nvme-subsystem/nvme-subsys0/iopolicy round-robin
Ressources supplémentaires
Chapitre 5. Modification du fichier de configuration de DM Multipath
Par défaut, DM Multipath fournit des valeurs de configuration pour les utilisations les plus courantes du multipathing. En outre, DM Multipath prend en charge les baies de stockage les plus courantes qui prennent elles-mêmes en charge DM Multipath. Vous pouvez remplacer les valeurs de configuration par défaut de DM Multipath en modifiant le fichier de configuration /etc/multipath.conf
. Si nécessaire, vous pouvez également ajouter au fichier de configuration une baie de stockage non prise en charge par défaut.
Pour obtenir des informations sur les valeurs de configuration par défaut, y compris sur les appareils pris en charge, exécutez l'une des commandes suivantes :
# multipathd show config # multipath -t
Si vous exécutez multipath à partir du système de fichiers initramfs
et que vous modifiez les fichiers de configuration de multipath, vous devez reconstruire le système de fichiers initramfs
pour que les modifications soient prises en compte
Dans le fichier de configuration multipath, vous ne devez spécifier que les sections dont vous avez besoin pour votre configuration ou que vous devez modifier par rapport aux valeurs par défaut. Si certaines sections du fichier ne sont pas pertinentes pour votre environnement ou si vous n'avez pas besoin de modifier les valeurs par défaut, vous pouvez les laisser en commentaires, comme dans le fichier initial.
Le fichier de configuration autorise la syntaxe de description des expressions régulières.
5.1. Aperçu du fichier de configuration
Le fichier de configuration multipath est divisé en plusieurs sections :
- liste noire
- Liste des dispositifs spécifiques qui ne seront pas pris en compte pour les trajets multiples.
- blacklist_exceptions
-
Liste des dispositifs à trajets multiples qui seraient autrement ignorés selon les paramètres de la section
blacklist
. - défauts
- Paramètres généraux par défaut pour DM Multipath.
- multitrajets
-
Paramètres des caractéristiques des différents dispositifs à trajets multiples. Ces valeurs remplacent ce qui est spécifié dans les sections
overrides
,devices
, etdefaults
du fichier de configuration. - dispositifs
-
Paramètres pour les contrôleurs de stockage individuels. Ces valeurs remplacent celles spécifiées dans la section
defaults
du fichier de configuration. Si vous utilisez une baie de stockage qui n'est pas prise en charge par défaut, vous devrez peut-être créer une sous-sectiondevices
pour votre baie. - dérogations
-
Paramètres appliqués à tous les appareils. Ces valeurs remplacent ce qui est spécifié dans les sections
devices
etdefaults
du fichier de configuration.
Lorsque le système détermine les attributs d'un dispositif à trajets multiples, il vérifie les paramètres des différentes sections du fichier multipath.conf
dans l'ordre suivant :
-
multipaths
section -
overrides
section -
devices
section -
defaults
section
5.2. Fichier de configuration par défaut
Le fichier de configuration /etc/multipath.conf
contient une section defaults
. Cette section comprend la configuration par défaut de Device Mapper (DM) Multipath. Les valeurs par défaut peuvent différer en fonction des paramètres initiaux de l'appareil.
Si vous installez votre machine sur un périphérique à chemins multiples, la configuration par défaut des chemins multiples s'applique automatiquement. Si vous n'avez pas configuré le multipathing lors de l'installation, exécutez la commande to suivante pour obtenir la configuration par défaut :
# mpathconf --enable
La configuration par défaut comprend les éléments suivants :
# For a complete list of the default configuration values, run either # multipath -t # or # multipathd show config # # For a list of configuration options with descriptions, see the multipath.conf # man page defaults { user_friendly_names yes find_multipaths yes }
Le tableau suivant décrit les attributs définis dans la section defaults
du fichier de configuration multipath.conf
. Les attributs spécifiés dans la section multipaths
ont une priorité plus élevée que les valeurs de la section devices
. Les attributs spécifiés dans la section devices
ont une priorité plus élevée que les valeurs par défaut. Utilisez la section overrides
pour définir les valeurs des attributs pour tous les types de dispositifs, même si ces types de dispositifs ont une entrée de configuration intégrée dans la section devices
. La section overrides
n'a pas d'attributs obligatoires. Cependant, tout attribut défini dans cette section est prioritaire sur les valeurs des sections devices
ou defaults
.
Tableau 5.1. Configuration par défaut des chemins multiples
Attribut | Description |
---|---|
|
Spécifie l'intervalle entre deux vérifications du chemin en secondes. Pour des chemins fonctionnant correctement, l'intervalle entre les vérifications augmente progressivement jusqu'à |
| Spécifie la longueur maximale de l'intervalle entre deux vérifications du chemin d'accès en secondes. |
The default value is | |
| Définit le mode de configuration des dispositifs à trajets multiples. Les valeurs disponibles sont les suivantes : |
| |
| |
| |
| |
| |
La valeur par défaut est | |
|
Il s'agit du délai d'attente en secondes pour les chemins supplémentaires après la détection du premier, si l'option |
Positive value: Si la valeur est positive, le délai s'applique à tous les appareils qui ne figurent pas sur la liste noire. | |
Negative value: S'il est défini avec une valeur négative, le délai ne s'applique qu'aux périphériques connus qui ont une entrée dans la table matérielle multipath, soit dans la table intégrée, soit dans une section | |
| |
La valeur par défaut pour le matériel connu est | |
|
Définir le délai d'attente des commandes interactives |
Pour les systèmes comportant un grand nombre d'appareils, les commandes interactives | |
La valeur par défaut est | |
|
Activer la réaffectation des cartes de mappes de périphériques. Avec cette option, le démon |
|
La valeur de verbosité par défaut est |
| Spécifie l'algorithme par défaut à utiliser pour déterminer le chemin à emprunter pour l'opération d'E/S suivante. Les valeurs possibles sont les suivantes : |
| |
| |
| |
La valeur par défaut est | |
| Spécifie la stratégie de groupement de chemins par défaut à appliquer aux chemins multiples non spécifiés. Les valeurs possibles sont les suivantes : |
| |
| |
| |
| |
| |
La valeur par défaut est | |
|
Cette option permet d'activer la fusion de |
La valeur de cette option est une liste d'enregistrements séparés par des espaces, comme | |
Si vous configurez cette option et qu'elle correspond au nom du nœud d'un périphérique, elle remplace toutes les autres méthodes configurées pour déterminer le WWID de ce périphérique. | |
Vous pouvez activer la fusion | |
La valeur par défaut est | |
|
Spécifie la fonction par défaut à appeler pour obtenir une valeur de priorité de chemin. Par exemple, les bits ALUA dans SPC-3 fournissent une valeur exploitable |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
La valeur par défaut dépend du paramètre | |
|
Arguments à transmettre à la fonction |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
La valeur par défaut est | |
| Les caractéristiques supplémentaires par défaut des dispositifs à trajets multiples, au format : "number_of_features_plus_arguments feature1 …". |
Les valeurs possibles pour | |
| |
| |
| |
| |
Par défaut, la valeur est unset. | |
| Spécifie la méthode par défaut pour déterminer l'état des chemins. Les valeurs possibles sont les suivantes : |
| |
| |
| |
| |
| |
| |
| |
| |
La valeur par défaut est | |
|
Cet attribut représente le préfixe |
La valeur par défaut est | |
| Gère la reprise des groupes de chemins. Les valeurs possibles sont les suivantes : |
| |
| |
| |
Une valeur numérique supérieure à zéro spécifie une reprise différée et est exprimée en secondes. | |
La valeur par défaut est | |
|
Spécifie le nombre de requêtes d'E/S à acheminer vers un chemin avant de passer au chemin suivant dans le groupe de chemins actuel. Ce paramètre ne concerne que les systèmes utilisant des noyaux antérieurs à la version 2.6.31. Les systèmes plus récents doivent utiliser |
|
Spécifie le nombre de requêtes d'E/S à acheminer vers un chemin avant de passer au chemin suivant dans le groupe de chemins actuel. Utilise un device-mapper-multipath basé sur les requêtes. Ce paramètre peut être utilisé sur les systèmes utilisant les noyaux actuels. Sur les systèmes utilisant des noyaux antérieurs à 2.6.31, utilisez |
| Une valeur numérique pour cet attribut spécifie le nombre de fois que le vérificateur de chemin doit échouer pour tous les chemins dans un dispositif à chemins multiples, avant de désactiver la mise en file d'attente. |
Une valeur de | |
Une valeur de | |
La valeur par défaut est | |
| Les valeurs possibles sont les suivantes : |
| |
| |
La valeur par défaut est | |
|
S'il a pour valeur |
|
S'il a pour valeur |
|
Définit le nombre maximum de descripteurs de fichiers ouverts qui peuvent être ouverts par multipath et le démon |
|
Le délai d'attente à utiliser pour les hiérarchiseurs et les vérificateurs de chemin qui émettent des commandes SCSI avec un délai d'attente explicite, en secondes. Le répertoire |
|
Le nombre de secondes que la couche SCSI attend après la détection d'un problème sur un port distant FC, avant d'interrompre les E/S vers les périphériques sur ce port distant. Cette valeur doit être inférieure à la valeur de |
| Le nombre de secondes que la couche SCSI attend après la détection d'un problème sur un port distant FC, avant de le retirer du système. La valeur infinie correspond à 2147483647 secondes, soit 68 ans. Le système d'exploitation détermine la valeur par défaut. |
|
Spécifie le nombre maximum de secondes que la couche SCSI consacre à la gestion des erreurs en cas de défaillance des périphériques SCSI. Après ce délai, la couche SCSI effectue une réinitialisation complète de l'adaptateur de bus hôte. Ce paramètre est nécessaire dans les cas où |
La valeur par défaut est | |
|
Si ce paramètre est défini sur |
Si | |
La valeur par défaut est | |
|
Spécifie l'attribut |
La valeur par défaut dépend du périphérique : | |
|
S'il est défini à |
La valeur par défaut est | |
|
S'il a pour valeur |
La valeur par défaut est | |
|
Utilisez les paramètres |
La valeur par défaut de | |
|
Cet attribut contrôle le nombre de secondes pendant lesquelles le démon |
La valeur par défaut est | |
|
Si la valeur est |
|
Si vous donnez à ces trois attributs une valeur supérieure à zéro, ils permettent au démon |
Voir la section Shaky paths detection du site | |
La valeur par défaut est | |
|
Si |
Si un chemin échoue deux fois pendant la période définie dans l'attribut | |
Voir la section Shaky paths detection du site | |
La valeur par défaut est | |
| Les valeurs possibles sont les suivantes : |
| |
| |
| |
Les attributs | |
Voir la section Shaky paths detection du site | |
La valeur par défaut est | |
|
Si la valeur est |
|
Si la valeur est |
|
Cette option permet de définir le paramètre de file d'attente de périphérique |
|
Cet attribut définit le nombre de secondes qu'attend le multipath après avoir créé un périphérique ne comportant que des chemins fantômes, avant de le marquer comme prêt à être utilisé dans |
En fixant cette valeur à | |
La valeur par défaut est | |
| Cet attribut active ou désactive les bibliothèques étrangères. |
La valeur est une expression régulière. Les bibliothèques étrangères sont chargées si leur nom correspond à l'expression. | |
Par défaut, aucune bibliothèque étrangère n'est activée. Utilisez | |
|
S'il est défini sur |
Cette option ne fonctionne que pour les périphériques SCSI configurés pour utiliser les valeurs par défaut | |
La valeur par défaut est | |
|
Cette option définit le nombre de tentatives de retrait d'un périphérique en cours d'utilisation. Entre chaque tentative, multipath devient inactif pendant 1 seconde. La valeur par défaut est |
|
S'il est défini sur |
La valeur par défaut est | |
|
Le paramètre |
Ce paramètre peut également être défini sur | |
|
Si cette option est définie sur |
Ressources supplémentaires
-
multipath.conf(5)
page de manuel
5.3. Section multipaths du fichier de configuration
Définissez les attributs de chaque périphérique multipath en utilisant la section multipaths
du fichier de configuration multipath.conf
. Device Mapper (DM) Multipath utilise ces attributs pour remplacer tous les autres paramètres de configuration, y compris ceux de la section overrides
. Reportez-vous à la section "Configuration file overrides" pour obtenir la liste des attributs de la section overrides
.
La section multipaths
ne reconnaît que la sous-section multipath
comme attribut. Le tableau suivant présente les attributs que vous pouvez définir dans la sous-section multipath
, pour chaque dispositif à trajets multiples spécifique. Ces attributs ne s'appliquent qu'à une seule voie multiple spécifiée. Si plusieurs sous-sections multipath
correspondent à un identifiant WWID (World Wide Identifier) de périphérique spécifique, le contenu de ces sous-sections est fusionné. Les paramètres des dernières entrées sont prioritaires sur les versions précédentes.
Tableau 5.2. Attributs des sous-sections à chemins multiples
Attribut | Description |
---|---|
|
Spécifie le WWID du périphérique à trajets multiples auquel s'appliquent les attributs de trajets multiples. Ce paramètre est obligatoire pour cette section du fichier |
|
Spécifie le nom symbolique du périphérique multipath auquel s'appliquent les attributs multipath. Si vous utilisez |
Les attributs de la liste suivante sont facultatifs. Si vous ne les définissez pas, les valeurs par défaut des sections overrides
, devices
ou defaults
s'appliquent. Pour une description complète de ces attributs, reportez-vous à la section Valeurs par défaut du fichier de configuration.
-
path_grouping_policy
-
path_selector
-
prio
-
prio_args
-
failback
-
no_path_retry
-
rr_min_io
-
rr_min_io_rq
-
flush_on_last_del
-
features
-
reservation_key
-
user_friendly_names
-
deferred_remove
-
san_path_err_threshold
-
san_path_err_forget_rate
-
san_path_err_recovery_time
-
marginal_path_err_sample_time
-
marginal_path_err_rate_threshold
-
marginal_path_err_recheck_gap_time
-
marginal_path_double_failed_time
-
delay_watch_checks
-
delay_wait_checks
-
skip_kpartx
-
max_sectors_kb
-
ghost_delay
L'exemple suivant montre les attributs multipath spécifiés dans le fichier de configuration pour deux périphériques multipath spécifiques. Le premier périphérique a un WWID de 3600508b4000156d70001200000b0000
et un nom symbolique de yellow
.
Le deuxième périphérique multipath de l'exemple a un WWID de 1DEC_321816758474
et un nom symbolique de red
.
Exemple 5.1. Spécification des attributs des chemins multiples
multipaths {
multipath {
wwid 3600508b4000156d70001200000b0000
alias yellow
path_grouping_policy multibus
path_selector "round-robin 0"
failback manual
no_path_retry 5
}
multipath {
wwid 1DEC_321816758474
alias red
}
}
Ressources supplémentaires
-
multipath.conf(5)
page de manuel - Fichier de configuration par défaut
- Le fichier de configuration remplace la section
5.4. Section des dispositifs du fichier de configuration
La section devices
du fichier de configuration multipath.conf
permet de définir les paramètres des différents types de contrôleurs de stockage. Les valeurs définies dans cette section remplacent les valeurs spécifiées dans la section defaults
.
Le système identifie les types de contrôleur de stockage par les mots-clés vendor
, product
, et revision
. Ces mots-clés sont des expressions régulières et doivent correspondre aux informations de sysfs
sur le périphérique spécifique.
La section devices
ne reconnaît que la sous-section device
comme attribut. Si plusieurs mots-clés correspondent à un dispositif, les attributs de toutes les entrées correspondantes s'appliquent à ce dispositif. Si un attribut est spécifié dans plusieurs sous-sections device
correspondantes, les versions ultérieures des entrées ont la priorité sur les entrées précédentes.
Les attributs de configuration de la dernière version des sous-sections device
remplacent les attributs des sous-sections devices
précédentes et de la section defaults
.
Le tableau suivant présente les attributs que vous pouvez définir dans la sous-section device
.
Tableau 5.3. Attributs de la section Appareils
Attribut | Description |
---|---|
| Spécifie l'expression régulière qui doit correspondre au nom du fournisseur de l'appareil. Cet attribut est obligatoire. |
| Spécifie l'expression régulière qui doit correspondre au nom du produit de l'appareil. Cet attribut est obligatoire. |
| Spécifie l'expression régulière qui doit correspondre à la révision du produit de l'appareil. Si l'attribut de révision est manquant, toutes les révisions de l'appareil sont prises en compte. |
|
Multipath utilise cet attribut pour créer une entrée de périphérique |
| Affiche les informations de la page Vital Product Data (VPD) spécifique au fournisseur, en utilisant l'abréviation de la page VPD. |
Le démon | |
| Spécifie le gestionnaire de matériel à utiliser pour un type de périphérique particulier. Toutes les valeurs possibles dépendent du matériel et comprennent |
| |
| |
| |
| |
| |
La valeur par défaut est |
les noyaux Linux, à partir de la version 4.3, attachent automatiquement un gestionnaire de périphérique aux périphériques connus. Cela inclut tous les périphériques supportant SCSI-3 ALUA). Le noyau ne permet pas de modifier le gestionnaire ultérieurement. Définir l'attribut hardware_handler pour de tels périphériques sur ces noyaux n'a aucun effet.
Les attributs de la liste suivante sont facultatifs. Si vous ne les définissez pas, les valeurs par défaut des sections defaults
s'appliquent. Pour une description complète de ces attributs, reportez-vous à la section Défauts des fichiers de configuration.
-
path_grouping_policy
-
uid_attribute
-
getuid_callout
-
path_selector
-
path_checker
-
prio
-
prio_args
-
failback
-
alias_prefix
-
no_path_retry
-
rr_min_io
-
rr_min_io_rq
-
flush_on_last_del
-
features
-
reservation_key
-
user_friendly_names
-
deferred_remove
-
san_path_err_threshold
-
san_path_err_forget_rate
-
san_path_err_recovery_time
-
marginal_path_err_sample_time
-
marginal_path_err_rate_threshold
-
marginal_path_err_recheck_gap_time
-
marginal_path_double_failed_time
-
delay_watch_checks
-
delay_wait_checks
-
skip_kpartx
-
max_sectors_kb
-
ghost_delay
-
all_tg_pt
Ressources supplémentaires
-
multipath.conf(5)
page de manuel - Fichier de configuration par défaut
5.5. Le fichier de configuration remplace la section
La section overrides
reconnaît la sous-section facultative protocol
et peut contenir plusieurs sous-sections protocol
. Le système compare les dispositifs de chemin d'accès à la sous-section protocol
, en utilisant l'attribut obligatoire type
. Les attributs d'une sous-section protocol
correspondante sont prioritaires sur les attributs du reste de la section overrides
. S'il existe plusieurs sous-sections protocol
correspondantes, les entrées les plus récentes ont une priorité plus élevée.
Les attributs de la liste suivante sont facultatifs. Si vous ne les définissez pas, les valeurs par défaut des sections devices
ou defaults
s'appliquent.
-
path_grouping_policy
-
uid_attribute
-
getuid_callout
-
path_selector
-
path_checker
-
alias_prefix
-
features
-
prio
-
prio_args
-
failback
-
no_path_retry
-
rr_min_io
-
rr_min_io_rq
-
flush_on_last_del
-
fast_io_fail_tmo
-
dev_loss_tmo
-
eh_deadline
-
user_friendly_names
-
retain_attached_hw_handler
-
detect_prio
-
detect_checker
-
deferred_remove
-
san_path_err_threshold
-
san_path_err_forget_rate
-
san_path_err_recovery_time
-
marginal_path_err_sample_time
-
marginal_path_err_rate_threshold
-
marginal_path_err_recheck_gap_time
-
marginal_path_double_failed_time
-
delay_watch_checks
-
delay_wait_checks
-
skip_kpartx
-
max_sectors_kb
-
ghost_delay
-
all_tg_pt
La sous-section protocol
reconnaît l'attribut obligatoire suivant :
Tableau 5.4. Attribut de la sous-section du protocole
Attribut | Description |
---|---|
| Spécifie la chaîne de protocole du dispositif de chemin d'accès. Les valeurs possibles sont les suivantes : |
| |
Cet attribut n'est pas une expression régulière. La chaîne du protocole du dispositif de chemin d'accès doit correspondre exactement. |
Les attributs de la liste suivante sont facultatifs pour la sous-section protocol
. Si vous ne les définissez pas, les valeurs par défaut des sections overrides
, devices
ou defaults
s'appliquent.
-
fast_io_fail_tmo
-
dev_loss_tmo
-
eh_deadline
Ressources supplémentaires
-
multipath.conf(5)
page de manuel - Fichier de configuration par défaut
5.6. DM Multipath overrides of the device timeout (dépassement du délai d'attente de l'appareil)
L'option recovery_tmo
sysfs
contrôle le délai d'attente pour un périphérique iSCSI particulier. Les options suivantes remplacent globalement les valeurs de recovery_tmo
:
-
L'option de configuration
replacement_timeout
remplace globalement la valeurrecovery_tmo
pour tous les périphériques iSCSI. Pour tous les dispositifs iSCSI gérés par DM Multipath, l'option
fast_io_fail_tmo
de DM Multipath remplace globalement la valeurrecovery_tmo
.L'option
fast_io_fail_tmo
de DM Multipath remplace également l'optionfast_io_fail_tmo
des périphériques Fibre Channel.
L'option DM Multipath fast_io_fail_tmo
est prioritaire sur replacement_timeout
. Red Hat ne recommande pas l'utilisation de replacement_timeout
pour remplacer recovery_tmo
dans les périphériques gérés par DM Multipath car DM Multipath réinitialise toujours recovery_tmo
, lorsque le service multipathd
est rechargé.
5.7. Modification des valeurs par défaut du fichier de configuration multipath
Le fichier de configuration /etc/multipath.conf
comprend une section defaults
qui fixe le paramètre user_friendly_names
à yes
, comme suit.
defaults { user_friendly_names yes }
Cela écrase la valeur par défaut du paramètre user_friendly_names
. Les valeurs par défaut définies dans la section defaults du fichier multipath.conf file
sont utilisées par DM Multipath à moins qu'elles ne soient écrasées par les attributs spécifiés dans les sections devices, multipath ou overrides du fichier multipath.conf
.
Procédure
Affichez le fichier de configuration de
/etc/multipath.conf
, qui comprend un modèle de configuration par défaut :#defaults { # polling_interval 10 # path_selector "round-robin 0" # path_grouping_policy multibus # uid_attribute ID_SERIAL # prio alua # path_checker readsector0 # rr_min_io 100 # max_fds 8192 # rr_weight priorities # failback immediate # no_path_retry fail # user_friendly_names yes #}
Remplacer la valeur par défaut de n'importe quel paramètre de configuration. Vous pouvez copier la ligne correspondante de ce modèle dans la section
defaults
et la décommenter.Par exemple, pour remplacer le paramètre
path_grouping_policy
parmultibus
au lieu de la valeur par défautfailover
, copiez la ligne appropriée du modèle dans la section des valeurs par défaut initiales du fichier de configuration et décommentez-la comme suit :defaults { user_friendly_names yes path_grouping_policy multibus }
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
Ressources supplémentaires
-
multipath.conf(5)
etmultipathd(8)
pages de manuel
5.8. Modifier les paramètres des trajets multiples pour des appareils spécifiques
Dans la section multipaths
du fichier de configuration multipath.conf
, vous pouvez ajouter des configurations spécifiques à un périphérique multipath individuel, référencées par le paramètre obligatoire WWID.
Ces valeurs par défaut sont utilisées par DM Multipath et remplacent les attributs définis dans les sections overrides
, defaults
et devices
du fichier multipath.conf
. La section multipaths
peut contenir un nombre quelconque de sous-sections multipath.
Procédure
Modifiez la section
multipaths
pour un dispositif à trajets multiples spécifique. L'exemple suivant montre les attributs multipath spécifiés dans le fichier de configuration pour deux dispositifs multipath spécifiques :-
Le premier dispositif a un WWID de
3600508b4000156d70001200000b0000
et un nom symbolique deyellow
. -
Le deuxième périphérique à trajets multiples de l'exemple a un WWID de
1DEC_321816758474
et un nom symbolique dered
.
Dans cet exemple, l'attribut
rr_weight
est défini commepriorities
.multipaths { multipath { wwid 3600508b4000156d70001200000b0000 alias yellow path_grouping_policy multibus path_selector "round-robin 0" failback manual rr_weight priorities no_path_retry 5 } multipath { wwid 1DEC_321816758474 alias red rr_weight priorities } }
-
Le premier dispositif a un WWID de
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
Ressources supplémentaires
-
multipath.conf(5)
page de manuel
5.9. Modifier la configuration des trajets multiples pour des appareils spécifiques avec le protocole
Vous pouvez configurer les chemins d'accès des périphériques à trajets multiples en fonction de leur protocole de transport. En utilisant la sous-section protocol
de la section overrides
du fichier /etc/multipath.conf
, vous pouvez remplacer les paramètres de configuration des chemins d'accès multiples sur certains chemins. Cela permet d'accéder aux périphériques à chemins multiples via plusieurs protocoles de transport, tels que Fiber Channel (FC) ou Internet Small Computer Systems Interface (iSCSI).
Les options définies dans la sous-section protocol
remplacent les valeurs des sections overrides
, devices
et defaults
. Ces options ne s'appliquent qu'aux dispositifs utilisant un protocole de transport correspondant au paramètre type
de la sous-section.
Conditions préalables
- Vous avez configuré Device Mapper (DM) multipath dans votre système.
- Vous disposez d'appareils à chemins multiples dont les chemins n'utilisent pas tous le même protocole de transport.
Procédure
Affichez le protocole du chemin d'accès spécifique en exécutant la commande suivante :
# multipathd show paths format "%d %P" dev protocol sda scsi:ata sdb scsi:fcp sdc scsi:fcp
Modifier la section
overrides
du fichier/etc/multipath.conf
en ajoutant des sous-sectionsprotocol
pour chaque type de voie multiple.Paramètres pour les dispositifs de chemin d'accès qui utilisent le protocole
scsi:fcp
:overrides { dev_loss_tmo 60 fast_io_fail_tmo 8 protocol { type "scsi:fcp" dev_loss_tmo 70 fast_io_fail_tmo 10 eh_deadline 360 }
Paramètres pour les dispositifs de chemin d'accès qui utilisent le protocole
scsi:iscsi
:overrides { dev_loss_tmo 60 fast_io_fail_tmo 8 protocol { type "scsi:iscsi" dev_loss_tmo 60 fast_io_fail_tmo 120 }
Paramètres pour les dispositifs de chemin d'accès, qui utilisent tous les autres protocoles :
overrides { dev_loss_tmo 60 fast_io_fail_tmo 8 protocol { type "<type of protocol>" dev_loss_tmo 60 fast_io_fail_tmo 8 }
La section overrides
peut comprendre plusieurs sous-sections protocol
.
La sous-section protocol
doit inclure un paramètre type
. La configuration de tous les chemins ayant un paramètre type
correspondant est alors mise à jour avec le reste des paramètres énumérés dans la sous-section protocol
.
Ressources supplémentaires
-
multipath.conf(5)
page de manuel
5.10. Modification des paramètres multipath pour les contrôleurs de stockage
La section devices
du fichier de configuration multipath.conf
définit les attributs des différents périphériques de stockage. Ces attributs sont utilisés par DM Multipath à moins qu'ils ne soient remplacés par les attributs spécifiés dans les sections multipaths
ou overrides
du fichier multipath.conf
pour les chemins d'accès qui contiennent le périphérique. Ces attributs remplacent les attributs définis dans la section defaults
du fichier multipath.conf
.
Procédure
Voir les informations sur la valeur de configuration par défaut, y compris les appareils pris en charge :
# multipathd show config # multipath -t
De nombreux dispositifs prenant en charge le multipathing sont inclus par défaut dans une configuration multipath.
-
Facultatif : Si vous devez modifier les valeurs de configuration par défaut, vous pouvez les écraser en incluant une entrée dans le fichier de configuration de l'appareil qui écrase ces valeurs. Vous pouvez copier les valeurs par défaut de la configuration du périphérique que la commande
multipathd show config
affiche et remplacer les valeurs que vous souhaitez modifier. Ajoutez un appareil qui n'est pas configuré automatiquement par défaut à la section
devices
du fichier de configuration en définissant les paramètresvendor
etproduct
. Vous trouverez ces valeurs en ouvrant les fenêtres/sys/block/device_name/device/vendor
et/sys/block/device_name/device/model
où device_name est le dispositif à multipatcher, comme indiqué dans l'exemple suivant :# cat /sys/block/sda/device/vendor WINSYS # cat /sys/block/sda/device/model SF2372
Facultatif : Spécifiez les paramètres supplémentaires en fonction de votre appareil spécifique :
active/active
dispositif-
Il n'est généralement pas nécessaire de définir des paramètres supplémentaires dans ce cas. Si nécessaire, vous pouvez définir
path_grouping_policy
enmultibus
. Les autres paramètres à définir sontno_path_retry
etrr_min_io
. active/passive
dispositif-
S'il commute automatiquement les chemins avec des E/S vers le chemin passif, vous devez changer la fonction de vérification pour une fonction qui n'envoie pas d'E/S vers le chemin pour tester s'il fonctionne, sinon votre périphérique continuera à échouer. Cela signifie que vous avez réglé
path_checker
surtur
, ce qui fonctionne pour tous les périphériques SCSI qui supportent la commande Test Unit Ready, ce qui est le cas de la plupart d'entre eux.
Si le périphérique a besoin d'une commande spéciale pour changer de chemin, la configuration de ce périphérique pour les chemins multiples nécessite un module noyau de gestion du matériel. Le gestionnaire de matériel actuellement disponible est
emc
. S'il n'est pas suffisant pour votre périphérique, il se peut que vous ne puissiez pas configurer le périphérique pour les chemins multiples.L'exemple suivant montre une entrée
device
dans le fichier de configuration multipath :# } # device { # vendor "COMPAQ " # product "MSA1000 " # path_grouping_policy multibus # path_checker tur # rr_weight priorities # } #}
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
Ressources supplémentaires
-
multipath.conf(5)
etmultipathd(8)
pages de manuel
5.11. Réglage des valeurs de trajets multiples pour tous les appareils
La section overrides
du fichier de configuration multipath.conf
vous permet de définir une valeur de configuration pour tous vos appareils. Cette section prend en charge tous les attributs pris en charge par les sections devices
et defaults
du fichier de configuration multipath.conf
, c'est-à-dire tous les attributs de la section devices
, à l'exception de vendor
, product
et revision
.
DM Multipath utilise ces attributs pour tous les périphériques, à moins qu'ils ne soient remplacés par les attributs spécifiés dans la section multipaths
du fichier multipath.conf
pour les chemins qui contiennent le périphérique. Ces attributs remplacent les attributs définis dans les sections devices
et defaults
du fichier multipath.conf
.
Procédure
Remplacer les paramètres spécifiques à un appareil. Par exemple, vous pourriez vouloir que tous les dispositifs définissent
no_path_retry
commefail
. Utilisez la commande suivante pour désactiver la mise en file d'attente, lorsque tous les chemins ont échoué. Cette commande est prioritaire sur tous les paramètres spécifiques au dispositif.overrides { no_path_retry fail }
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
Ressources supplémentaires
-
multipath.conf(5)
page de manuel
Chapitre 6. Empêcher les dispositifs de multipathing
Vous pouvez configurer DM Multipath pour qu'il ignore les appareils sélectionnés lorsqu'il configure des appareils à trajets multiples. DM Multipath ne regroupe pas ces appareils ignorés dans un appareil à trajets multiples.
6.1. Conditions de création par DM Multipath d'un dispositif multipath pour un chemin
DM Multipath dispose d'un ensemble de règles par défaut pour déterminer s'il convient de créer un périphérique multipath pour un chemin ou d'ignorer le chemin. Vous pouvez configurer le comportement.
Si le paramètre de configuration find_multipaths
a la valeur off
, multipath tente toujours de créer un périphérique multipath pour chaque chemin qui n'est pas explicitement désactivé. Si le paramètre de configuration find_multipaths
a la valeur on
, multipath ne crée un périphérique que si l'une des conditions suivantes est remplie :
- Il y a au moins deux chemins avec la même identification mondiale (WWID) qui ne sont pas désactivés.
-
Vous forcez manuellement la création du dispositif en spécifiant un dispositif à l'aide de la commande
multipath
. - Un chemin a le même WWID qu'un périphérique multipath créé précédemment, même si ce périphérique n'existe pas encore. Chaque fois qu'un périphérique multipath est créé, multipath se souvient du WWID du périphérique de sorte qu'il crée automatiquement le périphérique à nouveau dès qu'il voit un chemin avec ce WWID. Cela permet à multipath de choisir automatiquement les chemins corrects à transformer en périphériques multipath, sans avoir à désactiver le multipathing sur d'autres périphériques.
Si vous avez précédemment créé un dispositif à chemins multiples sans utiliser le paramètre find_multipaths
et que vous définissez ensuite le paramètre à on
, vous devrez peut-être supprimer du fichier /etc/multipath/wwids
les WWID de tout dispositif que vous ne souhaitez pas voir créé en tant que dispositif à chemins multiples. L'exemple suivant montre un exemple de fichier /etc/multipath/wwids
. Les WWID sont entourés de barres obliques (/
) :
# Multipath wwids, Version : 1.0 # NOTE: This file is automatically maintained by multipath and multipathd. # You should not need to edit this file in normal circumstances. # # Valid WWIDs: /3600d0230000000000e13955cc3757802/ /3600d0230000000000e13955cc3757801/ /3600d0230000000000e13955cc3757800/ /3600d02300069c9ce09d41c31f29d4c00/ /SWINSYS SF2372 0E13955CC3757802/ /3600d0230000000000e13955cc3757803/
En plus de on
et off
, vous pouvez également définir find_multipaths
avec les valeurs suivantes :
strict
-
Multipath n'accepte jamais les chemins qui n'ont pas été multipatchés auparavant et qui ne se trouvent donc pas dans le fichier
/etc/multipath/wwids
. smart
-
Multipath accepte toujours les dispositifs non désactivés dans
udev
dès qu'ils apparaissent. Simultipathd
ne crée pas le dispositif dans le délai fixé avec le paramètrefind_multipaths_timeout
, il abandonne son droit sur le dispositif.
La valeur par défaut de find_multipaths
est off
. Le fichier par défaut multipath.conf
créé par mpathconf
, cependant, fixera la valeur de find_multipaths
à on
.
Lorsque le paramètre find_multipaths
est défini sur on
, la désactivation du multipathing n'est possible que sur les périphériques disposant de plusieurs chemins d'accès que vous ne souhaitez pas voir multipathés. Pour cette raison, il n'est généralement pas nécessaire de désactiver le multipathing sur les périphériques.
Si vous ajoutez un dispositif à chemins multiples créé précédemment à blacklist
, la suppression du WWID de ce dispositif du fichier /etc/multipath/wwids
à l'aide de l'option -w
peut permettre d'éviter des problèmes avec d'autres programmes. Par exemple, pour supprimer le dispositif /dev/sdb
avec le WWID 3600d0230000000000e13954ed5f89300
du fichier /etc/multipath/wwids
, vous pouvez utiliser l'une des méthodes suivantes.
Suppression d'un périphérique multipath en utilisant le nom du périphérique.
#multipath -w /dev/sdb wwid '3600d0230000000000e13954ed5f89300' removed
Suppression d'un périphérique à trajets multiples à l'aide du WWID du périphérique.
#multipath -w 3600d0230000000000e13954ed5f89300 wwid '3600d0230000000000e13954ed5f89300' removed
Vous pouvez également utiliser l'option -W
pour mettre à jour le fichier /etc/multipath/wwids
. Cette option réinitialise le fichier /etc/multipath/wwids
pour qu'il ne contienne que les WWID des périphériques multipath actuels. Pour réinitialiser le fichier, exécutez la commande suivante :
#multipath -W successfully reset wwids
Ressources supplémentaires
-
multipath.conf(5)
page de manuel
6.2. Critères de désactivation du multipathing sur certains appareils
Vous pouvez désactiver le multipathing sur les périphériques en fonction de l'un des critères suivants :
- WWID
- nom du dispositif
- type d'appareil
- propriété
- protocole
Pour chaque appareil, DM Multipath évalue ces critères dans l'ordre suivant :
-
property
-
devnode
-
device
-
protocol
-
wwid
Si un appareil s'avère être désactivé par l'un des critères mentionnés, DM Multipath l'exclut du traitement par multipathd
, et n'évalue pas les critères ultérieurs. Pour chaque critère, la liste des exceptions est prioritaire par rapport à la liste des appareils désactivés, si un appareil correspond aux deux.
Par défaut, plusieurs types de périphériques sont désactivés, même après avoir commenté la section initiale blacklist
du fichier de configuration.
Ressources supplémentaires
6.3. Désactivation du multipathing par WWID
Vous pouvez désactiver le multipathing sur des appareils individuels en fonction de leur identification mondiale (WWID).
Procédure
Désactiver des dispositifs dans le fichier de configuration
/etc/multipath.conf
à l'aide de l'entréewwid
.L'exemple suivant montre les lignes du fichier de configuration DM Multipath qui désactivent un périphérique dont le WWID est
26353900f02796769
:blacklist { wwid 26353900f02796769 }
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
6.4. Désactivation du multipathing par nom de périphérique
Vous pouvez désactiver le multipathing sur les types de périphériques par nom de périphérique, de sorte que DM Multipath ne les regroupera pas dans un périphérique multipath.
Procédure
Désactiver des dispositifs dans le fichier de configuration
/etc/multipath.conf
à l'aide de l'entréedevnode
.L'exemple suivant montre les lignes du fichier de configuration DM Multipath qui désactivent tous les périphériques SCSI, car il désactive également tous les périphériques
sd*
:blacklist { devnode "^sd[a-z]" }
Vous pouvez utiliser une entrée
devnode
pour désactiver des périphériques individuels plutôt que tous les périphériques d'un type spécifique. Toutefois, cette méthode n'est pas recommandée car, à moins qu'il ne soit mappé de manière statique par les règlesudev
, rien ne garantit qu'un périphérique spécifique portera le même nom au redémarrage. Par exemple, le nom d'un périphérique peut passer de/dev/sda
à/dev/sdb
au redémarrage.Par défaut, DM Multipath désactive tous les périphériques qui ne sont pas SCSI, NVMe ou DASD, en utilisant l'entrée suivante
devnode
:blacklist { devnode "!^(sd[a-z]|dasd[a-z]|nvme[0-9])" }
Les appareils que cette entrée désactive ne prennent généralement pas en charge DM Multipath.
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
Ressources supplémentaires
6.5. Désactivation du multipathing par type de périphérique
Vous pouvez désactiver le multipathing sur les périphériques en utilisant la section des périphériques.
Procédure
Désactiver les dispositifs dans le fichier de configuration
/etc/multipath.conf
à l'aide de la sectiondevice
.L'exemple suivant désactive le multipathing sur tous les périphériques IBM DS4200 et HP :
blacklist { device { vendor "IBM" product "3S42" #DS4200 Product 10 } device { vendor "HP" product ".*" } }
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
6.6. Désactivation du multipathing par la propriété udev
Vous pouvez désactiver le multipathing sur les périphériques par le biais de leur paramètre de propriété udev
.
Procédure
Désactivez les périphériques dans le fichier de configuration
/etc/multipath.conf
à l'aide du paramètreproperty
. Ce paramètre est une chaîne d'expressions régulières qui correspond au nom de la variable d'environnementudev
pour les périphériques.L'exemple suivant désactive le multipathing sur tous les périphériques ayant la propriété
udev
ID_ATA
:blacklist { property "ID_ATA" }
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
6.7. Désactivation du multipathing par protocole de périphérique
Vous pouvez désactiver le multipathing sur les appareils en utilisant le protocole de l'appareil.
Procédure
Facultatif : Affichez le protocole utilisé par un chemin d'accès :
# multipathd show paths format "%d %P"
Désactiver les dispositifs dans le fichier de configuration
/etc/multipath.conf
à l'aide du paramètreprotocol
.Le paramètre protocol prend une expression régulière et met sur liste noire tous les dispositifs dont les chaînes de protocole correspondent. Par exemple, pour désactiver le multipathing sur tous les périphériques nvme, procédez comme suit :
blacklist { protocol "nvme" }
DM Multipath reconnaît les chaînes de protocole suivantes :
-
scsi:fcp
-
scsi:spi
-
scsi:ssa
-
scsi:sbp
-
scsi:srp
-
scsi:iscsi
-
scsi:sas
-
scsi:adt
-
scsi:ata
-
scsi:unspec
-
ccw
-
cciss
-
nvme:pcie
-
nvme:rdma
-
nvme:fc
-
nvme:tcp
-
nvme:loop
-
nvme:apple-nvme
-
nvme:unspec
-
undef
-
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
6.8. Ajout d'exceptions pour les appareils dont le multipathing est désactivé
Vous pouvez activer le multipathing en ajoutant des exceptions sur les périphériques où le multipathing est actuellement désactivé.
Conditions préalables
- Le multipathing est désactivé sur certains appareils.
Procédure
Activez le multipathing sur les périphériques à l'aide de la section
blacklist_exceptions
du fichier de configuration/etc/multipath.conf
.Lorsque vous spécifiez des dispositifs dans la section
blacklist_exceptions
du fichier de configuration, vous devez spécifier les exceptions en utilisant les mêmes critères que ceux spécifiés dans la sectionblacklist
. Par exemple, une exception WWID ne s'applique pas aux dispositifs désactivés par une entréedevnode
, même si le dispositif désactivé est associé à cette WWID. De même, les exceptionsdevnode
ne s'appliquent qu'aux entréesdevnode
et les exceptionsdevice
ne s'appliquent qu'aux entrées de dispositifs.Exemple 6.1. Une exception par WWID
Si vous disposez d'un grand nombre de périphériques et que vous souhaitez utiliser le multipath pour un seul d'entre eux avec le WWID
3600d0230000000000e13955cc3757803
, au lieu de désactiver individuellement chacun des périphériques sauf celui que vous voulez, vous pouvez les désactiver tous, puis activer uniquement celui que vous voulez en ajoutant les lignes suivantes au fichier/etc/multipath.conf
:blacklist { wwid ".*" } blacklist_exceptions { wwid "3600d0230000000000e13955cc3757803" }
Vous pouvez également utiliser un point d'exclamation (
!
) pour inverser l'entréeblacklist
, qui désactive tous les périphériques à l'exception du WWID spécifié :blacklist { wwid "!3600d0230000000000e13955cc3757803" }
Exemple 6.2. Une exception par propriété udev
Le paramètre
property
fonctionne différemment des autres paramètresblacklist_exception
. La valeur du paramètreproperty
doit correspondre au nom d'une variable de la base de donnéesudev
. Dans le cas contraire, le périphérique est désactivé. Ce paramètre permet de désactiver le multipathing sur certains périphériques SCSI, tels que les clés USB et les disques durs locaux.Pour activer le multipathing uniquement sur les périphériques SCSI qui peuvent raisonnablement être multipathés, définissez ce paramètre sur
(SCSI_IDENT_|ID_WWN)
comme dans l'exemple suivant :blacklist_exceptions { property "(SCSI_IDENT_|ID_WWN)" }
Validez le fichier
/etc/multipath.conf
après avoir modifié le fichier de configuration multipath en exécutant l'une des commandes suivantes :Pour afficher les éventuelles erreurs de configuration, exécutez la commande
# multipath -t > /dev/null
Pour afficher la nouvelle configuration avec les modifications ajoutées, exécutez :
# multipath -t
Rechargez le fichier
/etc/multipath.conf
et reconfigurez le démonmultipathd
pour que les changements prennent effet :# service multipathd reload
Chapitre 7. Gestion des volumes multipatagés
Voici quelques commandes fournies par DM Multipath, que vous pouvez utiliser pour gérer les volumes multipath :
-
multipath
-
dmsetup
-
multipathd
7.1. Redimensionnement d'un dispositif à trajets multiples en ligne
Si vous devez redimensionner un dispositif à trajets multiples en ligne, suivez la procédure suivante.
Procédure
- Redimensionnez votre appareil physique.
Exécutez la commande suivante pour trouver les chemins d'accès au numéro d'unité logique (LUN) :
#
multipath -l
Redimensionnez vos chemins d'accès. Pour les périphériques SCSI, l'écriture d'un 1 dans le fichier
rescan
pour le périphérique entraîne une nouvelle analyse du pilote SCSI, comme dans la commande suivante :#
echo 1 > /sys/block/path_device/device/rescan
Veillez à exécuter cette commande pour chacun des dispositifs de chemin d'accès. Par exemple, si vos dispositifs de chemin d'accès sont
sda
,sdb
,sde
etsdf
, vous devez exécuter les commandes suivantes :#
echo 1 > /sys/block/sda/device/rescan
#echo 1 > /sys/block/sdb/device/rescan
#echo 1 > /sys/block/sde/device/rescan
#echo 1 > /sys/block/sdf/device/rescan
Redimensionnez votre appareil à trajets multiples :
#
multipathd resize map multipath_device
Redimensionner le système de fichiers (en supposant qu'aucune partition LVM ou DOS n'est utilisée) :
#
resize2fs /dev/mapper/mpatha
7.2. Déplacement d'un système de fichiers racine d'un périphérique à chemin d'accès unique vers un périphérique à chemins d'accès multiples
Si vous avez installé votre système sur un périphérique à chemin unique et que vous ajoutez par la suite un autre chemin au système de fichiers racine, vous devrez déplacer votre système de fichiers racine vers un périphérique à chemins multiples. Reportez-vous à la procédure suivante pour passer d'un périphérique à chemin unique à un périphérique à chemins multiples.
Conditions préalables
-
Vous avez installé le paquetage
device-mapper-multipath
.
Procédure
Créez le fichier de configuration
/etc/multipath.conf
, chargez le module multipath et activez le servicemultipathd
systemd
:# dnf install device-mapper-multipath
Exécutez la commande suivante pour créer le fichier de configuration
/etc/multipath.conf
, charger le module multipath et définirchkconfig
pourmultipathd
àon
:# mpathconf --enable
-
Si le paramètre de configuration
find_multipaths
n'est pas défini suryes
, modifiez les sectionsblacklist
etblacklist_exceptions
du fichier/etc/multipath.conf
, comme décrit dans la section Empêcher les périphériques d'emprunter des chemins multiples. Pour que multipath construise un périphérique multipath au-dessus du périphérique racine dès qu'il est découvert, entrez la commande suivante. Cette commande garantit également que
find_multipaths
autorise le périphérique, même s'il n'a qu'un seul chemin d'accès.# multipath -a root_devname
Par exemple, si le périphérique racine est
/dev/sdb
, entrez la commande suivante.#
multipath -a /dev/sdb
wwid '3600d02300069c9ce09d41c4ac9c53200' added
Confirmez que votre fichier de configuration est correctement configuré en exécutant la commande
multipath
et recherchez dans la sortie une ligne du format suivant. Cela indique que la commande n'a pas réussi à créer le périphérique à trajets multiples.date wwid: ignoring map
Par exemple, si le WWID de l'appareil est 3600d02300069c9ce09d41c4ac9c53200, vous verrez une ligne dans la sortie telle que la suivante :
# multipath Oct 21 09:37:19 | 3600d02300069c9ce09d41c4ac9c53200: ignoring map
Reconstruire le système de fichiers
initramfs
avecmultipath
:# dracut --force -H --add multipath
- Arrêter la machine.
- Démarrer la machine.
- Rendre les autres chemins visibles à la machine.
Verification steps
Vérifiez si le périphérique à trajets multiples est créé en exécutant la commande suivante :
# multipath -l | grep 3600d02300069c9ce09d41c4ac9c53200 mpatha (3600d02300069c9ce09d41c4ac9c53200) dm-0 3PARdata,VV
7.3. Déplacement d'un système de fichiers swap d'un périphérique à chemin d'accès unique vers un périphérique à chemins d'accès multiples
Par défaut, les périphériques d'échange sont configurés en tant que volumes logiques. Il n'est donc pas nécessaire de suivre une procédure particulière pour les configurer en tant que périphériques à chemins multiples, à condition que vous configuriez les chemins multiples sur les volumes physiques qui constituent le groupe de volumes logiques. Toutefois, si votre périphérique d'échange n'est pas un volume LVM et qu'il est monté par nom de périphérique, vous devrez peut-être modifier le fichier /etc/fstab
pour passer au nom de périphérique à chemins multiples approprié.
Procédure
Ajoutez le WWID de l'appareil au fichier
/etc/multipath/wwids
:# multipath -a swap_devname
Par exemple, si le périphérique racine est
/dev/sdb
, entrez la commande suivante.# multipath -a /dev/sdb wwid '3600d02300069c9ce09d41c4ac9c53200' added
Confirmez que votre fichier de configuration est correctement configuré en exécutant la commande
multipath
et recherchez dans la sortie une ligne au format suivant :date wwid: ignoring map
Cela indique que la commande n'a pas réussi à créer le périphérique à trajets multiples.
Par exemple, si le WWID de l'appareil est 3600d02300069c9ce09d41c4ac9c53200, vous verrez une ligne dans la sortie telle que la suivante :
#
multipath
Oct 21 09:37:19 | 3600d02300069c9ce09d41c4ac9c53200: ignoring mapCréez un alias pour le périphérique d'échange dans le fichier
/etc/multipath.conf
:multipaths { multipath { wwid WWID_of_swap_device alias swapdev } }
Modifiez le fichier
/etc/fstab
et remplacez l'ancien chemin d'accès au périphérique racine par le périphérique à chemins multiples.Par exemple, si vous avez l'entrée suivante dans le fichier
/etc/fstab
:/dev/sdb2 swap swap defaults 0 0
Modifiez l'entrée comme suit :
/dev/mapper/swapdev swap swap defaults 0 0
Reconstruire le système de fichiers initramfs avec multipath :
# dracut --force -H --add multipath
- Arrêter la machine.
- Démarrer la machine.
- Rendre les autres chemins visibles à la machine.
Verification steps
Vérifiez que le périphérique de permutation se trouve sur le périphérique à chemins multiples :
# swapon -s
Par exemple :
# swapon -s Filename Type Size Used Priority /dev/dm-3 partition 4169724 0 -2
Le nom du fichier doit correspondre au périphérique d'échange multipath.
# readlink -f /dev/mapper/swapdev /dev/dm-3
7.4. Détermination des entrées de mappeur de périphériques avec la commande dmsetup
Vous pouvez utiliser la commande dmsetup
pour savoir quelles entrées de mappeur de périphériques correspondent aux périphériques multipatches.
Procédure
Affiche tous les dispositifs de mappage de périphériques et leurs numéros majeurs et mineurs. Les numéros mineurs déterminent le nom du périphérique dm. Par exemple, un numéro mineur de 3 correspond au périphérique multipatched
/dev/dm-3
.#
dmsetup ls
mpathd (253:4) mpathep1 (253:12) mpathfp1 (253:11) mpathb (253:3) mpathgp1 (253:14) mpathhp1 (253:13) mpatha (253:2) mpathh (253:9) mpathg (253:8) VolGroup00-LogVol01 (253:1) mpathf (253:7) VolGroup00-LogVol00 (253:0) mpathe (253:6) mpathbp1 (253:10) mpathd (253:5)
7.5. Administration du démon multipathd
Les commandes multipathd
peuvent être utilisées pour administrer le démon multipathd
.
Procédure
Affichez le format standard par défaut de la sortie de la commande
multipathd show maps
:#
multipathd show maps
name sysfs uuid mpathc dm-0 360a98000324669436c2b45666c567942Certaines commandes
multipathd
comprennent une optionformat
suivie d'un caractère générique. La commande suivante permet d'afficher la liste des caractères génériques disponibles :#
multipathd show wildcards
Affiche les périphériques multipath que
multipathd
surveille, à l'aide d'une chaîne de format avec des caractères génériques multipath, au format normal et brut :list|show maps|multipaths format $format list|show maps|multipaths raw format $format
La commande
multipathd
prend en charge les commandes de format qui affichent l'état des périphériques multipath et des chemins dans des versions de format " brut ". Au format brut, aucun en-tête n'est imprimé et les champs ne sont pas remplis pour aligner les colonnes sur les en-têtes. Au lieu de cela, les champs s'impriment exactement comme spécifié dans la chaîne de format. Cette sortie peut alors être plus facilement utilisée pour l'écriture de scripts. Vous pouvez afficher les caractères génériques utilisés dans la chaîne de format à l'aide de la commandemultipathd show wildcards
.Affiche les chemins que
multipathd
surveille, à l'aide d'une chaîne de format avec des caractères génériques pour les chemins multiples, dans un format régulier et brut :list|show paths format $format list|show paths raw format $format
Affichez la différence entre les formats brut et non brut pour le
multipathd show maps
. Notez que dans le formatraw
, il n'y a pas d'en-tête et seulement un espace entre les colonnes :#
multipathd show maps format "%n %w %d %s"
name uuid sysfs vend/prod/rev mpathc 360a98000324669436c2b45666c567942 dm-0 NETAPP,LUN #multipathd show maps raw format "%n %w %d %s"
mpathc 360a98000324669436c2b45666c567942 dm-0 NETAPP,LUN
Ressources supplémentaires
-
multipathd
(8) page de manuel
Chapitre 8. Retrait des périphériques de stockage
Vous pouvez retirer en toute sécurité un périphérique de stockage d'un système en cours d'exécution, ce qui permet d'éviter la surcharge de la mémoire du système et la perte de données.
Conditions préalables
Avant de retirer une unité de stockage, vous devez vous assurer que vous disposez de suffisamment de mémoire système libre en raison de l'augmentation de la charge de la mémoire système lors d'un rinçage d'E/S. Utilisez les commandes suivantes pour afficher la charge de mémoire actuelle et la mémoire libre du système :
# vmstat 1 100 # free
Red Hat ne recommande pas de supprimer un périphérique de stockage sur un système où :
- La mémoire libre est inférieure à 5 % de la mémoire totale dans plus de 10 échantillons sur 100.
-
La permutation est active (colonnes
si
etso
non nulles dans la sortie de la commandevmstat
).
8.1. Retrait en toute sécurité des dispositifs de stockage
Pour retirer en toute sécurité un périphérique de stockage d'un système en cours d'exécution, il faut adopter une approche de haut en bas. Commencez par la couche supérieure, qui est généralement une application ou un système de fichiers, et travaillez vers la couche inférieure, qui est le périphérique physique.
Vous pouvez utiliser les périphériques de stockage de plusieurs façons et ils peuvent avoir différentes configurations virtuelles au-dessus des périphériques physiques. Par exemple, vous pouvez regrouper plusieurs instances d'un périphérique dans un périphérique à chemins multiples, l'intégrer à un RAID ou à un groupe LVM. En outre, il est possible d'accéder aux périphériques via un système de fichiers ou directement, comme dans le cas d'un périphérique "brut".
En utilisant l'approche de haut en bas, vous devez vous assurer que
- le dispositif que vous souhaitez supprimer n'est pas utilisé
- toutes les E/S en attente vers le périphérique sont effacées
- le système d'exploitation ne fait pas référence au périphérique de stockage
8.2. Suppression des périphériques de bloc et des métadonnées associées
Pour supprimer en toute sécurité un périphérique de bloc d'un système en cours d'exécution, afin d'éviter une surcharge de la mémoire système et une perte de données, vous devez d'abord supprimer les métadonnées qu'il contient. Traitez chaque couche de la pile, en commençant par le système de fichiers, puis le disque. Ces actions permettent d'éviter de placer votre système dans un état incohérent.
Utilisez des commandes spécifiques qui peuvent varier en fonction du type de dispositifs que vous supprimez :
-
lvremove
vgremove
et sont spécifiques à LVM.pvremove
-
Pour le RAID logiciel, exécutez
mdadm
pour supprimer la matrice. Pour plus d'informations, voir Gestion du RAID. - Pour les dispositifs de blocage cryptés à l'aide de LUKS, il existe des étapes supplémentaires spécifiques. La procédure suivante ne fonctionnera pas pour les périphériques de bloc chiffrés à l'aide de LUKS. Pour plus d'informations, voir Chiffrement des périphériques de bloc à l'aide de LUKS.
Le fait de renumériser le bus SCSI ou d'effectuer toute autre action qui modifie l'état du système d'exploitation sans suivre la procédure décrite ici peut entraîner des retards dus aux délais d'entrée/sortie, à la suppression inattendue de périphériques ou à la perte de données.
Conditions préalables
- Vous disposez d'une pile de périphériques de bloc existante contenant le système de fichiers, le volume logique et le groupe de volumes.
- Vous vous êtes assuré qu'aucune autre application ou service n'utilise le dispositif que vous souhaitez supprimer.
- Vous avez sauvegardé les données de l'appareil que vous souhaitez supprimer.
Facultatif : si vous souhaitez supprimer un périphérique à chemins multiples et que vous ne pouvez pas accéder à ses périphériques de chemin, désactivez la mise en file d'attente du périphérique à chemins multiples en exécutant la commande suivante :
# multipathd disablequeueing map multipath-device
Cela permet aux E/S de l'appareil de tomber en panne, ce qui permet aux applications qui utilisent l'appareil de s'arrêter.
La suppression des périphériques et de leurs métadonnées, couche par couche, garantit qu'aucune signature périmée ne subsiste sur le disque.
Procédure
Démonter le système de fichiers :
# umount /mnt/mount-point
Retirer le système de fichiers :
# wipefs -a /dev/vg0/myvol
NoteSi vous avez ajouté une entrée dans le fichier
/etc/fstab
pour établir une association persistante entre le système de fichiers et un point de montage, vous devez également modifier/etc/fstab
à ce stade pour supprimer cette entrée.Poursuivez les étapes suivantes, en fonction du type de dispositif que vous souhaitez supprimer :
Supprimez le volume logique (LV) qui contenait le système de fichiers :
# lvremove vg0/myvol
S'il ne reste aucun autre volume logique dans le groupe de volumes (VG), vous pouvez supprimer en toute sécurité le VG qui contenait le périphérique :
# vgremove vg0
Supprimer les métadonnées du volume physique (PV) du ou des périphériques PV :
# pvremove /dev/sdc1
# wipefs -a /dev/sdc1
Supprimer les partitions qui contenaient les PV :
# parted /dev/sdc rm 1
Ne suivez les étapes suivantes que si vous souhaitez effacer complètement l'appareil.
Supprimez la table de partition :
# wipefs -a /dev/sdc
Ne suivez les étapes suivantes que si vous souhaitez retirer physiquement l'appareil.
Si vous supprimez un périphérique à chemins multiples, exécutez les commandes suivantes :
Afficher tous les chemins d'accès à l'appareil :
# multipath -l
La sortie de cette commande est nécessaire dans une étape ultérieure.
Rincer les E/S et retirer le dispositif à trajets multiples :
# multipath -f multipath-device
Si le périphérique n'est pas configuré comme périphérique à chemins multiples, ou s'il est configuré comme périphérique à chemins multiples et que vous avez précédemment transmis des E/S aux chemins individuels, videz toutes les E/S en attente sur tous les chemins de périphérique utilisés :
# blockdev --flushbufs device
Ceci est important pour les dispositifs auxquels on accède directement et pour lesquels les commandes
umount
ouvgreduce
n'effacent pas les E/S.Si vous retirez un périphérique SCSI, exécutez les commandes suivantes :
-
Supprimez toute référence au nom de l'appareil basé sur le chemin d'accès, tel que
/dev/sd
,/dev/disk/by-path
ou le numéromajor:minor
, dans les applications, les scripts ou les utilitaires du système. Cela permet de s'assurer que les différents dispositifs ajoutés à l'avenir ne seront pas confondus avec le dispositif actuel. Retirer du sous-système SCSI chaque chemin d'accès au périphérique :
# echo 1 > /sys/block/device-name/device/delete
Ici, le
device-name
est extrait de la sortie de la commandemultipath -l
, si le périphérique a été précédemment utilisé comme périphérique à trajets multiples.
-
Supprimez toute référence au nom de l'appareil basé sur le chemin d'accès, tel que
- Retirer le périphérique physique d'un système en cours d'exécution. Notez que les entrées/sorties vers d'autres périphériques ne s'arrêtent pas lorsque vous retirez ce périphérique.
Vérification
Vérifiez que les périphériques que vous souhaitez supprimer ne sont pas affichés dans la sortie de la commande
lsblk
. Voici un exemple de sortie :# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 5G 0 disk sr0 11:0 1 1024M 0 rom vda 252:0 0 10G 0 disk |-vda1 252:1 0 1M 0 part |-vda2 252:2 0 100M 0 part /boot/efi `-vda3 252:3 0 9.9G 0 part /
Ressources supplémentaires
-
Les pages de manuel
multipath(8)
,pvremove(8)
,vgremove(8)
,lvremove(8)
,wipefs(8)
,parted(8)
,blockdev(8)
etumount(8)
.
Chapitre 9. Dépannage du DM Multipath
Si vous rencontrez des difficultés dans la mise en œuvre d'une configuration à chemins multiples, vous pouvez vérifier plusieurs points. Les problèmes suivants peuvent être à l'origine d'une configuration à chemins multiples lente ou ne fonctionnant pas :
- Le démon multipath n'est pas en cours d'exécution
-
Si vous rencontrez des difficultés pour mettre en œuvre une configuration à chemins multiples, assurez-vous que le démon
multipathd
est en cours d'exécution, comme décrit dans la section Configuration de DM Multipath. Le démonmultipathd
doit être en cours d'exécution pour utiliser des périphériques à chemins multiples. - Problèmes avec la fonction
queue_if_no_path
-
Si un périphérique à chemins multiples est configuré avec l'option
features "1 queue_if_no_path"
, tout processus qui émet des E/S se bloque jusqu'à ce qu'un ou plusieurs chemins soient restaurés.
9.1. Résolution des problèmes liés à la fonctionnalité queue_if_no_path
Si un périphérique à chemins multiples est configuré avec l'option features "1 queue_if_no_path"
, tout processus qui émet des E/S se bloque jusqu'à ce qu'un ou plusieurs chemins soient restaurés. Pour éviter cela, définissez le paramètre no_path_retry N
dans le fichier /etc/multipath.conf
, où N est le nombre de fois que le système doit réessayer un chemin.
Si vous devez utiliser l'option features "1 queue_if_no_path"
et que vous rencontrez le problème mentionné ici, vous pouvez désactiver la politique de mise en file d'attente au moment de l'exécution pour un LUN particulier, pour lequel tous les chemins sont indisponibles.
Procédure
Désactiver la mise en file d'attente pour un appareil spécifique :
# multipathd disablequeueing map device
Désactiver la mise en file d'attente pour tous les appareils :
# multipathd disablequeueing maps
Après avoir désactivé la mise en file d'attente pour un périphérique, elle restera désactivée jusqu'à ce que multipathd
soit redémarré ou rechargé, ou jusqu'à ce que vous exécutiez l'une des commandes suivantes :
Réinitialise la file d'attente à la valeur précédente pour un appareil spécifique :
# multipathd restorequeueing map device
Réinitialise la file d'attente à la valeur précédente pour tous les appareils :
# multipathd restorequeueing maps
9.2. Dépannage avec la console interactive multipathd
La commande multipathd -k
est une interface interactive avec le démon multipathd
. La saisie de cette commande fait apparaître une console interactive multipath. Après avoir exécuté cette commande, vous pouvez saisir help
pour obtenir une liste des commandes disponibles et Ctrl+D pour quitter.
Utilisez la console interactive multipathd
pour résoudre les problèmes que vous pouvez rencontrer avec votre système.
Procédure
Affichez la configuration des chemins multiples, y compris les valeurs par défaut, avant de quitter la console :
# multipathd -k multipathd> show config multipathd> Ctrl+D
Assurez-vous que multipath a pris en compte toutes les modifications apportées au fichier
multipath.conf
:# multipathd -k multipathd> reconfigure multipathd> Ctrl+D
S'assurer que le vérificateur de chemin fonctionne correctement :
# multipathd -k multipathd> show paths multipathd> Ctrl+D
Vous pouvez également exécuter une seule commande interactive
multipathd
directement à partir de la ligne de commande, sans lancer la console interactive. Par exemple, pour vérifier que multipath a pris en compte les modifications apportées au fichiermultipath.conf
, exécutez la commande suivante :# multipathd reconfigure
Chapitre 10. Configuration du délai maximum de récupération des erreurs de stockage avec eh_deadline
Vous pouvez configurer le délai maximum autorisé pour récupérer les périphériques SCSI défaillants. Cette configuration garantit un temps de réponse E/S même lorsque le matériel de stockage ne répond plus en raison d'une défaillance.
10.1. Le paramètre eh_deadline
Le mécanisme de gestion des erreurs SCSI (EH) tente de récupérer les erreurs sur les périphériques SCSI défaillants. Le paramètre de l'objet hôte SCSI eh_deadline
vous permet de configurer la durée maximale de la récupération. À l'expiration du délai configuré, SCSI EH s'arrête et réinitialise l'ensemble de l'adaptateur de bus hôte (HBA).
L'utilisation de eh_deadline
peut réduire le temps nécessaire :
- pour fermer un chemin qui a échoué,
- pour changer de chemin, ou
- pour désactiver une tranche RAID.
Lorsque eh_deadline
expire, SCSI EH réinitialise l'adaptateur de bus hôte, ce qui affecte tous les chemins cibles sur cet adaptateur de bus hôte, et pas seulement celui qui est défaillant. Si certains chemins redondants ne sont pas disponibles pour d'autres raisons, des erreurs d'E/S peuvent se produire. N'activez eh_deadline
que si vous disposez d'une configuration multipath entièrement redondante sur toutes les cibles.
La valeur du paramètre eh_deadline
est spécifiée en secondes. La valeur par défaut est off
, ce qui désactive la limite de temps et permet la récupération de toutes les erreurs.
Scénarios dans lesquels eh_deadline est utile
Dans la plupart des cas, il n'est pas nécessaire d'activer eh_deadline
. L'utilisation de eh_deadline
peut être utile dans certains scénarios spécifiques. Par exemple, si une perte de lien se produit entre un commutateur Fibre Channel (FC) et un port cible, et que le HBA ne reçoit pas de notification de changement d'état enregistré (RSCN), les demandes d'E/S et les commandes de récupération d'erreur sont toutes interrompues au lieu de rencontrer une erreur. Dans ce cas, les demandes d'E/S et les commandes de récupération d'erreur sont toutes interrompues au lieu de rencontrer une erreur. Le fait de définir eh_deadline
dans cet environnement permet de limiter le temps de récupération. Cela permet à l'E/S défaillante d'être réessayée sur un autre chemin disponible par DM Multipath.
Dans les conditions suivantes, le paramètre eh_deadline
n'apporte aucun avantage supplémentaire, car les commandes d'E/S et de reprise sur erreur échouent immédiatement, ce qui permet à DM Multipath d'effectuer une nouvelle tentative :
- Si les RSCN sont activés
- Si le HBA n'enregistre pas le lien devenant indisponible
10.2. Définition du paramètre eh_deadline
Cette procédure configure la valeur du paramètre eh_deadline
pour limiter le temps de récupération SCSI maximum.
Procédure
Vous pouvez configurer
eh_deadline
en utilisant l'une des méthodes suivantes :defaults
section du fichiermultpath.conf
Dans la section des valeurs par défaut du fichier
multpath.conf
, réglez le paramètreeh_deadline
sur le nombre de secondes requis :# eh_deadline 300
NoteÀ partir de RHEL 8.4, il est préférable de définir le paramètre
eh_deadline
à l'aide de la section defaults du fichiermultpath.conf
.Pour désactiver le paramètre
eh_deadline
avec cette méthode, réglezeh_deadline
suroff
.sysfs
Inscrivez le nombre de secondes dans les fichiers
/sys/class/scsi_host/host<host-number>/eh_deadline
. Par exemple, pour définir le paramètreeh_deadline
viasysfs
sur l'hôte SCSI 6 :# echo 300 > /sys/class/scsi_host/host6/eh_deadline
Pour désactiver le paramètre
eh_deadline
avec cette méthode, utilisez echooff
.Paramètre du noyau
Définissez une valeur par défaut pour tous les HBA SCSI à l'aide du paramètre du noyau
scsi_mod.eh_deadline
.# echo 300 > /sys/module/scsi_mod/parameters/eh_deadline
Pour désactiver le paramètre
eh_deadline
avec cette méthode, utilisez echo-1
.
Ressources supplémentaires