Работа с образами в панели MCS

Образ виртуальной машины (или просто «образ») представляет собой файл, в котором содержится виртуальный загрузочный диск с уже установленной на нем операционной системой. Образы используются для создания виртуальных машин (инстансов) в облаке.

Для управления образами можно также воспользоваться утилитой командной строки glance и сервисом образов.

Подготовка/конвертация образа в нужный формат

Внимание

Для загрузки в сервис MCS установочные образы ОС (в формате ISO) не подходят! 

В сервис MCS можно загрузить предварительно развёрнутый образ ОС (например снимок рутового диска операционной системы) в формате RAW.

Как сконвертировать образы *.qcow2, *.qed, *.vdi, *.vhd, and *.vmdk. подробно описано в этой инструкции.

Скачать утилиту для конвертирования можно тут:

Утилита работает из командной строки. 

Ключ Info

info [--object objectdef] [--image-opts] [-f fmt] [--output=ofmt] [--backing-chain] [-U] filename

Для того, что бы посмотреть текущий формат образа есть опция info:

 $ qemu-img info win_7.vdi

image: win_7.vdi
file format: vdi
virtual size: 34G (36700160000 bytes)
disk size: 25G
cluster_size: 1048576

Зная исходный формат - можно конвертировать в любой нужный.

Возможные форматы:

VMDK (VMware) — vmdk
QCOW2 (KVM, Xen) — qcow2
VHD (Hyper-V) — vpc
VHDX (Hyper-V) — vhdx
RAW — raw
VDI (VirtualBox)  — vdi

Ключ Convert

convert [--object objectdef] [--image-opts] [--target-image-opts] [-U] [-c] [-p] [-q] [-n] [-f fmt] [-t cache] [-T src_cache] [-O output_fmt] [-B backing_file] [-o options] [-l snapshot_param] [-S sparse_size] [-m num_coroutines] [-W] filename [filename2[...]] output_filename

Для конвертации используем опцию convert с ключами указания исходного формата и конечного (нужного в итоге).

-p  —  отображает процесс конвертации в %

-f   —  указание исходного формата

-O  —  указания формата на выходе

-o  —  дополнительные опции

-o subformat=dynamic   —  используется для конвертации в vhdx для Hyper-V, указывается для получения на выходе динамического диска.

К примеру, нужно конвертировать образ VDI (VirtualBox) в VHDX (Hyper-V) :

$ qemu-img convert -p -f vdi -O vhdx -o subformat=dynamic /home/user/win_7.vdi /home/user/win_7.vhdx

Замечу, что неважно, какие у файлов расширения, главное - корректно указать исходный и конечный форматы ключами -f и -O, но все же для удобства желательно указывать расширение формата.

Например, конвертация из VDI (VirtualBox) в QCOW2 (KVM, Xen) :

$ qemu-img convert -p -f vdi -O qcow2 /home/user/win_7.vdi /home/user/win_7.img

Загрузка образа из существующего диска

1. Перейдите в раздел панели управления MCS "Образы".

2. Нажмите "Создать образ" и во всплывающем окне выберите один из загрузочных дисков от существующей виртуальной машины.

3. Подождите некоторое время.

Загрузка образа из файла

1. Перейдите в раздел панели управления MCS "Образы".

2. Нажмите "Создать" и выберите пункт/радиокнопку "Файл".

Важно!

Для загрузки образа размером более 20 Гб мы рекомендуем использовать клиент командной строки. Синтаксис и примеры команд есть в этой документации.

Также см. эту статью о технических лимитах.

3. Выберите файл образа в формате RAW на вашем компьютере и нажмите "Создать образ".

4. Подождите некоторое время.

Загрузка образа с помощью CLI

Об установке CLI вы можете прочитать в этой статье - Локальные клиенты для управления виртуальными машинами.

Пример простой заливки образа (актуально, когда загружаются простые образы, например, RouterOS - без резервного копирования ВМ):

# openstack image create --private --container-format bare --disk-format iso --property store=s3 --file <имя_файла.iso>  <имя_образа>

Если планируется залить образ ВМ - и когда необходимо поддержать резервное копирование виртуальной машины - то нужно добавить свойства для работы qemu-guest-agent:

# openstack image create --private --container-format bare --disk-format raw --file <имя_файла.raw> --property hw_qemu_guest_agent=yes --property store=s3 --property os_require_quiesce=yes <имя_образа>

Удаление образа

Перейдите в раздел панели управления MCS "Образы", выберите образ для удаления и в контекстном меню выберите "удалить":

Создание виртуальной машины из своего загруженного образа

Загруженный вами образ будет доступен при создании инстанса в списке других операционных систем:

Выгрузка образа ВМ на локальный ПК

Для выгрузки образа виртуальной машины на локальный компьютер нужно выполнить следующие шаги:

Создание образа

1. В панели управления Horizon, в разделе "Инстансы" сделать снимок нужной машины:

2. В разделе "Диски", вкладка "Снимки дисков" из созданного снимка сделать диск:

3. Из получившегося диска создать образ опцией "Загрузить образ":

4. В разделе "Образы" дождаться создания образа - после полного создания образ получит статус "Активный". Ниже пример незавершённого процесса создания образа:

Скорость создания образа зависит от размера диска, ориентировочно 40 минут для диска объёмом 100Гб.

Выгрузка образа на локальный ПК

Когда образ будет в статусе "Активный", его можно будет загрузить на локальный ПК с помощью клиентов Openstack / glance (см. статьи ниже) командами:

openstack image save

или 

glance image-download

Также см. статьи: