virt-p2v-make-kickstart(1) | Virtualization Support | virt-p2v-make-kickstart(1) |
virt-p2v-make-kickstart — програма для збирання kickstart virt-p2v
virt-p2v-make-kickstart [-o p2v.ks] [--proxy=http://...] сховище [сховище...]
virt-p2v(1) перетворює фізичну машину для запуску віртуалізованою у KVM, під керуванням libvirt, OpenStack, oVirt, Red Hat Enterprise Virtualisation (RHEV) або одним із інших призначень, підтримку яких передбачено у virt-v2v(1).
Kickstart — формат, який використовується у похідних від Red Hat дистрибутивах (зокрема Fedora, Red Hat Enterprise Linux, CentOS, Scientific Linux тощо) для опису процесу створення компакт-дисків із портативною системою, встановлення дистрибутива, створення «варіантів» тощо. Дані у цьому форматі зберігаються у файлі kickstart.
virt-p2v-make-kickstart збирає файл kickstart, яким можна скористатися для збирання придатного до завантаження ISO P2V, образу портативної системи для компакт-диска, флешки USB або образу PXE. Ця програма лише створює файл kickstart, але на цій сторінці підручника описано деякі зі способів використання файла kickstart.
Користуватися virt-p2v-make-kickstart дуже просто:
virt-p2v-make-kickstart fedora
збере файл kickstart для Fedora. Файл kickstart називатиметься p2v.ks і зберігатиметься у поточному каталозі.
Параметрі є списком з одного або декількох сховищ. Деякі із наявних вбудованих сховищ: "fedora", "rawhide", "koji" або "rhel-ВЕРСІЯ" (наприклад "rhel-7.1"). Ви також можете змінити адресу як параметр для вказування на сховище. Приклад:
virt-p2v-make-kickstart https://dl.fedoraproject.org/pub/fedora/linux/releases/21/Everything/x86_64/os/
Для керування назвою файла-результату скористайтеся параметром -o. Щоб наказати kickstart скористатися проксі-сервером або вебкешем для отримання файлів, скористайтеся параметром --proxy.
Щойно у вас буде файл kickstart, ви можете скористатися livecd-creator(8) для створення образу компакт-диска із портативною системою:
sudo livecd-creator p2v.ks
Перш ніж віддавати команду, зауважте, що вам слід, ймовірно, запустити "livecd-creator" в одноразовій віртуальній машині з таких причин:
Це потребує прав доступу "spin-livecd" для Koji, які зазвичай не надаються, навіть для пакувальників Fedora. Втім, припускаючи, що у вас є відповідні права доступу (або, наприклад, ваш власний екземпляр Koji), ви можете зробити так:
koji spin-livecd [--scratch] virt-p2v 1.XX.YY rawhide x86_64 p2v.ks
Скористайтеся програмою livecd-iso-to-disk(8) для перетворення створеного за наведеним вище рецептом образу ISO на запис на носії USB:
sudo livecd-iso-to-disk livecd-p2v.iso /dev/sdX
Скористайтеся програмою "livecd-iso-to-pxeboot" для перетворення створеного вище образу ISO у образ для завантаження PXE.
sudo livecd-iso-to-pxeboot livecd-p2v.iso
Ця команда створює підкаталог "tftpboot" у поточному каталозі, який міститиме файли, потрібні, щоб PXE завантажила virt-p2v:
$ ls -1R tftpboot/ tftpboot/: initrd0.img pxelinux.0 pxelinux.cfg/ vmlinuz0 tftpboot/pxelinux.cfg: default
Virt-p2v може перетворювати будь-які 32- або 64-бітові гостьові системи, незалежно від того, чи є сама virt-p2v зібраною як 32- або 64-бітовою програмою. Єдиним обмеженням є те, що 64-бітову версію virt-p2v не може бути запущено на 32-бітовому обладнанні.
Застаріла версія virt-p2v 0.9 завжди збиралася як 32-бітовий (i686) образ ISO. Це означало, що компакт-диск із такою системою могло бути завантажено на будь-якому 32- або 64-бітовому обладнанні архітектури i686 або x86-64, і вона могла перетворювати будь-які гостьові системи. Застарілий образ ISO virt-p2v, що постачався Red Hat, було засновано на Red Hat Enterprise Linux (RHEL) 6.
Оскільки у RHEL 7 було припинено підтримку 32-бітових машин, поточну версію virt-p2v на RHEL може бути зібрано лише у 64-бітовій версії. Цю систему не може бути запущено на застарілому обладнанні 32-бітової архітектури.
Образи ISO virt-p2v для Fedora типово збираються для 32-бітової архітектури, отже, подібно до застарілої версії на основі RHEL 6, virt-p2v 0.9, їх можна завантажувати на будь-якому обладнанні.
Ви можете скористатися qemu для тестового завантаження образу ISO P2V:
qemu-kvm -m 1024 -hda /tmp/guest.img -cdrom /tmp/livecd-p2v.iso -boot d
Зауважте, що "-hda" є (віртуальною) системою, яку ви хочете перетворити (з тестовою метою). Нею може бути гостьова система будь-якого типу, підтримуваного у virt-v2v(1), зокрема Windows або Red Hat Enterprise Linux.
qemu-kvm \ -m 4096 -hda /tmp/guest.img \ -boot n \ -netdev user,id=unet,tftp=/tmp/tftpboot,bootfile=/pxelinux.0 \ -device virtio-net-pci,netdev=unet \ -serial stdio
Зауважте, що це потребує значно більше пам'яті, оскільки образ PXE завантажується до пам'яті. Крім того, через те, що сервер TFTP qemu є дуже повільним, а образ PXE virt-p2v є дуже великим, образ може, як здається» «зависати» після запуску pxelinux.
Встановити нові пакунки можна за допомогою параметра --install. Встановлення нових пакунків може бути корисним для створення повнофункціонального диска virt-p2v із додатковими інструментами для діагностики та усування вад. Як аргумент параметра слід вказати список пакунків, відокремлених комами. Приклад:
virt-p2v-make-kickstart [...] --install tcpdump,traceroute
Ви можете вставити файл профілю SSH (закритий ключ) до kickstart, а отже до ISO, за допомогою параметр --inject-ssh-identity. Зауважте, що ви не можете вставити ключ після збирання образу ISO.
Спочатку створіть пару ключів. Пароль до пари ключів має бути порожнім:
ssh-keygen -t rsa -N '' -f id_rsa
Ця команда створить закритий ключ ("id_rsa") і відкритий ключ ("id_rsa.pub"). Відкритий ключ слід дописати до файла "authorized_keys" на сервері перетворення virt-v2v (зазвичай, до файла "/root/.ssh/authorized_keys").
Закритий ключ має бути додано до файла kickstart, а потім відкинуто:
virt-p2v-make-kickstart [...] --inject-ssh-identity id_rsa rm id_rsa
Образ ISO далі може бути зібрано на основі kickstart у звичний спосіб (див. вище), і він міститиме вбудований профіль SSH (/var/tmp/id_rsa).
При завантаженні virt-p2v вкажіть адресу вставленого файла ось так:
│ Користувач: [root____________________________] │ │ │ │ Пароль: [ <не заповнюйте> ] │ │ │ │ Адреса профілю SSH: [file:///var/tmp/id_rsa_______] │
або, якщо використовується командний рядок ядра, додайте:
p2v.identity=file:///var/tmp/id_rsa
Докладніший опис наведено у розділі "ПРОФІЛІ SSH" in virt-p2v(1).
Розташування виконуваного файла можна змінити за допомогою встановлення відповідного значення змінної середовища "VIRT_P2V_DATA_DIR".
Розташування цих файлів можна змінити за допомогою встановлення відповідного значення змінної середовища "VIRT_P2V_DATA_DIR".
virt-p2v(1), virt-p2v-make-disk(1), virt-v2v(1), livecd-creator(8), livecd-iso-to-disk(8), http://libguestfs.org/.
Richard W.M. Jones http://people.redhat.com/~rjones/
Copyright (C) 2009-2019 Red Hat Inc.
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:
2019-02-07 | libguestfs-1.40.2 |