Как добавить образ диска в виртуальную машину KVM с помощью команды virsh
![]()
Как добавить дополнительное дисковое хранилище в гостевую ОС на виртуальную машину KVM с командой virsh в операционной системе Linux?
Вы можете легко добавить дополнительные жесткие диски в KVM домене/виртуальной машине, чтобы получить увеличенное пространство для хранения данных гостя. В этом учебном пособии показано, как добавить дополнительное дисковое хранилище в виртуальную машину KVM, используя опцию командной строки virsh в Linux.
Ниже приведены шаги по добавлению файлового хранилища (образа диска) в виртуальную машину с помощью команды virsh в Linux:
Шаг 1 – Создайте новый образ диска
Введите следующую команду на хосте KVM для создания нового образа диска под названием ubuntu-box1-vm-disk1-5G с размером 5G:
$ cd /var/lib/libvirt/images/ $ sudo qemu-img create -f raw ubuntu-box1-vm-disk1-5G 5G [sudo] password for vivek: Formatting 'ubuntu-box1-vm-disk1-5G', fmt=raw size=5368709120
Или вы можете использовать команду dd для создания предварительно выделенного файла, для этого выполните:
$ sudo dd if=/dev/zero of=ubuntu-box1-vm-disk1-5G bs=1M count=5120 status=progress 5192548352 bytes (5.2 GB, 4.8 GiB) copied, 10.5212 s, 494 MB/s 5120+0 records in 5120+0 records out 5368709120 bytes (5.4 GB, 5.0 GiB) copied, 10.9421 s, 491 MB/s
Вы только что создали команду qemu-img или dd для создания нового необработанного образа диска размером 5 ГБ. Образ диска называется ubuntu-box1-vm-disk1-5G :
$ sudo ls –lh
Примеры возможных выводов данных:
total 17G -rw------- 1 libvirt-qemu kvm 41G Feb 17 15:41 freebsd11.qcow2 -rw------- 1 libvirt-qemu kvm 3.1G Feb 17 15:33 ubuntu-box-1-clone.qcow2 -rw------- 1 libvirt-qemu kvm 41G Feb 17 15:34 ubuntu-box-1.qcow2 -rw-r--r-- 1 root root 5.0G Feb 17 15:42 ubuntu-box1-vm-disk1-5G
Некоторые замечания относительно формата qcow2
Формат образа необработанного диска выставлен по умолчанию. Преимущество этого формата заключается в простоте и легкости экспорта для всех других эмуляторов. Однако, формат изображения QEMU (qcow2) — самый универсальный формат. Если вам нужно сделать снимки виртуальной машины или выпонить AES-шифрование. Попробуйте формат qcow2. Синтаксис будет выглядеть следующим образом.
$ sudo qemu-img create -f qcow2 ubuntu-box2-vm-disk1-5G 5G
Шаг 2 – Прикрепите диск к виртуальной машине
Прежде чем присоединить диск к вашей виртуальной машине, узнайте имя текущего диска. Войдите в вашу виртуальную машину и введите следующую команду:
$ sudo fdisk -l | grep '^Disk /dev/vd[a-z]'
Примеры возможных выводов данных:
Disk /dev/vda: 40 GiB, 42949672960 bytes, 83886080 sectors
Таким образом, моя виртуальная машина имеет /dev/vda с размером 40 ГБ. Чтобы подключить вновь созданный образ ubuntu-box1-vm-disk1-5G , вы должны использовать /dev/vdb . Если у вас уже есть диск /dev/vdb , вам нужно изменить vdb на свободное устройство, например /dev vdc , и так далее. Чтобы прикрепить диск к виртуальной машине, под названием ubuntu-box1 используйте следующий синтаксис.
# virsh attach-disk /var/lib/libvirt/images/ vdb --cache none
# virsh attach-disk \ --source /var/lib/libvirt/images/ \ --target vdb \ --persistent
Например, прикрепите образ диска ‘/var/lib/libvirt/images/ubuntu-box1-vm-disk1-5G’ в качестве виртуального диска к виртуальной машине/домену с именем «ubuntu-box1» и обновите XML-файл домена для нового диска (введите команду на хосте):
$ sudo virsh attach-disk ubuntu-box1 /var/lib/libvirt/images/ubuntu-box1-vm-disk1-5G vdb --cache none
Примеры возможных выводов данных:
[sudo] password for vivek: Disk attached successfully
Будьте Осторожны : С помощью всего нескольких нажатий клавиш fdisk может уничтожить часть или весь ваш жесткий диск или рабочий раздел. Убедитесь, что вы используете правильные имена устройств с помощью команды fdisk.
Шаг 3 – Разбиение диска на виртуальной машине
Теперь у гостя с именем «ubuntu-box1» есть устройство на жестком диске, называемое /dev/vdb . Зайдите в вашу виртуальную машину и введите следующую команду для проверки того же самого:
$ sudo fdisk -l | grep '^Disk /dev/vd[a-z]'
Примеры возможных выводов данных:
Disk /dev/vda: 40 GiB, 42949672960 bytes, 83886080 sectors Disk /dev/vdb: 5 GiB, 5368709120 bytes, 10485760 sectors
Затем запустите fdisk для нового устройства:
$ sudo fdisk /dev/vdb
Введите n для нового раздела. Введите p для основного раздела. Выберите номер доступного раздела 1. Введите первый цилиндр по умолчанию, нажав Enter. Выбрать весь диск можно, нажав Enter. Наконец, введите p для проверки нового раздела. Введите w, чтобы записать изменения и выйти. Пример сеанса из команды fdisk.

