Outils personnels

Retailler le disque d'une VM : Différence entre versions

De wikiGite

Ligne 12 : Ligne 12 :
 
Ensuite il faut étendre les partition OS qui ont pu être créées dans les guests.
 
Ensuite il faut étendre les partition OS qui ont pu être créées dans les guests.
  
=== Sur guest avec partitions standards ===
+
= Sur guest avec partitions standards =
 
repérer le nom du vmdk puis :
 
repérer le nom du vmdk puis :
 
  vmware-vdiskmanager -x 190Gb /var/vm/sample_vm/sample_vm.vmdk
 
  vmware-vdiskmanager -x 190Gb /var/vm/sample_vm/sample_vm.vmdk
Ligne 18 : Ligne 18 :
  
 
Utiliser ensuite une image de liveCD GParted pour redimensionner le filesystem.
 
Utiliser ensuite une image de liveCD GParted pour redimensionner le filesystem.
=== Sur guest avec LVM ===
+
= Sur guest avec LVM =
 
Etendre le disque virtuel (vdiskmanager ou vmkfstools) ou créer un nouveau disque virtuel sur la VM (par VI Client ou avec vmkfstools pour un disque dynamique (cf procédure)).
 
Etendre le disque virtuel (vdiskmanager ou vmkfstools) ou créer un nouveau disque virtuel sur la VM (par VI Client ou avec vmkfstools pour un disque dynamique (cf procédure)).
  
Ligne 45 : Ligne 45 :
  
 
Puis étendre le filesystem
 
Puis étendre le filesystem
  df #pour repérer le device
+
  df -h #pour repérer le device
 +
umount /dev/VolGroup00/home #(lsof s'il ne veut pas le démonter)
 +
 
 +
== extension ext* ==
 +
df -h #pour repérer le device
 
  umount /dev/VolGroup00/home #(lsof s'il ne veut pas le démonter)
 
  umount /dev/VolGroup00/home #(lsof s'il ne veut pas le démonter)
 
  e2fsck -f /dev/VolGroup00/home #(obligatoire avant resize)
 
  e2fsck -f /dev/VolGroup00/home #(obligatoire avant resize)
 
  resize2fs /dev/VolGroup00/home
 
  resize2fs /dev/VolGroup00/home
 
Reboot pour la forme.
 
Reboot pour la forme.
 +
 +
== extension xfs (RH/CentOS7) ==
 +
xfs_grows /dev/VolGroup00/home

Version du 27 août 2015 à 07:52

NOTE : la procédure fonctionne bien avec des partitions en LVM (Logical Volume Manager) au niveau du système invité. Pour des partitions standards étendues avec Gparted, c'est à vos risques et périls...

Il est plus difficile d'étendre un VG en lui disant que son PV a changé de taille (ce qui n'est pas "naturel") que de déclarer un nouveau PV à part.

Synopsis : L'OPERATION CONSISTE A ETENDRE LE VG (Volume Group) en déclarant un nouveau PV (Physical Volume), soit sur la place libre créée par extension du disque virtuel, soit sur un nouveau disque virtuel, puis en ajoutant ce PV au Volume Group.
Ensuite, on étend le LV (Logical Volume) sur la totalité du VG, puis idem pour le filesystem (validé avec ext2, ext3, autres formats à tester).

Arrêter la VM.

Sauvegarder la VM.

Ensuite il faut étendre les partition OS qui ont pu être créées dans les guests.

Sur guest avec partitions standards

repérer le nom du vmdk puis :

vmware-vdiskmanager -x 190Gb /var/vm/sample_vm/sample_vm.vmdk

NOTE ESXi : les disques thin peuvent être retaillés avec vmkfstools -X.

Utiliser ensuite une image de liveCD GParted pour redimensionner le filesystem.

Sur guest avec LVM

Etendre le disque virtuel (vdiskmanager ou vmkfstools) ou créer un nouveau disque virtuel sur la VM (par VI Client ou avec vmkfstools pour un disque dynamique (cf procédure)).

Démarrer la VM.

Créer une partition sur la place libre

fdisk /dev/sda
(choisir si on veut créer une partition primaire s'il rester des numéros disponibles, ou une partition étendue)
n (entrer un numéro libre de partition, puis tout par défaut)
t (entrer le numéro de la partition, puis 8e pour la passer en Linux LVM)
w

ou sur le nouveau disque (exemple: /dev/sdb)

fdisk /dev/sdb
n (choisir partition primaire, et 1 comme numéro de partition, puis tout par défaut)
t (entrer le numéro de la partition, puis 8e pour la passer en Linux LVM)
w

Créer un PV sur cette partition (exemple avec la partition 1 d'un nouveau disque)

pvcreate /dev/sdb1

Etendre le volume group (vgdiplay pour avoir son nom) sur ce nouveau PV

vgextend VolGroup00 /dev/sdb1

Vérifier la VGsize par vgdisplay

Etendre un volume logique. Réperer son nom par df puis éventuellement par lvdisplay pour avoir le chemin exact

lvextend -L +160G /dev/VolGroup00/home #(prendre la Free PE / Size de vgdisplay)

Puis étendre le filesystem

df -h #pour repérer le device
umount /dev/VolGroup00/home #(lsof s'il ne veut pas le démonter)

extension ext*

df -h #pour repérer le device
umount /dev/VolGroup00/home #(lsof s'il ne veut pas le démonter)
e2fsck -f /dev/VolGroup00/home #(obligatoire avant resize)
resize2fs /dev/VolGroup00/home

Reboot pour la forme.

extension xfs (RH/CentOS7)

xfs_grows /dev/VolGroup00/home