Bonjour,
J'ai une question concernant LVM : quand je rallonge un disque sous VMware et que je rescan le disque, la taille n'est pas prise en compte par le système. Exemple en passant de 200Mo à 300Mo, avec un PV créé sur /dev/sdb entièrement (pas de partition "8e").
echo 1 > /sys/block/sdb/device/rescan
dmesg détecte bien la nouvelle taille :
sd 0:0:1:0: [sdb] 614400 512-byte hardware sectors (315 MB)
Mais pas fdisk :
Disk /dev/sdb: 209 MB, 209715200 bytes
A noter que quand on rallonge de disque et qu'il ne fait pas partie d'un PV, fdisk voit bien la nouvelle taille donc LVM joue un rôle dans le problème.
La seule solution que j'ai trouvé consiste à arrêter les services qui utiliser le périphérique, le démonter, le supprimer et rescanner le bus:
echo 1 > /sys/block/sdb/device/delete
echo "- - -" > /sys/class/scsi_host/host0/scan
Dans ce cas là la nouvelle taille est prise en compte et on peut étendre le PV et le LV.
C'est toujours mieux qu'un reboot mais j'aimerais faire la même chose avec le périphérique monté, est-ce possible?
Nicolas
Tu fais bien un resize2fs après ton lvresize ?
2010/12/2 sub@nryc.fr:
Bonjour,
J'ai une question concernant LVM : quand je rallonge un disque sous VMware et que je rescan le disque, la taille n'est pas prise en compte par le système. Exemple en passant de 200Mo à 300Mo, avec un PV créé sur /dev/sdb entièrement (pas de partition "8e").
echo 1 > /sys/block/sdb/device/rescan
dmesg détecte bien la nouvelle taille :
sd 0:0:1:0: [sdb] 614400 512-byte hardware sectors (315 MB)
Mais pas fdisk :
Disk /dev/sdb: 209 MB, 209715200 bytes
A noter que quand on rallonge de disque et qu'il ne fait pas partie d'un PV, fdisk voit bien la nouvelle taille donc LVM joue un rôle dans le problème.
La seule solution que j'ai trouvé consiste à arrêter les services qui utiliser le périphérique, le démonter, le supprimer et rescanner le bus:
echo 1 > /sys/block/sdb/device/delete
echo "- - -" > /sys/class/scsi_host/host0/scan
Dans ce cas là la nouvelle taille est prise en compte et on peut étendre le PV et le LV.
C'est toujours mieux qu'un reboot mais j'aimerais faire la même chose avec le périphérique monté, est-ce possible?
Nicolas
Liste de diffusion du FRsAG http://www.frsag.org/
Le 02/12/2010 11:26, Steven Le Roux a écrit :
Tu fais bien un resize2fs après ton lvresize ?
Un "xfs_growfs" dans mon cas (l'intérêt de XFS c'est qu'on peut faire grossir les partitions si elles sont montée) mais le problème se poserait aussi avec un système de ficheir EXT3/EXT4.
En résumé je ne peux rien faire de tout ça tant que fdisk ne voit pas la nouvelle taille : ni pvresize, ni lvextend, etc.
Nicolas
Tu fais bien un resize2fs après ton lvresize ?
Un "xfs_growfs" dans mon cas (l'intérêt de XFS c'est qu'on peut faire grossir les partitions si elles sont montée) mais le problème se poserait aussi avec un système de ficheir EXT3/EXT4.
En résumé je ne peux rien faire de tout ça tant que fdisk ne voit pas la nouvelle taille : ni pvresize, ni lvextend, etc.
Nicolas
Tu as essayé avec parted/partprobe ?
Le 02/12/2010 11:58, Manuel de Ferran a écrit :
Tu fais bien un resize2fs après ton lvresize ?
Un "xfs_growfs" dans mon cas (l'intérêt de XFS c'est qu'on peut faire grossir les partitions si elles sont montée) mais le problème se poserait aussi avec un système de ficheir EXT3/EXT4.
En résumé je ne peux rien faire de tout ça tant que fdisk ne voit pas la nouvelle taille : ni pvresize, ni lvextend, etc.
Tu as essayé avec parted/partprobe ?
Oui, et ça n'a aucun effet.
Il y a aussi une méthode alternative (et un peu plus bourrin) à celle que j'ai donné : supprimer puis rajouter le disque avec la console VMware et utiliser le script "rescan-scsi-bus.sh" (paquet Debian "scsitools") pour re-détecter le disque.
Mais, là encore, il faut arrêter les services et démonter la partition.
Nicolas
As-tu essayé un partprobe ?
PARTPROBE(8) GNU Parted Manual PARTPROBE(8) NAME partprobe - inform the OS of partition table changes SYNOPSIS partprobe [-d] [-s] [devices...]
-----Message d'origine----- De : frsag-bounces@frsag.org [mailto:frsag-bounces@frsag.org] De la part de sub@nryc.fr Envoyé : jeudi 2 décembre 2010 11:51 À : French SysAdmin Group Objet : Re: [FRsAG] Rallonge de disque à chaud et LVM
Le 02/12/2010 11:26, Steven Le Roux a écrit :
Tu fais bien un resize2fs après ton lvresize ?
Un "xfs_growfs" dans mon cas (l'intérêt de XFS c'est qu'on peut faire grossir les partitions si elles sont montée) mais le problème se poserait aussi avec un système de ficheir EXT3/EXT4.
En résumé je ne peux rien faire de tout ça tant que fdisk ne voit pas la nouvelle taille : ni pvresize, ni lvextend, etc.
Nicolas
_______________________________________________ Liste de diffusion du FRsAG http://www.frsag.org/
Bonjour,
A priori, le problème est plutôt lié au fait que le disque est en cours d'utilisation. C'est le même genre de problème que lors du rechargement de la table de partitions qui nécessite un reboot lorsque le device est déjà utilisé avec son ancienne table de partitions (à fortiori quand il s'agit du disque principal).
La solution, c'est donc d'arrêter d'utiliser le device pour forcer la re-lecture et prise en compte des nouveaux paramètres, ce que tu fais avec le delete ou un reboot.
Dans la vraie vie, sans virtualisation, un device n'est pas sensé changer de taille "spontanément", ce qui peut expliquer que, pour l'instant, le changement "à chaud" n'est pas pleinement supporté par le noyau.
Pas sûr que ça fasse avancer le "machin" pour autant :-/
Benjamin.
Bonjour,
Je me suis moi aussi retrouvé face à ce problème. Je n'ai pas trouvé de solution "à chaud" pour que fdisk voit le changement, j'ai donc du rebooter. Mais c'est dommage qu'a l'heure de la virtualisation on ne puisse pas augmenter la taille d'un disque à chaud sous Linux.
______________
Renaud Hager
________________________________ De : Benjamin MALYNOVYTCH benjamin.malynovytch@gmail.com À : French SysAdmin Group frsag@frsag.org Envoyé le : Jeu 2 décembre 2010, 12h 05min 50s Objet : Re: [FRsAG] Rallonge de disque à chaud et LVM
Bonjour,
A priori, le problème est plutôt lié au fait que le disque est en cours d'utilisation. C'est le même genre de problème que lors du rechargement de la table de partitions qui nécessite un reboot lorsque le device est déjà utilisé avec son ancienne table de partitions (à fortiori quand il s'agit du disque principal).
La solution, c'est donc d'arrêter d'utiliser le device pour forcer la re-lecture et prise en compte des nouveaux paramètres, ce que tu fais avec le delete ou un reboot.
Dans la vraie vie, sans virtualisation, un device n'est pas sensé changer de taille "spontanément", ce qui peut expliquer que, pour l'instant, le changement "à chaud" n'est pas pleinement supporté par le noyau.
Pas sûr que ça fasse avancer le "machin" pour autant :-/
Benjamin.
2010/12/2 sub@nryc.fr:
Bonjour,
J'ai une question concernant LVM : quand je rallonge un disque sous VMware et que je rescan le disque, la taille n'est pas prise en compte par le système. Exemple en passant de 200Mo à 300Mo, avec un PV créé sur /dev/sdb entièrement (pas de partition "8e").
[...]
Tu peux tenter : blockdev --rereadpt /dev/sdb
(ou si parted est installé : partprobe /dev/sdb)
C'est utile pour mettre a jour la 'vision du kernel' des partitions, mais il est probable que ca suffise pour la vision du block device sans partition.
Bonjour,
Si ca peut aider, une partie des réponses qui t'ont été faites sur la liste sont présentes dans mon petit wiki à l'adresse suivante : http://wiki.ouieuhtoutca.org/doku.php?id=manipulations_disques_simple_lvm
Pour augmenter un volume LVM avec un PV sur partition comme dans ton cas, ceci peut t'aider : http://wiki.ouieuhtoutca.org/doku.php?id=augmentation_volume_lvm_sur_disque
Enfin pour rescaner le bus SCSI d'un volume à chaud : http://wiki.ouieuhtoutca.org/doku.php?id=operations_volumes_scsi
Dans mon cas, si je me souviens bien j'éprouvais le besoin d'augmenter un volume SAN monté sur les machines et non le disque des OS qui étaient aussi sous VMware.
Ton soucis avec fdisk, je ne l'ai pas rencontré.
Sur quel OS GNU/Linux es-tu ?
J'espère que ca t'aidera.
Romain
Le 02/12/2010 11:18, sub@nryc.fr a écrit :
Bonjour,
J'ai une question concernant LVM : quand je rallonge un disque sous VMware et que je rescan le disque, la taille n'est pas prise en compte par le système. Exemple en passant de 200Mo à 300Mo, avec un PV créé sur /dev/sdb entièrement (pas de partition "8e").
echo 1 > /sys/block/sdb/device/rescan
dmesg détecte bien la nouvelle taille :
sd 0:0:1:0: [sdb] 614400 512-byte hardware sectors (315 MB)
Mais pas fdisk :
Disk /dev/sdb: 209 MB, 209715200 bytes
A noter que quand on rallonge de disque et qu'il ne fait pas partie d'un PV, fdisk voit bien la nouvelle taille donc LVM joue un rôle dans le problème.
La seule solution que j'ai trouvé consiste à arrêter les services qui utiliser le périphérique, le démonter, le supprimer et rescanner le bus:
echo 1 > /sys/block/sdb/device/delete
echo "- - -" > /sys/class/scsi_host/host0/scan
Dans ce cas là la nouvelle taille est prise en compte et on peut étendre le PV et le LV.
C'est toujours mieux qu'un reboot mais j'aimerais faire la même chose avec le périphérique monté, est-ce possible?
Nicolas
Liste de diffusion du FRsAG http://www.frsag.org/
Le 02/12/2010 11:18, sub@nryc.fr a écrit :
Bonjour,
J'ai une question concernant LVM : quand je rallonge un disque sous VMware et que je rescan le disque, la taille n'est pas prise en compte par le système. Exemple en passant de 200Mo à 300Mo, avec un PV créé sur /dev/sdb entièrement (pas de partition "8e").
echo 1 > /sys/block/sdb/device/rescan
dmesg détecte bien la nouvelle taille :
sd 0:0:1:0: [sdb] 614400 512-byte hardware sectors (315 MB)
Mais pas fdisk :
Disk /dev/sdb: 209 MB, 209715200 bytes
A noter que quand on rallonge de disque et qu'il ne fait pas partie d'un PV, fdisk voit bien la nouvelle taille donc LVM joue un rôle dans le problème.
La seule solution que j'ai trouvé consiste à arrêter les services qui utiliser le périphérique, le démonter, le supprimer et rescanner le bus:
echo 1 > /sys/block/sdb/device/delete
echo "- - -" > /sys/class/scsi_host/host0/scan
Dans ce cas là la nouvelle taille est prise en compte et on peut étendre le PV et le LV.
C'est toujours mieux qu'un reboot mais j'aimerais faire la même chose avec le périphérique monté, est-ce possible?
J'ai finalement trouvé la solution, le problème vient très certainement du noyau trop vieux de Debian Lenny.
J'ai fais le même test ce matin sur un système RedHat 6 et Ubuntu Server Lucid (tous les deux en 2.6.32.x), il n'y a eu aucun problème.
- Disque utilisé en entier dans LVM (pas de partition 8e), formaté en XFS et monté - Extension du disque sous VMware - echo 1 > /sys/block/sdX/device/rescan - Nouvelle taille prise en compte si on fait fdisk /dev/sdb -l - pvresize, lvextend - xfs_growfs pour agrandir la partition - aucune interruption d'accès disque ou de service
Pour Debian Lenny deux solutions :
- agrandir le disque, démonter la partition, supprimer le disque (echo 1 > /sys/block/sdX/device/delete), rescanner le bus SCSI et faire les opération sur les partitions (nécessite un arrêt des services)
- si on ne veut aucune interruption du service et tout faire à chaud, on n'a pas d'autre solution que de rajouter un nouveau disque VMware (plutôt que d'étendre le disque en cours), dans ce cas il suffit de rescanner le bus, déclarer un nouveau PV, étendre le VG et étendre le LV
Moralité, avec les nouveaux noyaux, on pourra étendre des disques à chaud sans aucun problème.
Nicolas