Чтобы отформатировать новый раздел с файловой системой ext4, введите:
$ sudo mkfs.ext4 /dev/vdb1
Примеры возможных выводов данных:

Наконец, вам нужно создать монтируемую директорию:
$ sudo mkdir /disk2/
И смонтируйте диск для гостя:
$ sudo mount /dev/vdb1 /disk2/
Отредактируйте файл /etc/fstab
$ sudo vi /etc/fstab
И обновите его следующим образом, чтобы /dev/vdb1 постоянно монтировались после перезагрузки:
/dev/vdb1 /disk2 ext4 defaults 0 0
Сохраните и закройте файл. Теперь у вас есть гостевая виртуальная машина, которая имеет дополнительное виртуализированное файловое хранилище в системе на базе KVM Linux.
- Установка и настройка Apache, PHP, MySQL, phpMyAdmin на Linux (LAMP)
- Установка и настройка сервера Apache, PHP, MySQL, phpMyAdmin на Windows 10
- Установка Adobe Photoshop CS6 на Linux (очень простой способ)
Оставить ответ Отменить ответ
С 20 по 22 апреля пройдут незабываемые битвы среди кибер-гладиаторов в мире информационной безопасности!
Открыта регистрация команд по ссылке .
Как добавить диск виртуальной машине kvm
Прежде чем создать в интерфейсе PVE виртуальную машину (ВМ), необходимо определиться со следующими моментами:
откуда будет загружен инсталлятор ОС, которая будет установлена внутрь ВМ;
плавное расширение пространства хранения с множеством узлов;
на каком физическом узле будет выполняться процесс гипервизора kvm;
на каком хранилище данных будут располагаться образы дисков ВМ.
Все остальные параметры ВМ относятся к конфигурации виртуального компьютера и могут быть определены по ходу процесса создания ВМ (PVE пытается выбрать разумные значения по умолчанию для ВМ).
Чтобы установить ОС на ВМ, расположенную на этом узле, нужно обеспечить возможность загрузки инсталлятора на этой ВМ. Для этого необходимо загрузить ISO-образ инсталлятора в хранилище данных выбранного физического узла или общее хранилище. Это удобно делать в веб-интерфейсе (см. Управление ISO образами и шаблонами LXC).
Для создания ВМ необходимо нажать кнопку Создать VM ( Create VM ), расположенную в правом верхнем углу веб-интерфейса PVE:

Процесс создания ВМ оформлен в виде «мастера», привычного для пользователей систем управления ВМ.
На вкладке Общее необходимо указать:
Узел ( Node ) — физический сервер, на котором будет работать ВМ;
VM ID — идентификатор ВМ в численном выражении. Одно и то же значение идентификатора не может использоваться более чем для одной машины. Поле идентификатора ВМ заполняется автоматически инкрементально: первая созданная ВМ по умолчанию будет иметь VM ID со значением 100, следующая 101 и так далее;
Имя ( Name ) — текстовая строка названия ВМ;
Пул ресурсов ( Resource pool ) — имя пула данной ВМ, к которому она будет относиться. Данное значение не обязательное.test Чтобы иметь возможность выбора, этот пул должен быть предварительно создан.

