24.16. Redimensionner une Unité logique En ligne
Dans la plupart des cas, le redimensionnement complet d'une unité logique en ligne implique deux choses : le redimensionnement de l'unité logique elle-même et la réfléction du changement de taille sur le périphérique multipath correspondant (si multipath est activé sur le système).
Pour redimensionner l'unité logique en ligne, commencez par modifier la taille de l'unité logique à travers l'interface de gestion de matrices du périphérique de stockage. Cette procédure est différente avec chaque matrice, veuillez donc consulter la documentation du fournisseur de la matrice de stockage pour obtenir davantage d'informations.
Note
Pour pouvoir redimensionner un système de fichiers en ligne, celui-ci doit ne pas résider sur un périphérique partitionné.
24.16.1. Redimensionner des unités logiques Fibre Channel
Après avoir modifié la taille d'une unité logique en ligne, veuillez scanner l'unité logique à nouveau afin de vous assurer que le système détecte bien la taille mise à jour. Pour faire la même chose avec des unités logiques Fibre Channel, veuillez utiliser la commande suivante :
$ echo 1 > /sys/block/sdX/device/rescan
Important
Pour scanner à nouveau des unités logiques Fibre Channel sur un système utilisant des multivoies (« multipathing »), veuillez exécuter la commande ci-dessus pour chaque périphérique sd (c'est-à-dire
sd1
, sd2
, et ainsi de suite...) qui représente un chemin pour l'unité logique multivoies. Pour déterminer quels périphériques sont des chemins pour une unité logique mulitvoies, veuillez utiliser multipath -ll
; puis trouvez l'entrée correspondant à l'unité logique en cours de redimensionnement. Il est recommandé de faire référence à l'ID global (WWID) de chaque entrée afin de faciliter la recherche de celui qui correspond à l'unité logique en cours de redimensionnement.
24.16.2. Redimensionner une unité logique iSCSI
Après avoir modifié la taille d'une unité logique en ligne, veuillez scanner l'unité logique à nouveau afin de vous assurer que le système détecte bien la taille mise à jour. Pour faire la même chose avec des périphériques iSCSI, veuillez utiliser la commande suivante :
# iscsiadm -m node --targetname target_name -R [5]
Remplacez
target_name
par le nom de la cible sur laquelle le périphérique se trouve.
Note
Il est également possible de scanner à nouveau des unités logiques iSCSI en utilisant la commande suivante :
# iscsiadm -m node -R -I interface
Remplacez
interface
par le nom d'interface correspondant de l'unité logique redimensionnée (par exemple, iface0
). Cette commande effectue deux opérations :
- Un scan est effectué pour trouver de nouveaux périphériques de la même manière que le fait la commande
echo "- - -" > /sys/class/scsi_host/host/scan
(veuillez consulter Section 24.14, « Scanner les interconnexions iSCSI »). - Un second scan est effectué pour trouver les nouvelles unités logiques ou les unités logiques modifiées de la même manière que le fait la commande
echo 1 > /sys/block/sdX/device/rescan
. Remarquez que cette commande est également la même que celle utilisée pour scanner à nouveau des unités logiques Fibre Channel.
24.16.3. Mettre à jour la taille du périphérique multivoies (« Multipath »)
Si la fonction multivoies est activée sur le système, vous devrez également refléter la modification de taille d'unité logique sur le périphérique multivoies correspondant de l'unité logique (après avoir redimensionné l'unité logique). Cela peut être fait avec
multipathd
. Tout d'abord, veuillez vous assurer que multipathd
soit bien en cours d'exécution en utilisant service multipathd status
. Une fois le bon fonctionnement de multipathd
vérifié, veuillez exécuter la commande suivante :
# multipathd -k"resize map multipath_device"
La variable
multipath_device
est l'entrée multivoies correspondante du périphérique dans /dev/mapper
. Selon la manière par laquelle la fonction multivoies est configurée sur le système, multipath_device
peut se trouver sous deux différents formats :
mpathX
, oùX
est l'entrée correspondante du périphérique (par exemple,mpath0
)- un WWID ; par exemple,
3600508b400105e210000900000490000
Pour déterminer quelle entrée multivoies correspond à l'unité logique redimensionnée, veuillez exécuter
multipath -ll
. Ceci affiche une liste de toutes les entrées multivoies dans le système, ainsi que les chiffres majeurs et mineurs des périphériques correspondants.
Important
Ne pas utiliser
multipathd -k"resize map multipath_device"
si des commandes sont en file d'attente sur multipath_device
. Autrement dit, veuillez ne pas utiliser cette commande lorsque le paramètre no_path_retry
(dans /etc/multipath.conf
) est défini sur "queue"
, et qu'il n'existe aucun chemin actif vers le périphérique.
Pour obtenir davantage d'informations sur les multiples voies, veuillez consulter le Guide Red Hat Enterprise Linux 7 DM Multipath.
24.16.4. Modifier l'état de lecture/écriture d'une unité logique en ligne
Certains périphériques de stockage offrent à l'utilisateur la possibilité de modifier l'état du périphérique de lecture/écriture (« Read/Write », ou « R/W ») à lecture seule (« Read-Only », ou « RO »), et de RO à R/W. Ceci est généralement effectué par une interface de gestion sur le périphérique de stockage. Le système d'exploitation ne met pas à jour l'affichage de l'état du périphérique automatiquement lorsqu'un changement est effectué. Veuillez observer les procédures suivantes pour que le système prenne conscience du changement.
Exécutez la commande suivante en remplaçant XYZ par l'appellation souhaitée du périphérique pour déterminer l'affichage actuel de l'état R/W d'un périphérique du système d'exploitation :
# blockdev --getro /dev/sdXYZ
La commande suivante est également disponible dans Red Hat Enterprise Linux 7:
# cat /sys/block/sdXYZ/ro 1 = read-only 0 = read-write
Lors de l'utilisation de multivoies, veuillez consulter le champ ro ou rw dans la seconde ligne de la sortie de la commande
multipath -ll
. Exemple :
36001438005deb4710000500000640000 dm-8 GZ,GZ500 [size=20G][features=0][hwhandler=0][ro] \_ round-robin 0 [prio=200][active] \_ 6:0:4:1 sdax 67:16 [active][ready] \_ 6:0:5:1 sday 67:32 [active][ready] \_ round-robin 0 [prio=40][enabled] \_ 6:0:6:1 sdaz 67:48 [active][ready] \_ 6:0:7:1 sdba 67:64 [active][ready]
Pour modifier l'état R/W, veuillez utiliser la procédure suivante :
Procédure 24.12. Modifier l'état R/W
- Pour déplacer l'état du périphérique de RO à R/W, veuillez consulter l'étape 2.Pour déplacer l'état du périphérique de R/W à RO, assurez-vous qu'aucune écriture supplémentaire ne sera passée. Ceci peut être fait en arrêtant l'application, ou en utilisant une action correspondante spécifique à l'application.Assurez-vous que toutes les E/S d'écriture restantes soient bien terminées par la commande suivante :
# blockdev --flushbufs /dev/device
Remplacez device par l'appellation souhaitée. Pour un périphérique multivoies mappeur de périphériques, il s'agit de l'entrée du périphérique dansdev/mapper
. Par exemple,/dev/mapper/mpath3
. - Veuillez utiliser l'interface de gestion du périphérique de stockage pour changer l'état de l'unité logique de RW (lecture/écriture) à RO (lecture seule), ou au contraire de RO à RW. Cette procédure est différente pour chaque matrice. Pour obtenir davantage d'informations, veuillez consulter la documentation du fournisseur de matrice de stockage applicable.
- Scannez à nouveau le périphérique pour mettre à jour l'affichage de l'état RW du système d'exploitation du périphérique. Si vous utilisez un périphérique mappeur multivoies, veuillez ré-effectuer ce scan pour chaque chemin vers le périphérique avant de passer la commande ordonnant au périphérique multivoies de recharger ses cartes de périphérique.Ce processus est expliqué en détails dans Section 24.16.4.1, « Scanner à nouveau des unités logiques ».
24.16.4.1. Scanner à nouveau des unités logiques
Après avoir modifié l'état RW de l'unité logique en ligne comme décrit dans Section 24.16.4, « Modifier l'état de lecture/écriture d'une unité logique en ligne », veuillez scanner à nouveau l'unité logique afin de vous assurer que le système détecte l'état mis à jour par commande suivante :
# echo 1 > /sys/block/sdX/device/rescan
Pour scanner à nouveau des unités logiques sur un système qui utilise la fonction multivoies, veuillez exécuter la commande ci-dessus pour chaque périphérique sd qui représente un chemin pour l'unité logique multivoies. Par exemple, exécutez la commande sur sd1, sd2, et sur tous les autres périphériques sd. Pour déterminer les périphériques qui sont des chemins pour une unité multivoies, veuillez utiliser
multipath -11
, puis trouvez l'entrée qui correspond à l'unité logique devant être modifiée.
Exemple 24.15. Utilisation de la commande multipath -11
Par exemple,
multipath -11
affiche le chemin pour le LUN avec l'ID WWID 36001438005deb4710000500000640000. Dans ce cas, veuillez saisir :
# echo 1 > /sys/block/sdax/device/rescan
# echo 1 > /sys/block/sday/device/rescan
# echo 1 > /sys/block/sdaz/device/rescan
# echo 1 > /sys/block/sdba/device/rescan
24.16.4.2. Mettre à jour l'état RW d'un périphérique multivoies
Après avoir scanné l'unité logique, si la fonction multivoies est activée, le changement de son état devra être reflété sur le disque multivoies correspondant de l'unité logique. Pour ce faire, veuillez recharger les cartes du périphérique multivoies par la commande suivante :
# multipath -r
La commande
multipath -11
peut être utilisée pour confirmer le changement.
24.16.4.3. Documentation
Davantage d'informations se trouvent dans la Base de connaissances de Red Hat. Pour y accéder, veuillez vous rendre sur https://www.redhat.com/wapps/sso/login.html?redirect=https://access.redhat.com/knowledge/ et connectez-vous. Puis accédez à l'article sur https://access.redhat.com/kb/docs/DOC-32850.