User Tools

Site Tools


tech:documentation:procedures:vm:vm_disk_expansion_lvm_xfs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
tech:documentation:procedures:vm:vm_disk_expansion_lvm_xfs [2010/04/27 12:44] kohofertech:documentation:procedures:vm:vm_disk_expansion_lvm_xfs [2012/02/14 14:20] – [FOR EXT3/4] kohofer
Line 1: Line 1:
-======VM disk Expansion LVM+XFS=======+====== VM disk Expansion LVM with XFS/EXT4 =======
  
-Expand the original disk or add a second vdisk from Infrastructure client.\\ If you want to perform a grow w/o reboot you have to add a second disk +<note important>CREATE SNAPSHOT</note>
-**THEN TAKE A SNAPSHOT!!!**+
  
-then from on the vm either create an additional partition on the free space. The partition type is 8e+Expand the original disk or add a second vdisk from **Infrastructure Client**.\\ 
 +If you want to perform a grow w/o reboot you have to add a second disk 
 + 
 +**EXPAND ORIGINAL DISK** 
 + 
 +Create an additional partition on the free space, say you increased the existing disc 
 +from 8GB to 15GB. The partition type is 8e.
  
   cfdisk /dev/sda   cfdisk /dev/sda
 +
 # for example if the new partition is /dev/sda3 # for example if the new partition is /dev/sda3
  
Line 16: Line 22:
   pvcreate /dev/sda3   pvcreate /dev/sda3
  
- +now you have to extend the volgroup. use ''lvdisplay'' to see which is the name of the group,\\ 
-if you are running a newer kernel you can issue this command to male linux re-read the disk geometry: +in this example it'**base**
- +
-  echo "1" > /sys/class/scsi_device/<device>/device/rescan +
- +
- +
-or assign the whole new disk to lvm assuming it's /dev/sdb +
- +
-  apt-get install scsitools +
-  rescan-scsi-bus.sh +
-  cfdisk /dev/sdb +
- +
-### for example if the new partition is /dev/sda3 +
- +
-   pvcreate /dev/sdb +
- +
-now you have to extend the volgroup. use ''lvdisplay'' to see which is the name of the group, in this example it's base+
  
   lvdisplay    lvdisplay 
Line 103: Line 94:
 11.5 G is the NEW total size of the disk we want to extend! 11.5 G is the NEW total size of the disk we want to extend!
  
- +Extend the LV to use all free space 
-  lvextend -L 11.5G  /dev/base/data+  lvextend -l +100%FREE /dev/base/data
  
 Extend with 20G Extend with 20G
- 
- 
   lvextend -L +20G  /dev/base/data    lvextend -L +20G  /dev/base/data 
  
Line 114: Line 103:
  
    xfs_growfs /data    xfs_growfs /data
 +
 +
 +===== FOR EXT3/4 =====
 +
 +Extend filesystem  to use all free space
 +
 +  vgextend base /dev/sda3
 +
 +  lvextend -l +100%FREE /dev/base/root
 +
 +Check that the filesystem is ok
 +
 +  fsck.ext4 -f /dev/base
 +
 +Now resize the filesystem
 +
 +  resize2fs -p /dev/base/root
  
  
 ===== For swap ===== ===== For swap =====
  
-swapoff /dev/base/swap  +  swapoff /dev/base/swap 
-lvextend -L 3.9G /dev/base/swap  +  lvextend -L 3.9G /dev/base/swap 
-mkswap /dev/base/swap  +  mkswap /dev/base/swap 
-swapon /dev/base/swap  +  swapon /dev/base/swap 
-free+  free
  
 Check if filesystems are ok, and only then release the snapshot Check if filesystems are ok, and only then release the snapshot
  
-For ext2/ext3 
  
-  resize2fs /dev/base/data+======= Create LVM ======= 
 + 
 +Find all LVM VG 
 + 
 +  vgscan 
 + 
 +Create Physical Volumes 
 + 
 +Der Befehl pvcreate legt den VGDA Block auf dem PV an. Er muss für jedes PV ausgeführt werden, bevor es von LVM verwendet werden kann: 
 + 
 +   pvcreate /dev/hda3 
 + 
 +Volume Groups anlegen 
 + 
 +Jetzt legen wir mit 'vgcreate <VolumeGroup> <Partition(en)>' unsere Volume Group an und nennen sie "vg01": 
 + 
 +   vgcreate vg01 /dev/hda3 /dev/hdb2 
 + 
 +Logische Volumes anlegen. 
 + 
 +Hier legen wir jetzt alle unsere logischen Volumes an. Als Namen verwenden wir, etwas fantasielos, lvol1, lvol2 und lvol3. Dabei bedienen wir uns mit dem Plattenplatz auf Volume Group vg01, der einzigen Volume Group in diesem Beispiel. Es ist offensichtlich, dass wir hier nicht mehr Plattenplatz "verteilen" können, als wir bei vgcreate in die Volume Group "hineingesteckt" haben, und zwar in Form der beiden Partitionen hda3 und hdb2. (lvcreate -L<Grösse> -n <LogicalVolumeName> <Volume Group>). 
 + 
 +   lvcreate -L 1500M -n lvol1 vg01  
 + 
 +Filesysteme anlegen 
 + 
 +Ab jetzt können die logischen Partitionen, genau so wie gewöhnliche Partitionen, über Ihre Device Files angesprochen werden. Gewöhliche Partitionen werden mit /dev/sd[a-z]* oder /dev/hd[a-z]* bezeichnet; Logische Volumes werden mit /dev/VolumeGroupName/LogicalVolumeName angesprochen. Mit mke2fs <LogicalVolumeName> legen wir die ext2 Filesysteme an: 
 + 
 +  mkfs.ext4 /dev/vg01/lvol1 
 + 
 +fstab anpassen 
 + 
 +Damit die neuen Filesysteme nun bei jedem Systemstart automatisch gemountet werden, müssen wir sie in die Datei /etc/fstab eintragen (siehe 'man fstab'). In unserem Scenario sehen die zusätzlichen Einträge wie folgt aus: 
 + 
 +   /dev/vg01/lvol1 /usr ext2 defaults 1 2 
 + 
 +http://www.linuxhaven.de/dlhp/HOWTO-test/DE-LVM-HOWTO-2.html 
  
/data/www/wiki.inf.unibz.it/data/pages/tech/documentation/procedures/vm/vm_disk_expansion_lvm_xfs.txt · Last modified: 2020/10/13 16:46 by kohofer