На вкладке ОС необходимо указать источник установки ОС, выбрать тип операционной системы для данной ВМ:

Возможны следующие варианты источник установки ОС:
Использовать файл с образом CD/DVD ( Use CD/DVD disc image file ) — выбирает уже выгруженный в хранилище образ ISO:

Использовать привод CD/DVD ( Use physical CD/DVD Drive ) — использовать физический диск хоста PVE;
Нет носителя ( Do not use any media ) — не использовать ISO образ или физический носитель.
Выбор типа гостевой ОС при создании ВМ позволяет PVE оптимизировать некоторые параметры низкого уровня.
На следующем этапе (вкладка Система ) можно выбрать видеокарту, контроллер SCSI, указать использовать ли Агент QEMU:

Вкладка Жесткий диск ( Hard Disk ) содержит следующие настройки:
Шина/Устройство ( Bus/Device ) — тип устройства виртуального диска. Допустимые значения: IDE , SATA , VirtIO Block и SCSI (по умолчанию). Можно также выбрать номер порта;
Хранилище ( Storage ) — выбор хранилища для размещения данного виртуального диска;
Размер диска ( Disk size ) (GiB) — размер виртуального диска в гигабайтах;
Формат ( Format ) — выбирается формат образа виртуального диска. Доступные значения: Несжатый образ диска (raw) , Формат образа QEMU (qcow2) и Формат образа Vmware (vmdk) . Формат образа RAW является полностью выделяемым (thick-provisioned), т.е. выделяется сразу весь объем образа. QEMU и VMDK поддерживают динамичное выделение пространства (thin-provisioned), т.е. объем растет по мере сохранения данных на виртуальный диск;
Кэш ( Cache ) — выбор метода кэширования ВМ. По умолчанию выбирается работа без кэширования. Доступные значения: Direct sync , Write through , Write back и Writeback (не безопасно) и Нет кэша ;
Отклонить ( Discard ) — делает доступным TRIM, что очищает неиспользуемое пространство образа виртуального диска.
KVM: Как увеличить/уменьшить размер диска виртуальной машины?

20.02.2021

VyacheslavK

KVM, Linux

комментариев 10
В этой статье мы поговорим об изменении размера дисков виртуальной машины KVM, рассмотрим используемые форматы виртуальных дисков. Покажем, как правильно увеличить диск виртуальной машины в гипервизоре KVM на Linux без потери данных, а также обсудим варианты уменьшения размеров дисков.
Увеличение диска виртуальной машины KVM
Расширение виртуального диска со стороны KVM
Для того, чтобы проводить работы с диском, виртуальная машина должна быть отключена, иначе мы не сможем что-либо сделать. Рассмотрим пример с увеличением диска размер которого изначально был 20Гб.
Чтобы посмотреть параметры диска виртуальной машины KVM, воспользуйтесь командой:
qemu-img info /путь_до_диска
Вывод команды будет примерно такой:

Мы видим, что у нас есть два поля которые указывают на размер, это virtual_size и disk_size:
- virtual_size – размер виртуального диска, указанный при создании или расширении диска (в этом примере максимальный размер диска – 20 Гб);
- disk_size — размер файла диска в текущий момент, т.е. сколько сейчас занимает образ диска места на физическом сервере (относится только к формату qcow). В нашем пример виртуальный диск занимает всего 1,6 Гб на хранилище.
И сразу о форматах. Я рекомендую при создании виртуальных машин на KVM использовать формат диска qcow2, а не raw. Чуть позже я объясню почему.
Следующим шагом расширим диск виртуальной машины, на 5Gb (для корректного расширения диска у виртуальной машины не должно быть снапшотов!).
# qemu-img resize /путь до диска +5G
Image resized.
Если сразу проверить вывод информации об образе диска, мы увидим, что он расширился:
# qemu-img info /путь_до_диска
image: /путь_до_диска file format: qcow2 virtual size: 25G (26843545600 bytes) disk size: 1.6G cluster_size: 65536 Format specific information: compat: 0.10 refcount bits: 16
Часть работы мы сделали, но требуется и проведение работ со стороны виртуальной машины в гостевой ОС. Далее мы покажем, как увеличить размер диска в гостевых CentOS 7 и Windows Server 2012.
Если вы планируете добавить дополнительный виртуальный диск для ВМ на KVM гипервизоре, используются qemu-img и virsh.
Расширение раздела в виртуальной машине с Linux CentOS
После расширения диска со стороны сервера, нужно запустить виртуальную машину и подключиться к ней по ssh. Все работы будут проводиться с помощью утилиты управления разделами жестких дисков fdisk.
После подключения к серверу, проверяем наличие нашего дополнительно подключенного места:

