Différences entre les versions de « Lv resize »

De BlaxWiki
Aller à la navigationAller à la recherche
(Page créée avec « ssd Catégorie:Linux »)
 
Ligne 1 : Ligne 1 :
== Extend LV sur KVM ==
<pre>
On a ici une vm sous un hyperviseur  KVM dont nous devons étendre la partition (cela est valable pour la partition système ou n'importe quelle autre partition). Les disques de la vm sont des LV, mais c'est le même principe si les disques de la VM sont des fichiers


ssd
Attention, le volume logique LV est une boite, le système de fichier FS est le contenu de la boite. Augmenter la taille du contenu sans augmenter la taille de la boîte peut poser des  problèmes.
</pre>


=== Sauvegarde du disque d'origine ===
<pre>
'''!! IMPORTANT : il faut éteindre la VM avant un faire un backup du LV !!'''


Si on a la place, il est préférable de faire une sauvegarde du disque qui sera à dupliquer.  Dans le cas d'un disque en LV, sur le KVM hébergeant la machine virtuelle, vérifier la taille du LV de la VM en lançant la commande :


# lvdisplay /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
  --- Logical volume ---
  LV Path                /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
  LV Name                vitrine-www2.ecomobilier.fr_root
  VG Name                vol_kvm1
  LV UUID                3mK4HX-yA4C-LWEy-tA3Y-VgyO-lLCu-Q16aVt
  LV Write Access        read/write
  LV Creation host, time kvm1.ecomobilier.fr, 2015-09-04 16:25:59 +0200
  LV Status              available
  # open                1
  LV Size                70.00 GiB
 
Récupérer la taille du LV (LV Size), vérifier qu il reste assez de place sur le volume en question (commande {{{vgs}}}) et créer le LV de destination : lvcreate -L$TAILLE -n $NOMDULV $NOMDUVG
Il est impératif de créer le LV de destination avant de faire le dd pour la copie. Vérifier avec la commande {{{pvs}}} que l'on ait bien la place sur le VG ou se trouvera le LV de backup.
Si on n'a pas la place sur un PV pour copier la VM, on peut la copier dans un fichier sur une partition locale : {{{dd if=/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root of=/root/vitrine-www2.ecomobilier.fr_root_backup bs=4M}}}.
* Création du LV de backup : On le créé de la même taille que le LV d'origine avec la commande : {{{lvcreate -L70G -n vitrine-www2.ecomobilier.fr_root_backup vol_kvm1}}}
* Copie du LV  (la commande bs à la fin de la ligne est très important sinon cela va prendre des heures) : {{{dd if=/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root of=/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root_backup bs=4M}}}
</pre>
== Augmentation de la taille du LV d'origine ==
<pre>
Augmentation de la partition volume pour atteindre une taille cible de 100 Gb (taille d'origine 70 Gb)  : 
lvextend -L +30G /dev/vol_kvm/rfs1-ppr.grdf.fr_data2-ppr.grdf.fr_data
/!\ Ici il y a une étape très importante pour voir qu'elle est le premier secteur du disque. Il faut faire un fdisk -u -l sur le LV : le -u sert à spécifier que l'on veut un affichage en mode secteur
[root@] fdisk -u -l /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
                                        Device Boot      Start        End      Blocks  Id  System
/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root1            2048  209715199  104856576  83  Linux
On voit bien que le secteur de "Start" est à 2048. Lorsque l'on va recréer la partition il faudra bien remettre le même nombre.
/!\ Il arrive parfois que des vieilles partitions apparaissent avec un secteur de départ à 63 et que fdisk force une re-création au 2048. Si vous validez ça sur un disque système, vous pétez la MBR.
Pour passer outre ce problème il faut lancer fdisk en forçant le secteur à 63. ex :  {{{ fdisk -c -u -S 63 /dev/xxxxxxx }}}
* Si ca ne passe pas avec Fdisk qui dit que le "First sector" à 63 est out of range, on utilise parted :
[root@hv2.ants.interieur.gouv.fr mnt]# parted  /dev/vol_hv2/xxxx
unit s (pour passer en sector)
print (pour afficher la table)
Model: Linux device-mapper (linear) (dm)
Disk /dev/dm-0: 754974720s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number  Start  End        Size        Type    File system  Flags
1      63s    587202559s  587202497s  primary  ext3
rm 1  (pour supprimer la 1ere partition)
mkpart (pour créer)
Partition type?  primary/extended? primary
File system type?  [ext2]? ext4
Start? 63
End? 100%
(ici on a mis 100% pour lui dire qu il prenne toute la place possible)
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
(parted) print
Number  Start  End        Size        Type    File system  Flags
1      63s    754974719s  754974657s  primary  ext3
Suppression et recréation de la partition :
# fdisk -u /dev/vol_kvm/rfs2-ppr.grdf.fr_data }}}
/!\ On va supprimer la partition principale, puis recréer une partition primary, EN METTANT COMME PREMIER SECTEUR CELUI QU ON A RÉCUPÉRÉ CI DESSUS. Pour le dernier secteur, laisser celui par défaut.
=== Filesystem en Ext4 ===
* Fsck & resize2fs
On "ouvre" les sous partitions du LV : kpartx -av /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
On fait un fsck sur la partition du LV : fsck -f /dev/mapper/vol_kvm1-vitrine--www2.ecomobilier.fr_root1
On resize la partition (cela est valable uniquement pour les linux, pour les windows ce n'est pas nécessaire) : resize2fs /dev/mapper/vol_kvm1-vitrine--www2.ecomobilier.fr_root1
On refait un fsck sur la partition du LV : fsck -f /dev/mapper/vol_kvm1-vitrine--www2.ecomobilier.fr_root1
On "referme" les sous partitions du LV :  kpartx -d /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
Il ne reste plus qu'à redémarrer la VM et vérifier que l'on ait bien la bonne taille
=== Filesystem en Xfs ===
* Augmentation de la partition volume pour atteindre une taille cible de 100 Gb (taille d'origine 70 Gb)  : 
{{{ lvextend -L +30G /dev/vol_kvm/rfs1-ppr.grdf.fr_data2-ppr.grdf.fr_data }}}
/!\ Ici il y a une étape très importante pour voir qu'elle est le premier secteur du disque. Il faut faire un fdisk -u -l sur le LV : le -u sert à spécifier que l'on veut un affichage en mode secteur
{{{[root@] fdisk -u -l /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
                                        Device Boot      Start        End      Blocks  Id  System
/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root1            2048  209715199  104856576  83  Linux
}}}
On voit bien que le secteur de "Start" est à 2048. Lorsque l'on va recréer la partition il faudra bien remettre le même nombre.
/!\ Il arrive parfois que des vieilles partitions apparaissent avec un secteur de départ à 63 et que fdisk force une re-création au 2048. Si vous validez ça sur un disque système, vous pétez la MBR.
Pour passer outre ce problème il faut lancer fdisk en forçant le secteur à 63. ex :  {{{ fdisk -c=dos -u -S 63 /dev/xxxxxxx }}}
* suppression et recréation de la partition
{{{ # fdisk -u /dev/vol_kvm/rfs2-ppr.grdf.fr_data }}}
/!\ On va supprimer la partition principale, puis recréer une partition primary, EN METTANT COMME PREMIER SECTEUR CELUI QU ON A RÉCUPÉRÉ CI DESSUS. Pour le dernier secteur, laisser celui par défaut.
* Surtout PAS de "Fsck & resize2fs"  pour  les Filesystem en XFS !!!!
  * On "ouvre" les sous partitions du LV :
{{{  kpartx -av /dev/vol_kvm/rfs2-ppr.grdf.fr_data  }}}
  * On fait un xfs_growfs sur le point de montage et non pas sur le driver directement !!
{{{
# mkdir -p /mnt/rfs2-ppr.grdf.fr_data
# mount /dev/mapper/vol_kvm-rfs2--ppr.grdf.fr_data1 /mnt/rfs2-ppr.grdf.fr_data
# xfs_growfs /mnt/rfs2-ppr.grdf.fr_data
# umount /opt/rfs2-ppr.grdf.fr_data
}}}
  * On "referme" les sous partitions du LV :
{{{ kpartx -d /dev/vol_kvm/rfs2-ppr.grdf.fr_data }}}
  * Il ne reste plus qu'à redémarrer la VM et vérifier que l'on ait bien la bonne taille
[[Catégorie:Linux]]
[[Catégorie:Linux]]

Version du 19 septembre 2019 à 09:41

Extend LV sur KVM

On a ici une vm sous un hyperviseur  KVM dont nous devons étendre la partition (cela est valable pour la partition système ou n'importe quelle autre partition). Les disques de la vm sont des LV, mais c'est le même principe si les disques de la VM sont des fichiers

Attention, le volume logique LV est une boite, le système de fichier FS est le contenu de la boite. Augmenter la taille du contenu sans augmenter la taille de la boîte peut poser des  problèmes.

Sauvegarde du disque d'origine

'''!! IMPORTANT : il faut éteindre la VM avant un faire un backup du LV !!'''

Si on a la place, il est préférable de faire une sauvegarde du disque qui sera à dupliquer.  Dans le cas d'un disque en LV, sur le KVM hébergeant la machine virtuelle, vérifier la taille du LV de la VM en lançant la commande :

# lvdisplay /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
  --- Logical volume ---
  LV Path                /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
  LV Name                vitrine-www2.ecomobilier.fr_root
  VG Name                vol_kvm1
  LV UUID                3mK4HX-yA4C-LWEy-tA3Y-VgyO-lLCu-Q16aVt
  LV Write Access        read/write
  LV Creation host, time kvm1.ecomobilier.fr, 2015-09-04 16:25:59 +0200
  LV Status              available
  # open                 1
  LV Size                70.00 GiB

  
Récupérer la taille du LV (LV Size), vérifier qu il reste assez de place sur le volume en question (commande {{{vgs}}}) et créer le LV de destination : lvcreate -L$TAILLE -n $NOMDULV $NOMDUVG

Il est impératif de créer le LV de destination avant de faire le dd pour la copie. Vérifier avec la commande {{{pvs}}} que l'on ait bien la place sur le VG ou se trouvera le LV de backup.

Si on n'a pas la place sur un PV pour copier la VM, on peut la copier dans un fichier sur une partition locale : {{{dd if=/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root of=/root/vitrine-www2.ecomobilier.fr_root_backup bs=4M}}}.
 * Création du LV de backup : On le créé de la même taille que le LV d'origine avec la commande : {{{lvcreate -L70G -n vitrine-www2.ecomobilier.fr_root_backup vol_kvm1}}}
 * Copie du LV  (la commande bs à la fin de la ligne est très important sinon cela va prendre des heures) : {{{dd if=/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root of=/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root_backup bs=4M}}}

Augmentation de la taille du LV d'origine


Augmentation de la partition volume pour atteindre une taille cible de 100 Gb (taille d'origine 70 Gb)  :  
lvextend -L +30G /dev/vol_kvm/rfs1-ppr.grdf.fr_data2-ppr.grdf.fr_data

/!\ Ici il y a une étape très importante pour voir qu'elle est le premier secteur du disque. Il faut faire un fdisk -u -l sur le LV : le -u sert à spécifier que l'on veut un affichage en mode secteur
[root@] fdisk -u -l /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root
                                         Device Boot      Start         End      Blocks   Id  System
/dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root1            2048   209715199   104856576   83  Linux


On voit bien que le secteur de "Start" est à 2048. Lorsque l'on va recréer la partition il faudra bien remettre le même nombre.

/!\ Il arrive parfois que des vieilles partitions apparaissent avec un secteur de départ à 63 et que fdisk force une re-création au 2048. Si vous validez ça sur un disque système, vous pétez la MBR.
Pour passer outre ce problème il faut lancer fdisk en forçant le secteur à 63. ex :  {{{ fdisk -c -u -S 63 /dev/xxxxxxx }}}

* Si ca ne passe pas avec Fdisk qui dit que le "First sector" à 63 est out of range, on utilise parted :

[root@hv2.ants.interieur.gouv.fr mnt]# parted  /dev/vol_hv2/xxxx
unit s (pour passer en sector)
print (pour afficher la table)

Model: Linux device-mapper (linear) (dm)
Disk /dev/dm-0: 754974720s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End         Size        Type     File system  Flags
 1      63s    587202559s  587202497s  primary  ext3


rm 1  (pour supprimer la 1ere partition)
mkpart (pour créer)

Partition type?  primary/extended? primary
File system type?  [ext2]? ext4
Start? 63
End? 100%
(ici on a mis 100% pour lui dire qu il prenne toute la place possible)
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
(parted) print

Number  Start  End         Size        Type     File system  Flags
 1      63s    754974719s  754974657s  primary  ext3



Suppression et recréation de la partition :
# fdisk -u /dev/vol_kvm/rfs2-ppr.grdf.fr_data }}}

/!\ On va supprimer la partition principale, puis recréer une partition primary, EN METTANT COMME PREMIER SECTEUR CELUI QU ON A RÉCUPÉRÉ CI DESSUS. Pour le dernier secteur, laisser celui par défaut.



Filesystem en Ext4

* Fsck & resize2fs On "ouvre" les sous partitions du LV : kpartx -av /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root On fait un fsck sur la partition du LV : fsck -f /dev/mapper/vol_kvm1-vitrine--www2.ecomobilier.fr_root1 On resize la partition (cela est valable uniquement pour les linux, pour les windows ce n'est pas nécessaire) : resize2fs /dev/mapper/vol_kvm1-vitrine--www2.ecomobilier.fr_root1 On refait un fsck sur la partition du LV : fsck -f /dev/mapper/vol_kvm1-vitrine--www2.ecomobilier.fr_root1 On "referme" les sous partitions du LV : kpartx -d /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root Il ne reste plus qu'à redémarrer la VM et vérifier que l'on ait bien la bonne taille

Filesystem en Xfs

* Augmentation de la partition volume pour atteindre une taille cible de 100 Gb (taille d'origine 70 Gb)  : {{{ lvextend -L +30G /dev/vol_kvm/rfs1-ppr.grdf.fr_data2-ppr.grdf.fr_data }}} /!\ Ici il y a une étape très importante pour voir qu'elle est le premier secteur du disque. Il faut faire un fdisk -u -l sur le LV : le -u sert à spécifier que l'on veut un affichage en mode secteur {{{[root@] fdisk -u -l /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root Device Boot Start End Blocks Id System /dev/vol_kvm1/vitrine-www2.ecomobilier.fr_root1 2048 209715199 104856576 83 Linux }}} On voit bien que le secteur de "Start" est à 2048. Lorsque l'on va recréer la partition il faudra bien remettre le même nombre. /!\ Il arrive parfois que des vieilles partitions apparaissent avec un secteur de départ à 63 et que fdisk force une re-création au 2048. Si vous validez ça sur un disque système, vous pétez la MBR. Pour passer outre ce problème il faut lancer fdisk en forçant le secteur à 63. ex : {{{ fdisk -c=dos -u -S 63 /dev/xxxxxxx }}} * suppression et recréation de la partition {{{ # fdisk -u /dev/vol_kvm/rfs2-ppr.grdf.fr_data }}} /!\ On va supprimer la partition principale, puis recréer une partition primary, EN METTANT COMME PREMIER SECTEUR CELUI QU ON A RÉCUPÉRÉ CI DESSUS. Pour le dernier secteur, laisser celui par défaut. * Surtout PAS de "Fsck & resize2fs" pour les Filesystem en XFS !!!! * On "ouvre" les sous partitions du LV : {{{ kpartx -av /dev/vol_kvm/rfs2-ppr.grdf.fr_data }}} * On fait un xfs_growfs sur le point de montage et non pas sur le driver directement !! {{{ # mkdir -p /mnt/rfs2-ppr.grdf.fr_data # mount /dev/mapper/vol_kvm-rfs2--ppr.grdf.fr_data1 /mnt/rfs2-ppr.grdf.fr_data # xfs_growfs /mnt/rfs2-ppr.grdf.fr_data # umount /opt/rfs2-ppr.grdf.fr_data }}} * On "referme" les sous partitions du LV : {{{ kpartx -d /dev/vol_kvm/rfs2-ppr.grdf.fr_data }}} * Il ne reste plus qu'à redémarrer la VM et vérifier que l'on ait bien la bonne taille