tech:documentation:procedures:vm:vm_disk_expansion_lvm_xfs
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
tech:documentation:procedures:vm:vm_disk_expansion_lvm_xfs [2009/02/05 15:19] – ccumer | tech:documentation:procedures:vm:vm_disk_expansion_lvm_xfs [2020/10/13 16:46] (current) – [VM disk Expansion LVM with XFS/EXT4] 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 | + | Expand the original disk or add a second vdisk from **Infrastructure Client**.\\ |
- | **THEN TAKE A SNAPSHOT!!!** | + | |
- | then from on the vm either create an additional partirion on the free space. The partition type us 8e | + | If you are on a kernel newer or equal to 2.6.32 then you can issue the command |
- | < | + | |
- | cfdisk /dev/sda | + | |
- | ### for example if the new partition is /dev/sda3 | + | |
- | pvcreate /dev/sda3 | + | |
- | </ | + | |
- | or assign | + | < |
- | <code> | + | |
- | apt-get install scsitools | + | to get the new size w/o reboot. |
- | rescan-scsi-bus.sh | + | |
- | cfdisk /dev/sdb | + | |
- | ### for example if the new partition is /dev/sda3 | + | In case you cant see the "disk" do this: |
- | pvcreate | + | |
- | </code> | + | echo "- - -" > /sys/class/ |
+ | |||
+ | Do this for all host0,1,2 etc. | ||
+ | |||
+ | |||
+ | or | ||
+ | |||
+ | echo " | ||
+ | |||
+ | whereby after scsi_device you need to find the correct scsi device | ||
+ | |||
+ | or | ||
+ | |||
+ | apt-get install scsitools | ||
+ | rescan-scsi-bus | ||
+ | |||
+ | At the end it should list that a new device was found, note down the name/ | ||
+ | |||
+ | echo ' | ||
+ | |||
+ | IMPORTANT: Be sure to replace the 32\:0\:1\:0 with the appropriate disk for your purposes. | ||
+ | |||
+ | |||
+ | **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 or cfdisk /dev/sdb | ||
+ | |||
+ | |||
+ | **RESIZE ORIGINAL DISK** | ||
+ | |||
+ | Resize the already existing partition, e.g. /dev/sda4 to the newly created free partition. | ||
+ | |||
+ | cfdisk /dev/sda or cfdisk /dev/sdb | ||
+ | |||
+ | Now resize the Physical Volume to the new size | ||
+ | |||
+ | pvresize /dev/sda4 | ||
+ | |||
+ | extend the logical volume | ||
+ | |||
+ | lvextend -l +100%FREE | ||
+ | |||
+ | next resize the file system | ||
+ | |||
+ | resize2fs -p / | ||
+ | |||
+ | |||
+ | If you get a error: | ||
+ | |||
+ | < | ||
+ | |||
+ | run this command: | ||
+ | |||
+ | parted -l | ||
+ | |||
+ | and when asked to Fix/Cancel? type **F** | ||
+ | |||
+ | # for example if the new partition is /dev/sda3 | ||
+ | |||
+ | # create logical disk /dev/sda3 of type 8e (Linux LVM) | ||
+ | |||
+ | # make disk visible to linux | ||
+ | |||
+ | partprobe | ||
+ | pvcreate | ||
+ | |||
+ | now you have to extend the volgroup. use '' | ||
+ | in this example it's **base** | ||
+ | |||
+ | lvdisplay | ||
- | now you have to extend the volgroup. use '' | ||
< | < | ||
- | vdisplay | ||
--- Logical volume --- | --- Logical volume --- | ||
LV Name / | LV Name / | ||
Line 78: | Line 143: | ||
Read ahead sectors | Read ahead sectors | ||
Block device | Block device | ||
+ | </ | ||
+ | and we assume the new partition is /dev/sda3 | ||
- | </ | + | |
- | + | ||
- | < | + | |
- | vgextend base /dev/sda3 | + | |
- | </ | + | |
check with '' | check with '' | ||
- | Now we extend the " | + | pvscan |
- | < | + | Now we extend the " |
- | lvextend | + | 11.5 G is the NEW total size of the disk we want to extend! |
- | </code> | + | |
+ | Extend the LV to use all free space | ||
+ | lvextend -l +100%FREE | ||
+ | |||
+ | Extend with 20G | ||
+ | lvextend -L +20G | ||
now we have to grow the filesystem /data | now we have to grow the filesystem /data | ||
- | < | + | |
- | xfs_growfs /data | + | |
- | </code> | + | |
+ | |||
+ | ===== FOR EXT3/4 ===== | ||
+ | |||
+ | Extend filesystem | ||
+ | |||
+ | vgextend base /dev/sda3 | ||
+ | |||
+ | lvextend -l +100%FREE / | ||
+ | |||
+ | Check that the filesystem is ok, **but only if the FS is unmounted** | ||
+ | |||
+ | fsck.ext4 -f /dev/base | ||
+ | |||
+ | Now resize the filesystem | ||
+ | |||
+ | Debian System: | ||
+ | |||
+ | resize2fs -p / | ||
+ | |||
+ | Centos/ | ||
+ | |||
+ | resize4fs -p / | ||
+ | |||
+ | ===== For swap ===== | ||
+ | |||
+ | swapoff / | ||
+ | lvextend -L 3.9G / | ||
+ | mkswap / | ||
+ | swapon / | ||
+ | free | ||
+ | |||
+ | Check if filesystems are ok, and only then release the snapshot | ||
+ | |||
+ | Fix issue with swap | ||
+ | |||
+ | * swapoff: /dev/dm-1: swapoff failed: Cannot allocate memory | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | <del> | ||
+ | |||
+ | |||
+ | ======= 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: | ||
+ | |||
+ | | ||
+ | |||
+ | Volume Groups anlegen | ||
+ | |||
+ | Jetzt legen wir mit ' | ||
+ | |||
+ | | ||
+ | |||
+ | Logische Volumes anlegen. | ||
+ | |||
+ | Hier legen wir jetzt alle unsere logischen Volumes an. Als Namen verwenden wir, etwas fantasielos, | ||
+ | |||
+ | | ||
+ | |||
+ | oder wir könne die Größen angeben! (1500M) | ||
+ | |||
+ | | ||
+ | |||
+ | Filesysteme anlegen | ||
+ | |||
+ | Ab jetzt können die logischen Partitionen, | ||
+ | |||
+ | mkfs.ext4 / | ||
+ | |||
+ | 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' | ||
+ | |||
+ | / | ||
+ | |||
+ | ===== Links ===== | ||
+ | |||
+ | |||
+ | [[http:// | ||
+ | [[https:// | ||
+ | [[http:// | ||
+ | [[http:// | ||
+ | [[http:// | ||
+ | [[http:// | ||
+ | [[http:// | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | http:// | ||
+ | http:// |
/data/www/wiki.inf.unibz.it/data/attic/tech/documentation/procedures/vm/vm_disk_expansion_lvm_xfs.1233843581.txt.gz · Last modified: 2019/01/16 10:03 (external edit)