На скриншоте видно, раздел /dev/vda2 имеет размер 20Gb, а доступное место на диске у нас больше.
Подправим этот момент и расширим раздел /dev/vda2 до максимального объема:
Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): d Partition number (1,2, default 2): Partition 2 is deleted Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): First sector (1050624-52428799, default 1050624): Using default value 1050624 Last sector, +sectors or +size (1050624-52428799, default 52428799): Using default value 52428799 Partition 2 of type Linux and of size 24.5 GiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks.
После чего нам нужно сделать рестарт виртуальной машины и выполнить команду для применения расширения диска:
meta-data=/dev/vda2 isize=512 agcount=4, agsize=1277888 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=5111552, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 5111552 to 6422272
Filesystem Size Used Avail Use% Mounted on devtmpfs 485M 0 485M 0% /dev tmpfs 496M 0 496M 0% /dev/shm tmpfs 496M 6.6M 489M 2% /run tmpfs 496M 0 496M 0% /sys/fs/cgroup /dev/vda2 25G 1.3G 24G 6% / /dev/vda1 488M 100M 353M 23% /boot tmpfs 100M 0 100M 0% /run/user/0
В итоге мы получили расширенный раздел /dev/vda2. Теперь по порядку, что именно мы сделали:
- fdisk /dev/vda — запустили утилиту fdisk подключившись к разделу /dev/vda
- /d — удаляем раздел, по умолчанию это раздел 2 который нам и нужен, поэтому в следующем пункте жмем просто Enter
- /n – создаем новый раздел, в следующем пункте так же просто жмем Enter или вводим p, далее Enter так как создаваемый раздел по умолчанию будет 2.
- При указании первого и последнего сектора так же жмем просто Enter, если мы хотим расширить раздел до максимума, если вы хотите указать конкретный размер, в последнем секторе указывайте размер диска как указано в меню +size Размер не может быть меньше, чем был ранее!
- /w — применяем наши настройки.
После перезагрузки проверим диск командой:
В некоторых источниках для выполнения данной процедуры указывают команду:
Но с файловой системой xfs это не работает!
Работы по расширению диска на виртуальной машине с ОС CentOS 7 закончены.
Увеличение диска в гостевой Windows Server
Подключаемся к виртуальной машине через rdp или VNC и выполняем работы по расширению диска.
- Откройте Server Manager -> Tools -> Computer Management;
- В открывшемся окне выбираем в меню Disk Management, после чего у вас должны отобразиться все ваши диски и неразмеченное пространство, которые мы добавили со стороны гипервизора KVM;

- Выбираем нужный диск и нажимаем Extended Volume;

- По умолчанию для увеличения размера диска будет предложено все доступное место;

- Нажимаем «далее» и завершаем расширение. После данной процедуры, ваш раздел в системе должен будет расшириться;

Хотелось бы добавить, что перед процедурой расширения диска для виртуальной машины, я советую выполнять резервное копирование самого диска. Остановите виртуальную машину и скопируйте образ диска в директорию для бэкапа или в любую директорию, в которой есть свободное место. Если в ходе работ, что-то пойдет не так, вы всегда сможете вернуть образ виртуального диска из бэкапа.
Как уменьшить размер виртуального диска в KVM?
В своей работе, ранее я довольно часто сталкивался с данным вопросом, но к сожалению, безболезненно уменьшить диск на виртуальной машине в KVM нельзя! Единственный приемлемый размер уменьшения размер диска виртуальной машины KVM на физическом хранилище – его сжатие через конвертацию.
В интернете фигурирует много статей, якобы благодаря которым вы можете уменьшить размер диска на виртуальной машине, но это не работает.
Я приведу несколько примеров, на которые я натыкался и которые лично мною были проверены.
Уменьшение KVM диска с помощью утилиты qemu
На ряде ресурсов описаны действия, выполняемые с помощью утилиты qemu. В них предлагается уменьшить размер диска виртуальной машины с помощью команды:
qemu-img resize /путь_до_диска -5G — уменьшаем диск на 5G
Или такой вариант с указанием конкретного размера:
qemu-img resize /путь_до_диска 25G — указываем размер диска в 25G
Что происходит после выполнения данной команды? Запускаем сервер и конечно система не грузится:

