virt-v2v-output-openstack —
використання
virt-v2v для
перетворення
гостьових
систем із
виведенням
даних до OpenStack
virt-v2v [параметри -i*] -o openstack
-oo server-id=СЕРВЕР
[-oo guest-id=ГОСТЬОВА_СИСТЕМА]
[-oo verify-server-certificate=false]
[-oo os-username=admin] [-oo os-*=*]
virt-v2v [параметри -i*] -o glance
На цій
сторінці
наведено
документацію
щодо
використання
virt-v2v(1) для
перетворення
гостьових
систем на
формат,
придатний
до запуску
в OpenStack. Існує
два режими
виведення
даних,
якими ви
можете
скористатися,
але,
зазвичай,
слід
використовувати
лише
-o openstack.
-
-o openstack -oo
server-id=СЕРВЕР [...]
- Повний
опис:
"ВИВЕДЕННЯ
ДО OPENSTACK"
Це
сучасний
метод для
вивантаження
даних до OpenStack
за
допомогою
програмного
інтерфейсу
REST. Гостьові
системи
можна
безпосередньо
перетворити
на томи Cinder.
- -o glance
- Повний
опис:
"ВИВЕДЕННЯ
ДО GLANCE"
Це
застарілий
метод
вивантаження
до Glance. На
жаль, Glance не
дуже
пристосовано
для
зберігання
перетворених
гостьових
систем
(оскільки virt-v2v
працює з
«домашніми
тваринками»,
а не
шаблонною
«худобою»),
тому не
рекомендуємо
користуватися
цим
методом,
якщо ви не
зовсім
впевнені у
наслідках
своїх дій.
Щоб
вивести
дані до OpenStack,
скористайтеся
параметром
-o openstack.
При
перетворенні
за
допомогою
virt-v2v до
формату OpenStack
незвичною
особливістю
є те, що virt-v2v
має бути
запущено у
віртуальній
машині, яка
працює на
«хмарі» OpenStack.
Ця
віртуальна
машина
називається
«базовою
системою
перетворення»
(«conversion appliance»).
Зауважте,
що ця
віртуальна
машина не
пов'язана
із
гостьовою
системою,
перетворення
якої
виконується.
Це
спричинено
тим, що для
створення
томів Cinder, які
міститимуть
дані
гостьової
системи
(перетвореної
програмою)
нам
доведеться
долучити
ці томи Cinder до
якоїсь
віртуальної
машини OpenStack.
У базовій
системі
слід
ініціалізувати
команду
"openstack". Ми
використовуємо
цю команду
для обміну
даними з OpenStack.
Коли virt-v2v
працюватиме
у базовій
системі
перетворення,
вам слід
вказати
назву або UUID
цієї
базової
системи
перетворення
virt-v2v. Приклад:
$ openstack server list
+--------------------------------------+-----------+--------+
| ID | Name | Status |
+--------------------------------------+-----------+--------+
| bbb0147a-44b9-4d19-9a9d-10ca9a984744 | test1 | ACTIVE |
+--------------------------------------+-----------+--------+
# virt-v2v [...] \
-o openstack -oo server-id=bbb0147a-44b9-4d19-9a9d-10ca9a984744
або:
# virt-v2v [...] -o openstack -oo server-id=test1
Якщо
потрібно,
ви можете
запустити
декілька
паралельних
перетворень
у одній
базовій
системі
перетворення,
якщо у ній
достатньо
для цього
ресурсів.
Втім, сам OpenStack
накладає
обмеження,
які слід
враховувати:
OpenStack не здатен
долучати
більше за
приблизно 25
дисків
[точна
кількість
залежить
від
конфігурації
системи] до
однієї
базової
системи. Це
обмежує
кількість
гостьових
систем, які
можна
перетворювати
паралельно,
оскільки
на час
копіювання
кожен з
дисків
гостьової
системи
слід
долучити
до базової
системи.
Перетворювання
до формату
OpenStack потребує
доступу до
тимчасових
(неадміністративних)
точок
доступу до
програмного
інтерфейсу.
Вам
доведеться
або
налаштувати
ваші
змінні
середовища
"$OS_*", або
скористатися
параметрами
виведення
у рядку
команди virt-v2v
для
проходження
розпізнавання
на OpenStack.
Normally there is a file called "overcloudrc" or
"keystonerc_admin" which you can simply "source" to set
everything up.
Приклад:
export OS_USERNAME=admin
або:
virt-v2v [...] -o openstack -oo os-username=admin
дають той
самий
результат
і працюють
так само, як
--os-username у рядку
команди
програмних
інструментів
OpenStack.
Оскільки virt-v2v
має
отримувати
доступ до
томів Cinder, які
представляються
як
пристрої
/dev
у базовій
системі
перетворення,
зазвичай у
режимі
-o openstack virt-v2v
слід
запускати
від імені
користувача
root.
Якщо ви
використовуєте
"sudo" для
запуску virt-v2v і
використовуєте
змінні
середовища
для
розпізнавання,
не
забудьте
скористатися
параметром
"sudo -E" для того,
щоб
зберігати
середовище.
virt-v2v [...] -o openstack -oo guest-id=123-456-7890
Крім того,
ви можете
додатково
вказати у
рядку
команди
-oo
guest-id=.... Цей
ідентифікатор
(який може
бути
довільним
рядком)
зберігається
на кожному
томі Cinder у
властивості
тому "virt_v2v_guest_id".
Цим можна
скористатися
для пошуку
дисків, які
пов'язано
із
гостьовою
системою,
або
встановлення
взаємної
відповідності
дисків із
гостьовими
системами
при
одночасному
перетворенні
декількох
гостьових
систем.
За
допомогою
-oo verify-server-certificate=false ви
можете
повідомити
клієнту openstack
про те, що
слід
ігнорувати
сертифікат
сервера
при
з'єднанні
із
кінцевими
точками
програмного
інтерфейсу
OpenStack. Це матиме
такі самі
наслідки,
як
додавання
параметра
--insecure до
команди
"openstack".
Остаточною
командою
для
перетворення
гостьової
системи,
яку слід
віддавати
від імені
користувача
root, є такою:
# virt-v2v [-i параметри ...] \
-o openstack -oo server-id=НАЗВА|UUID [-oo guest-id=ІДЕНТИФІКАТОР]
Якщо ви
хочете
включити
параметри
розпізнавання
до рядка
команди,
команда
буде такою:
# virt-v2v [-i параметри ...] \
-o openstack -oo server-id=НАЗВА|UUID -oo os-username=admin [тощо]
Гостьові
системи
перетворюються
як томи Cinder
(один том на
диск
початкової
гостьової
системи).
Щоб
завантажити
з них
систему,
скористайтеся
параметром
"openstack server create --volume":
$ openstack volume list
+--------------------------------------+---------------+-----------+
| ID | Name | Status |
+--------------------------------------+---------------+-----------+
| c4d06d15-22ef-462e-9eff-ab54ab285a1f | fedora-27-sda | available |
+--------------------------------------+---------------+-----------+
$ openstack server create \
--flavor x1.small \
--volume c4d06d15-22ef-462e-9eff-ab54ab285a1f \
myguest
$ openstack console url show myguest
Для
визначення
типу тому Cinder
скористайтеся
параметром
-os. Якщо
параметр
не буде
вказано,
припускатиметься,
що немає
ніякого
типу тому Cinder.
Підтримки
таких
параметрів
для OpenStack
не
передбачено:
-oa,
-of.
Зауважте,
що цей
варіант
вважається
застарілим.
У
більшості
випадків
вам слід
використовувати
"ВИВЕДЕННЯ
ДО OPENSTACK".
Щоб
вивести
дані до OpenStack Glance,
скористайтеся
параметром
-o glance.
This runs the
glance(1) CLI program which must be installed on the
virt-v2v conversion host. For authentication to work, you will need to set
"OS_*" environment variables.
Normally there is a file called "overcloudrc" or
"keystonerc_admin" which you can simply "source" to set
everything up.
Virt-v2v додає
метадані
щодо
гостьової
системи до
Glance, описуючи
такі речі,
як назва
гостьової
операційної
системи і
список
потрібних
їй
драйверів.
Команда "glance
image-show" покаже
метадані
як поля «Property»,
зокрема "os_type"
і "hw_disk_bus".
Засоби
вивантаження
образів до
Glance
неправильно
працюють
із
розрідженістю.
З цієї
причини,
використання
qcow2 буде
швидшим і
потребуватиме
менше
місця на
сервері Glance.
Скористайтеся
параметром
virt-v2v
-of qcow2.
Якщо у
гостьовій
системі
єдиний
диск, назва
цього
диску у Glance
буде
назвою
гостьової
системи.
Керувати
назвою
можна за
допомогою
параметра
-on.
У Glance не
передбачено
прив'язки
декількох
дисків до
однієї
гостьової
системи, у Nova
також
заборонено
завантаження
гостьової
системи з
декількох
дисків Glance.
Якщо у
гостьовій
системі
декілька
дисків,
перший
(який
вважається
системним
диском)
називатиметься
так, як і
гостьова
система,
другий і
наступні
диски із
даними
називатимуться
"
назва_гостьової_системи-disk2",
"
назва_гостьової_системи-disk3"
тощо.
Ймовірно,
найкраще
лишити
системний
диск у Glance, а
важливі
диски із
даними
передати
до Cinder.
virt-v2v(1),
https://docs.openstack.org/python-openstackclient/latest/cli/man/openstack.html,
glance(1).
Richard W.M. Jones
© Red Hat Inc., 2009–2020
To get a list of bugs against libguestfs, use this link:
https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
To report a new bug against libguestfs, use this link:
https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
When reporting a bug, please supply:
- •
- The version of libguestfs.
- •
- Where you got libguestfs (eg. which Linux distro, compiled
from source, etc)
- •
- Describe the bug accurately and give a way to reproduce
it.
- •
- Run libguestfs-test-tool(1) and paste the
complete, unedited output into the bug report.