24.11. Scanner les interconnexions du stockage
Plusieurs commandes vous permettront de réinitialiser, de scanner (ou les deux à la fois) une ou plusieurs interconnexion(s), ajoutant ou supprimant potentiellement plusieurs périphériques en une seule opération. Ce type de scan peut être perturbateur car il peut provoquer des délais alors que les opérations d'E/S expirent et peut supprimer des périphériques de manière inattendue. Ainsi, Red Hat recommande d'utiliser le scan d'interconnexions uniquement lorsque nécessaire. Les restrictions suivantes doivent être observées lorsque les interconnexions de stockage sont scannées :
- Toutes les E/S sur interconnexions affectées doivent être mises sur pause et vidées avant d'exécuter la procédure, et les résultats du scan doivent être vérifiés avant de reprendre les E/S.
- Comme pour la suppression de périphériques, scanner des interconnexions n'est pas recommandé lorsque le système se trouve sous pression mémoire. Pour déterminer le niveau de pression mémoire, exécutez la commande
vmstat 1 100
. Scanner les interconnexions n'est pas recommandé si la quantité de mémoire disponible fait moins de 5% de la mémoire totale dans plus de 10 échantillons pour 100. Aussi, le scan d'interconexions n'est pas recommandé si la fonction swap est active (avec des colonnessi
etso
qui ne sont pas égales à zéro dans la sortievmstat
). La commandefree
peut également afficher la mémoire totale.
Les commandes suivantes peuvent être utilisées pour scanner les interconnexions de stockage :
echo "1" > /sys/class/fc_host/host/issue_lip
- Cette opération effectue un Loop Initialization Protocol (LIP), analyse l’interconnexion et met à jour la couche SCSI pour refléter les périphériques actuellement présents sur le bus. Essentiellement, un LIP est une réinitialisation du bus et entraîne l'ajout ou la suppression de périphériques. Cette procédure est nécessaire pour configurer une nouvelle cible SCSI sur un réseau d’interconnexion Fibre Channel.Notez que
issue_lip
est une opération asynchrone. La commande peut finaliser son but avant la fin du scan. Vous pourrez vérifier dans le fichier/var/log/messages
si la commandeissue_lip
est terminée.Les piloteslpfc
,qla2xxx
, etbnx2fc
supportentissue_lip
. Pour plus d'informations sur les fonctions des API supportées par chaque pilote dans Red Hat Enterprise Linux, consulter Tableau 24.1, « Fonctionnalités de l'API Fibre Channel ». /usr/bin/rescan-scsi-bus.sh
- Le script
/usr/bin/rescan-scsi-bus.sh
a été introduit dans Red Hat Enterprise Linux 5.4. Par défaut, ce script scanne tous les bus SCSI du système, et met à jour la couche SCSI pour refléter la présence de nouveaux périphériques sur le bus. Le script fournit des options supplémentaires pour permettre la suppresion de périphériques, et le lancement des LIP. Pour obtenir plus d'informations sur ce script, y compris les problèmes connus, consulter Section 24.17, « Ajouter ou supprimer une unité logique avec rescan-scsi-bus.sh ». echo "- - -" > /sys/class/scsi_host/hosth/scan
- C’est la même commande, comme décrit dans Section 24.10, « Ajouter un périphérique ou un chemin de stockage », qui sert à ajouter un périphérique de stockage ou le chemin d’accès. Dans ce cas, toutefois, le numéro du canal, l'ID cible SCSI, et des valeurs LUN sont remplacés par des caractères génériques. Toute combinaison de caractères génériques et d'identificateurs est autorisée, donc vous pouvez rendre la commande aussi précise qu'englobante selon les besoins. Cette procédure ajoute des LUN, mais ne les supprime pas.
modprobe --remove driver-name
,modprobe driver-name
- En exécutant la commande
modprobe--remove driver-name
suivie de la commandemodprobe driver-name
, vous ré-initialisez totalement l’état de toutes les interconnexions controlées par le pilote. Bien qu’il s'agisse d'une mesure relativement extrême, utiliser les commandes décrites peut être appropriée dans certaines situations. Les commandes peuvent être utilisées, par exemple, pour redémarrer le pilote avec une valeur de paramètre de module différente.