Я пробовал сначала уменьшить раздел из-под системы с помощью утилиты fdisk, но в таком случае, система так же перестает загружаться, даже если вы пропустите шаг уменьшения диска с физического сервера и это логично. Раздел который мы уменьшаем, системный и соответственно ОС перестает загружаться, так как при уменьшении диска, информация по всей видимости уничтожается.
Уменьшение виртуального диска с подменой образа
Уже не такой распространенный в инструкциях вариант — это уменьшение диска, с подменой на старый. То есть, вы создаете новую виртуальную машину с нужным вам размером диска. После чего, подменяете старый образ диска в новый образ и судя по описанию статей в разных источниках, это работает. Я так же сделал проверку и это сломало файловую систему, как и в первом варианте. Я приведу пример команды:
virt-resize /старый_образ_диска /новый_образ_диска
Приводились так же варианты, с конвертацией диска с формата raw в формат qcow2, НО я изначально создаю машины в данном формате и объясню почему.
Форматы дисков KVM и сжатие диска в qcow2 формате
В самом начале статьи, я упомянул про эти два формата.
raw – в переводе «сырой». Преимущество формата, максимальная производительность, универсальность формата. Минусов масса, основные это:
- Диск занимает все дисковое пространство на физическом сервере, которое ему выделили;
- Нельзя создать снапшоты.
Qcow2 – это родной формат гипервизора QEMU, а так же QEMU-KVM. Это максимально удобный формат виртуального диска из всех поддерживаемых в KVM. Образ диска увеличивается по мере накопления данных на виртуальной машине, поддерживаются снапшоты.
Чем хорош формат qcow2? Вам в принципе не нужно уменьшать размер виртуального диска, так как диск занимает на сервере, ровно столько, сколько места там занято. Если же у вас данные на сервере постоянно перезаписываются и бывает такое, что диск «распух», его можно с легкостью сжать. Рассмотрим такой вариант. Я забью нулями некоторое дисковое пространство и после чего удалю файл:
dd if=/dev/zero of=/mytempfile
rm -rf /mytempfile

При проверке с сервера, образ диска сначала весил 2.4G после чего расширился до 5.9G:
# du -sh /путь_образа
# du -sh /путь_образа
То есть после удаления информации на виртуальной машине, диск обратно не сжался. Чтобы файл диска получил актуальный размер, я использую следующий метод:
Бэкапим файл диска, останавливаем виртуальную машину и после чего выполняем следующие действия:
qemu-img convert -O qcow2 /старый_образ /новый_образ
После чего можно проверить размеры двух дисков:
# du -sh /новый_диск
# du -sh /старый_диск
Как видим, размер сжатого диска 1.6G. Переименуем новый образ диска в нужный нам и запустим виртуальную машину:
Filesystem Size Used Avail Use% Mounted on devtmpfs 485M 0 485M 0% /dev tmpfs 496M 0 496M 0% /dev/shm tmpfs 496M 6.6M 489M 2% /run tmpfs 496M 0 496M 0% /sys/fs/cgroup /dev/vda2 25G 1.3G 24G 6% / /dev/vda1 488M 100M 353M 23% /boot tmpfs 100M 0 100M 0% /run/user/0
Контрольная проверка с сервера:
# du -sh /образ_диска
Способ рабочий. За все время его использования, ни разу файловая система на виртуальной машине не умирала. Но настоятельно рекомендую перед подобными работами, создавать копию диска, если не хотите потерять данные.
Это все, что я хотел в данной статье рассказать. Если у кого-то из посетителей сайта есть рабочий способ по уменьшению диска на KVM, именно уменьшения (не сжатие) и именно рабочий, предлагайте свои варианты и я обязательно их протестирую.
Предыдущая статья Следующая статья
Читайте далее в разделе KVM Linux
Virt-Manager: графическая консоль управления KVM
Резервное копирование виртуальных машин в KVM
Управление виртуальными машинами KVM из консоли
Управление числом vCPU и ядер в виртуальной машине
Импорт виртуальных машин
Возможны следующие варианты импортирования виртуальных машин:
- импорт из сервера с VMmanager KVM/Cloud;
- импорт из сервера с libvirt;
- импорт из сервера с VDSmanager-KVM;
- импорт виртуальных машин, работающих с помощью другого гипервизора (не KVM).
Импорт удаленных машин из сервера с VMmanager KVM/Cloud или из сервера с libvirt
Для импорта нажмите Импорт → Импорт VM → Добавить.

