We run a lot of Xen instances for our development and test servers and a few were starting to get full. Fortunately the disks in the real servers were very large and the xenlet partitions were made using LVM so resizing them to add more space was possible!
root@dev-myfiles0:~# df -h Filesystem Size Used Avail Use% Mounted on /dev/hda1 4.0G 3.8G 200M 95% / varrun 257M 48K 257M 1% /var/run varlock 257M 0 257M 0% /var/lock udev 257M 40K 257M 1% /dev devshm 257M 0 257M 0% /dev/shm
Basically we just have to shut down the xenlet, resize the partition and then restart the xenlet again, simple!
root@brandy:~# xm shutdown dev-myfiles0 root@brandy:~# lvextend -L40G /dev/vg0/dev-myfiles0-disk Extending logical volume dev-myfiles0-disk to 40.00 GB Logical volume dev-myfiles0-disk successfully resized root@brandy:~# e2fsck -f /dev/vg0/dev-myfiles0-disk e2fsck 1.40.2 (12-Jul-2007) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/vg0/dev-myfiles0-disk: 16541/524288 files (0.9% non-contiguous), 138346/1048576 blocks root@brandy:~# resize2fs /dev/vg0/dev-myfiles0-disk resize2fs 1.40.2 (12-Jul-2007) Resizing the filesystem on /dev/vg0/dev-myfiles0-disk to 10485760 (4k) blocks. The filesystem on /dev/vg0/dev-myfiles0-disk is now 10485760 blocks long. root@brandy:~# cd /etc/xen root@brandy:/etc/xen# xm create dev-myfiles0.cfg Using config file "./dev-myfiles0.cfg". Started domain dev-myfiles0
Wee, lots of free space now!
root@dev-myfiles0:~# df -h Filesystem Size Used Avail Use% Mounted on /dev/hda1 40G 3.8G 37G 10% / varrun 257M 40K 257M 1% /var/run varlock 257M 0 257M 0% /var/lock udev 257M 40K 257M 1% /dev devshm 257M 0 257M 0% /dev/shm