Для того, что бы наши виртуальные машины были в одной же сети с host-системой необходимо переделать сетевые интерфейсы.
Для этого устанавливаем пакет для работы с сетевыми мостами:
yum install bridge-utils
Создаём новый сетевой интерфейс br0, описываем его в /etc/sysconfig/network-scripts/ifcfg-br0:
DEVICE=br0 TYPE=Bridge BOOTPROTO=static IPADDR=192.168.1.45 GATEWAY=192.168.1.1 NETMASK=255.255.255.0 ONBOOT=yes
Старый сетевой интерфейс /etc/sysconfig/network-scripts/ifcfg-eth0 приводим к виду:
DEVICE=eth0 BOOTPROTO=none ONBOOT=yes BRIDGE=br0
После чего перезагружаем машину, дабы убедиться, что в случае перезагрузки все будет отлично работать.
Если по каким либо причинам виртуальная машины была создана с сетевой настройкой по умолчанию, то необходимо переконфигурировать сетевой интерфейс виртуальной машины и привести его к такому виду:
<interface type='bridge'> <mac address='52:54:00:b8:d5:f9'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface>
Далее, что бы получить доступ к виртуальной машине для ее управления необходимо поправить настройки по умолчанию /etc/libvirt/qemu.conf, надо раскоментировать и щадать следующие параметры:
vnc_listen = "0.0.0.0" # раскомментировать vnc_password = "Password" # раскомментировать и поставить свой пароль
И перезагружаем демона
systemctl restart libvirtd.service
Для простоты создания лучше всего использовать готовый скрипт:
#!/bin/bash SYSNAME="vps-centos01" DISKSIZE="5" virt-install --connect qemu:///system -n $SYSNAME -r 512 --vcpus=2 --arch=x86_64 \ -c CentOS-6.2-x86_64-netinstall.iso --disk /home/kvm/images/$SYSNAME.img,size=$DISKSIZE \ -w network=bridge:br0,model=virtio --graphics vnc --os-type=linux --os-variant=rhel6
Для начала убиваем машину
virsh destroy machine-name
Делаем обязательно бекап
cp /home/virt/images/machine-name.img /home/virt/images/machine-name.imb.backup
Создаём пустой файл необходимого нам размера
dd if=/dev/zero of=zeros.raw bs=1024k count=4096
Копируем его в наш текущий образ
echo zeros.raw >> /home/virt/images/machine-name.img
Монтируем образ для манипуляций с ним средствами fdisk
losetup /dev/loop0 /home/virt/images/machine-name.img
Редактируем
fdisk /dev/loop0 WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): p Disk /dev/loop0: 105.4 GB, 105360916480 bytes 255 heads, 63 sectors/track, 12809 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0005e743 Device Boot Start End Blocks Id System /dev/loop0p1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/loop0p2 64 2611 20458496 8e Linux LVM /dev/loop0p3 2611 7710 40959055 83 Linux Command (m for help): n Command action e extended p primary partition (1-4) p Selected partition 4 First cylinder (7711-12809, default 7711): Using default value 7711 Last cylinder, +cylinders or +size{K,M,G} (7711-12809, default 12809): Using default value 12809 Command (m for help): p Disk /dev/loop0: 105.4 GB, 105360916480 bytes 255 heads, 63 sectors/track, 12809 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0005e743 Device Boot Start End Blocks Id System /dev/loop0p1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/loop0p2 64 2611 20458496 8e Linux LVM /dev/loop0p3 2611 7710 40959055 83 Linux /dev/loop0p4 7711 12809 40957717+ 83 Linux
Выходим, отмонтируем диск
losetup -d /dev/loop0
Стартуем виртуалку
virsh start machine-name
Логинимся в неё и добавляем новый диск в раздел LVM
pvcreate /dev/vda4 vgextend VolGroup /dev/vda4 lvextend -l+100%FREE /dev/VolGroup/lv_root resize2fs /dev/VolGroup/lv_root
Всё.