Укажите:
- IP — IP-адрес сервера;
- Есть пароль для пользователя — опция авторизации с помощью пароля пользователя;
- Имя пользователя ssh;
- Пароль — пароль пользователя ssh. Поле доступно только при включении опции Есть пароль для пользователя;
- Порт ssh;
- Тип подключаемого сервера:
- Импорт из libvirt;
- Импорт из другого VMmanager KVM.
При успешном подключении к серверу и получении информации о виртуальных машинах сервер добавляется в список в Импорт → Импорт VM.

Нажмите Импорт → Импорт VM → Список VM для просмотра виртуальных машин, которые можно импортировать. Для запуска импорта выбранных виртуальных машин нажмите Начать импорт.
- Узел кластера — сервер для импорта. По умолчанию — Автоматический выбор — выбирается наиболее подходящий узел кластера. Подробнее об алгоритме выбора см. статью Настройка распределения виртуальных машин по узлам кластера;
- Импортировать владельца — опция импорта пользователя, которому принадлежит виртуальная машина;
- Хранилище — при импорте проверяется наличие хранилища с таким же названием, как и на сервере-источнике. Если в VMmanager хранилище с таким названием не добавлено, то виртуальный диск виртуальной машины копируется в хранилище, которое указано в данном поле. При импорте виртуальной машины из сетевого хранилища наименование хранилища-приёмника должно отличаться. Нельзя импортировать виртуальную машину, если её виртуальный диск расположен в сетевом хранилище, которое подключено как к серверу-источнику, так и к серверу-приёмнику;
- Отключить проверку хранилища — опция отключения проверки наличия хранилища, совпадающего с хранилищем импортируемой виртуальной машины. Т.е. при включении опции виртуальный диск копируется в хранилище, указанное в поле Хранилище. Обязательно включите опцию, если виртуальный диск копируется из сетевого хранилища;
- Сеть по умолчанию — импортированная виртуальная машина подключается к сети с таким же названием, как и на сервере-источнике. Если в VMmanager сеть с таким названием не добавлена, то виртуальная машина подключается к сети по умолчанию, которая указана в данном поле;
- Новое доменное имя — опция указания нового доменного имени виртуальной машины;
- Домен — новое доменное имя. Поле доступно только при включении опции Новое доменное имя;
- Выбрать новый IP — опция указания нового IP-адреса виртуальной машины;
- Тип IP-адреса — поле доступно только при включении опции Выбрать новый IP:
- Публичный — с доступом из сети Internet;
- Приватный — без доступа из сети Internet;
- NAT — для использования с сетями NAT.
Обратите внимание! После импорта на интерфейсе виртуальной машины смените старый IP-адрес на новый вручную.
Условия, необходимые для импорта:
- Наличие достаточного количества свободных ресурсов на узлах кластера.
- Если VMmanager-источник настроен на интеграцию с IPmanager, то VMmanager-приёмник также должен быть настроен на интеграцию с тем же IPmanager.
Блок настроек IP-адреса недоступен при одновременном импорте нескольких виртуальных машин.
При импорте виртуальная машина приостанавливается, удаляются все снимки виртуальной машины.
После импорта виртуальная машина на сервере-источнике останавливается, но не удаляется. При её удалении IP-адрес не освобождается в IPmanager.
Импорт из сервера с VDSmanager-KVM
Для импорта нажмите Импорт → Импорт VDS → Добавить.

