Пример запуска виртуальной машины.
Описываю способ как запустить машину без использования вспомогательных средств-прослоек (libvirt, virt-manager, virsh). Это универсальный способ и работает везде. Консоль наше всё!
Из примера я убираю опциональные параметры, чтобы они не вносили путаницы на начальном этапе. О них в другой раз.
Для запуска виртуальной машины необходимы:
- общее описание виртуальной машины;
- возможность доступа извне;
- ресурсы:
- память;
- процессор;
- диск;
- сеть;
Общие параметры:
Запускаемую виртуальную машину желательно отправить работать в фон "-daemonize" и конечно же следует включить поддержку KVM виртуализации "-enable-kvm"
Запускаемую виртуальную машину желательно отправить работать в фон "-daemonize" и конечно же следует включить поддержку KVM виртуализации "-enable-kvm"
Для доступа к виртуальному экрану можно использовать VNC. Возможность подключения реализуется через параметр "-vnc 1.2.3.4:1". После запуска к виртуальной машине можно подключиться любым VNC-клиентом к адресу 1.2.3.4 на порт 5901.
Ресурсы:
За объем виртуальной памяти отвечает параметр "-m 2048". Количество виртуальных процессоров устанавливается через "-smp 4". Если есть необходимость загрузить виртуальную машину с CD-ROM, указываем соответствующую опцию с указанием имени iso-образа "-cdrom file.iso"
Теперь более сложные параметры: подключение диска и сетевой карты.
Диск виртуальной машины требует для себя файл-образ или блочное устройство. При создании блочного устройства в последних версиях qemu, сначала определяется диск, затем определяется драйвер для диска. Особе внимание следует уделить связке подпараметров id и drive их аргумент взаимосвязаны и используется в качестве идентификатора при назначении драйвера для блочного устройства:
-drive file=/dev/vstorage00/kvm799-sda,if=none,index=0,id=disk7990 \
-device virtio-blk-pci,drive=disk7990
-device virtio-blk-pci,drive=disk7990
Виртуальная сетевая карта (будем использовать tap-интерфейс, он обеспечивает быструю производительность и все возможности которые предлагает сетевое окружение) также создается по двухуровневому принципу, сначала определяем карту, затем указываем используемый драйвер. Здесь также следует уделить внимание связке id и netdev, значение параметра затем указывается при определении драйвера. И чтобы указать сам интерфейс, используем "ifname" где в качестве аргумента мы указываем сетевой интерфейс на хост системе. Интерфейс на хост-системе должен быть заранее создан. При определении драйвера, также следует указать произвольный MAC-адрес:
-netdev tap,ifname=qtap799,id=qtap799,script=no,downscript=no \
-device virtio-net-pci,netdev=qtap799,mac=00:fc:44:e5:07:99
-device virtio-net-pci,netdev=qtap799,mac=00:fc:44:e5:07:99
Таким образом, из небольших кусочков сформировалась команда для запуска виртуальной машины:
/usr/bin/qemu-system-x86_64 -daemonize -enable-kvm -vnc 172.31.1.254:1 \
-m 2048 -smp 4 \
-cdrom /var/db/images/install-amd64-minimal-20120401.iso \
-drive file=/dev/vstorage00/kvm799-sda,if=none,index=0,id=disk7990 \
-device virtio-blk-pci,drive=disk7990 \
-netdev tap,ifname=qtap799,id=qtap799,script=no,downscript=no \
-device virtio-net-pci,netdev=qtap799,mac=00:fc:44:e5:07:99
На это все. Запуск машины можно проверить через "ps aux |grep qemu"
Смотрите также "Создание сети для виртуальных машин"
На главную "Аппаратная виртуализация"
/usr/bin/qemu-system-x86_64 -daemonize -enable-kvm -vnc 172.31.1.254:1 \
-m 2048 -smp 4 \
-cdrom /var/db/images/install-amd64-minimal-20120401.iso \
-drive file=/dev/vstorage00/kvm799-sda,if=none,index=0,id=disk7990 \
-device virtio-blk-pci,drive=disk7990 \
-netdev tap,ifname=qtap799,id=qtap799,script=no,downscript=no \
-device virtio-net-pci,netdev=qtap799,mac=00:fc:44:e5:07:99
На это все. Запуск машины можно проверить через "ps aux |grep qemu"
Смотрите также "Создание сети для виртуальных машин"
На главную "Аппаратная виртуализация"
Комментариев нет:
Отправить комментарий