Создание дисков virtIO для виртуальных машин
Чтобы повысить производительность ввода-вывода виртуальных машин, с ними можно использовать диски virtIO. По умолчанию виртуальные машины создаются с дисками, присоединенными к шине SCSI, что нельзя изменить позже.
Можно создать том для ВМ и присоединить его к шине virtIO во время развертывания ВМ с помощью утилиты vinfra. Этот метод может применяться для создания загрузочных томов из образов ISO и шаблонов (QCOW2). Его также можно использовать для присоединения незагрузочных томов. Обратите внимание, что нужно будет использовать утилиту vinfra каждый раз при создании виртуальной машины.
Как вариант, можно применить свойство шины virtIO к образу через средство командной строки OpenStack. Это свойство позволяет создать несколько ВМ из настроенных образов в интерфейсе командной строки, а также на панелях администрирования и самообслуживания. Однако оно работает только для шаблонов.
Предварительные требования
- Образ загружен в вычислительный кластер, как описано в разделе Подготовка загрузочного носителя для виртуальных машин.
-
Для авторизации выполнения приведенных ниже команд настроен клиент командной строки OpenStack, как описано в разделе Подключение к интерфейсу командной строки OpenStack.
Чтобы создать виртуальную машину с томом virtIO
Используйте параметр --volume bus=virtio при выполнении команды vinfra service compute server create.
Пример 1. Чтобы создать ВМ из QCOW2-образа mytemplate, выполните:
# vinfra service compute server create myvm1 --network id=private,fixed-ip=192.168.128.100 --flavor medium\ --volume source=image,id=mytemplate,bus=virtio,size=100
Пример 2. Чтобы создать ВМ из ISO-образа myiso, выполните:
# vinfra service compute server create myvm2 --network id=private,fixed-ip=192.168.128.100 --flavor medium\ --volume source=blank,size=100,bus=virtio,boot-index=0,type=disk \ --volume source=image,id=myiso,size=5,boot-index=1,type=cdrom
После создания ВМ все добавляемые к ней тома будут присоединяться к шине virtIO.
Чтобы создать виртуальную машину из шаблона virtIO
-
Примените свойство шины virtIO к шаблону. Например:
# openstack --insecure image set mytemplate --property hw_disk_bus=virtio
-
Создайте том из шаблона virtIO. Например:
# openstack --insecure volume create --image=mytemplate --size=10 myvolume
-
Создайте ВМ с новым томом. Например:
# openstack --insecure server create myvm --volume=myvolume --flavor small --network public
После создания ВМ все добавляемые к ней тома будут присоединяться к шине virtIO.