- Есть пароль для root — опция авторизации с помощью пароля пользователя root;
- Пароль — пароль пользователя root. Поле доступно только при включении опции Есть пароль для root;
- IP — адрес сервера;
- Наименование.
При успешном подключении к серверу и получении информации о виртуальных машинах сервер добавляется в список в Импорт → Импорт VDS.
Нажмите Импорт → Импорт VDS → Список VDS для просмотра виртуальных машин, которые можно импортировать. Для запуска импорта выбранных виртуальных машин нажмите Импорт.
При импорте виртуальная машина приостанавливается, удаляются все снимки виртуальной машины.
После импорта VDS на сервере-источнике останавливается, но не удаляется.
Условия, необходимые для импорта:
- Наличие достаточного количества свободных ресурсов на узлах кластера.
- Если VDSmanager настроен на интеграцию с IPmanager, то VMmanager так же должен быть настроен на интеграцию с тем же IPmanager.
- VDSmanager должен работать с виртуализацией KVM.
Импорт виртуальных машин, созданных при помощи другого гипервизора (не KVM)
Импорт виртуальной машины в кластер под управлением VMmanager заключается в создании аналогичной виртуальной машины и подключении к ней виртуального диска импортируемой виртуальной машины.
Алгоритм импорта виртуальной машины в кластер под управлением VMmanager:
- Конвертация виртуального диска импортируемой виртуальной машины в формат, поддерживаемый VMmanager.
- Определение конфигурации импортируемой виртуальной машины.
- Создание виртуальной машины в VMmanager c конфигурацией, аналогичной импортируемой виртуальной машине.
- Остановка созданной виртуальной машины в VMmanager.
- Подмена виртуального диска созданной виртуальной машины на диск импортируемой виртуальной машины.
- Включение виртуальной машины в VMmanager и проверка работоспособности.
Конвертация виртуального диска импортируемой виртуальной машины в формат, поддерживаемый VMmanager
VMmanager поддерживает форматы виртуальных дисков RAW и Qcow2. Подробнее см. статью Форматы виртуальных дисков.
Для конвертации рекомендуется использовать утилиту virt-v2v. Подробнее об утилите см. статью Конвертация виртуальных дисков в формат, поддерживаемый VMmanager.
Определение конфигурации импортируемой виртуальной машины
Необходима следующая информация об импортируемой виртуальной машине:
- ресурсы виртуальной машины (vCPU, оперативная память, дисковое пространство);
- расположение виртуального диска.
VMmanager для управления виртуализацией использует libvirt. В libvirt виртуальные машины хранятся в виде XML-описаний. Из такого описания можно получить всю необходимую информацию о виртуальной машине.
Подробнее об XML-описании виртуальных машин см. статью Управление виртуализацией с помощью libvirt.
Способ получения информации об импортируемой виртуальной машине зависит от способа, с помощью которого виртуальная машина была создана.
Создание виртуальной машины в VMmanager с конфигурацией, аналогичной импортируемой виртуальной машине
В панели управления необходимо создать виртуальную машину, аналогичную импортируемой. Для этого необходимо вручную указать все настройки создаваемой виртуальной машины.
Остановка созданной виртуальной машины в VMmanager
Необходимо изменить статус виртуальной машины с «Запущена» на «Остановлена» с помощью панели управления.
Подмена виртуального диска созданной виртуальной машины на диск импортируемой виртуальной машины
Виртуальный диск созданной в панели виртуальной машины и сконвертированный виртуальный диск импортируемой виртуальной машины должны иметь одинаковый формат — RAW или Qcow2.
Необходимо скопировать сконвертированный виртуальный диск импортируемой виртуальной машины и заменить им виртуальный диск виртуальной машины, созданной с помощью панели управления. Хранилище виртуального диска виртуальной машины, созданной с помощью панели, указывалось в процессе создания виртуальной машины. Виртуальный диск имеет то же наименование, что и сама виртуальная машина.
Включение виртуальной машины и проверка работоспособности
Необходимо изменить статус виртуальной машины с «Остановлена» на «Запущена» с помощью панели управления.
Возможные ошибки
- Ошибка следующего вида:
qemu-kvm: -drive file=/vm/vm2,if=none,id=drive-virtio-disk0,format=qcow2: could not open disk image /vm/vm2: Invalid argumentКак правило, данная ошибка означает, что формат виртуальных дисков виртуальных машин не совпадает. Необходимо пересоздать виртуальную машину с помощью панели управления, указав верный формат виртуального диска либо сконвертировать виртуальный диск импортируемой машины в подходящий формат.