Provided by: virt-v2v_1.44.2-1_amd64 bug

НАЗВА

       virt-v2v-input-vmware - Using virt-v2v to convert guests from VMware

КОРОТКИЙ ОПИС

        virt-v2v -i vmx GUEST.vmx [-o* options]

        virt-v2v -i vmx
           -it ssh
           -ip passwordfile
           'ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx'
           [-o* options]

        virt-v2v
           -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1'
           -it vddk
           -io vddk-libdir=/path/to/vmware-vix-disklib-distrib
           -io vddk-thumbprint=xx:xx:xx:...
           "GUEST NAME"
           [-o* options]

        virt-v2v -i ova DISK.ova [-o* options]

        virt-v2v
           -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1'
           "GUEST NAME" [-o* options]

ОПИС

       This page documents how to use virt-v2v(1) to convert guests from VMware.  There are currently five
       different methods to access VMware:

       -i vmx GUEST.vmx
           Full documentation: "INPUT FROM VMWARE VMX"

           If  you  either have a GUEST.vmx file and one or more GUEST.vmdk disk image files, or if you are able
           to NFS-mount the VMware storage, then you can use the -i vmx method to read the source guest.

       -i vmx -it ssh ssh://...
           Full documentation: "INPUT FROM VMWARE VMX"

           This is similar to the method above, except it uses an SSH connection to ESXi to read  the  GUEST.vmx
           file  and  associated  disks.   This  requires  that  you  have enabled SSH access to the VMware ESXi
           hypervisor - in the default ESXi configuration this is turned off.

       -ic vpx://... -it vddk
       -ic esx://... -it vddk
           Full documentation: "INPUT FROM VDDK"

           This method uses the proprietary VDDK library (a.k.a. VixDiskLib) to access the VMware vCenter server
           or VMware ESXi hypervisor.

           If you have the proprietary library then this method is usually the fastest and  most  flexible.   If
           you don't have or don't want to use non-free software then the VMX or SSH methods above will be best.

       -i ova DISK.ova
           Full documentation: "INPUT FROM VMWARE OVA"

           With  this  method you must first export the guest (eg. from vSphere) as an .ova file, which virt-v2v
           can then read directly.  Note this method only works with files exported from VMware, not  OVA  files
           that  come  from other hypervisors or management systems, since OVA is only a pretend standard and is
           not compatible or interoperable between vendors.

       -ic vpx://... "GUEST NAME"
           Full documentation: "INPUT FROM VMWARE VCENTER SERVER"

           If none of the above methods is available, then use  this  method  to  import  a  guest  from  VMware
           vCenter.  This is the slowest method.

ВХІДНІ ДАНІ З VMX VMWARE

       Virt-v2v також може імпортувати гостьові системи з файлів vmx VMware.

       Це корисно у двох випадках:

       1.  Віртуальні  машини  VMware  зберігаються  на  окремому  сервері NFS і ви можете монтувати сховище NFS
           безпосередньо.

       2.  Вами уможливлено доступ SSH до гіпервізору ESXi VMware ESXi і  у  вас  є  тека  "/vmfs/volumes",  яка
           містить віртуальні машини.

       Якщо   вами   виявлено   теку   або   файли   із   назвами  гостьова_система.vmx,  гостьова_система.vmxf,
       гостьова_система.nvram і один або декілька образів дисків .vmdk, ви можете скористатися цим методом.

   VMX: Guest must be shut down
       Перш ніж буде розпочато перетворення, роботу  гостьової  системи  слід  зупинити.  Якщо  ви  не  вимкнете
       гостьову  систему,  результатом  буде  пошкоджений  диск віртуальної машини у гіпервізорі призначення. За
       допомогою інших методів virt-v2v намагається запобігти конкурентному доступу до даних, але оскільки метод
       -i vmx працює безпосередньо зі сховищем даних, перевірка конкурентного доступу неможлива.

   VMX: Access to the storage containing the VMX and VMDK files
       Якщо файли vmx і vmdk не доступні локально,  вам  слід  або  змонтувати  сховище  даних  NFS  на  сервері
       перетворення або уможливити безпарольний доступ SSH на гіпервізорі ESXi.

       VMX: SSH authentication

       You  can  use SSH password authentication, by supplying the name of a file containing the password to the
       -ip  option  (note  this  option  does  not  take  the  password  directly).   You  may  need  to  adjust
       /etc/ssh/sshd_config on the VMware server to set "PasswordAuthentication yes".

       If you are not using password authentication, an alternative is to use ssh-agent, and add your ssh public
       key  to  /etc/ssh/keys-root/authorized_keys (on the ESXi hypervisor).  After doing this, you should check
       that passwordless access works from the virt-v2v server to the ESXi hypervisor.  For example:

        $ ssh root@esxi.example.com
        [ журналювання безпосередньо до оболонки, пароль не потрібен ]

       VMX: побудова адреси SSH

       При використанні вхідного каналу передавання даних SSH вам слід вказати віддалену адресу "ssh://...", яка
       вказуватиме на файл VMX. Типова адреса виглядає так:

        ssh://root@esxi.example.com/vmfs/volumes/datastore1/my%20guest/my%20guest.vmx

       Усі пробіли слід замінити на комбінації %20.  Інші  символи,  які  не  є  частиною  ASCII,  також  можуть
       потребувати заміни на відповідні шістнадцяткові комбінації.

       Ім'я  користувача  можна не вказувати, якщо воно збігається із назвою вашого локального облікового запису
       користувача.

       Крім того, ви можете вказати номер порту після назви вузла, якщо сервер SSH працює  на  нетиповому  порту
       (не на порту 22).

   VMX: Importing a guest
       Щоб імпортувати файл vmx з локального файла або NFS, віддайте таку команду:

        $ virt-v2v -i vmx guest.vmx -o local -os /var/tmp

       Щоб  імпортувати  файл  vmx  за допомогою SSH, додайте -it ssh, щоб вибрати канал передавання даних SSH і
       вказати віддалену адресу SSH:

        $ virt-v2v \
            -i vmx -it ssh \
            "ssh://root@esxi.example.com/vmfs/volumes/datastore1/guest/guest.vmx" \
            -o local -os /var/tmp

       Virt-v2v обробляє файл vmx і використовує отримані дані для встановлення розташування усіх дисків vmdk.

ВХІДНІ ДАНІ З VDDK

       Virt-v2v може імпортувати гостьові системи за допомогою пропрієтарної бібліотеки  VDDK  (або  VixDiskLib)
       VMware.

   VDDK: Prerequisites
       1.  Оскільки бібліотека VDDK не є вільним програмним забезпеченням, а умови ліцензування на бібліотеку не
           дозволяють  її  повторного розповсюдження або комерційного використання, вам доведеться отримати VDDK
           самостійно і переконатися, що її використання не порушує умов ліцензування.

       2.  nbdkit ≥ 1.6 is recommended, as it ships with the VDDK plugin enabled unconditionally.

       3.  Вам слід знайти «відбиток» SSL вашого сервера VMware. Опис того, як це зробити, наведено на  сторінці
           підручника nbdkit-vddk-plugin(1), його також наведено за вказаним вище посиланням.

       4.  Імпортування VDDK потребує можливості, яку було додано у libvirt ≥ 3.7.

   VDDK: ESXi NFC service memory limits
       In the verbose log you may see errors like:

        nbdkit: vddk[3]: error: [NFC ERROR] NfcFssrvrProcessErrorMsg:
        received NFC error 5 from server: Failed to allocate the
        requested 2097176 bytes

       This seems especially common when there are multiple parallel connections open to the VMware server.

       These  can be caused by resource limits set on the VMware server.  You can increase the limit for the NFC
       service by editing /etc/vmware/hostd/config.xml and adjusting the "<maxMemory>" setting:

        <nfcsvc>
          <path>libnfcsvc.so</path>
          <enabled>true</enabled>
          <maxMemory>50331648</maxMemory>
          <maxStreamMemory>10485760</maxStreamMemory>
        </nfcsvc>

       and restarting the "hostd" service:

        # /etc/init.d/hostd restart

       For more information see https://bugzilla.redhat.com/1614276.

   VDDK: АДРЕСА
       Побудуйте правильну адресу "vpx://" (для vCenter) або "esx://" (для ESXi). Вона виглядає якось так:

        vpx://root@vcenter.example.com/Datacenter/esxi

        esx://root@esxi.example.com

       Щоб перевірити, що у вас правильна адреса, скористайтеся командою virsh(1) для отримання списку гостьових
       систем на сервері vCenter, ось так:

        $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi' list --all
        Введіть пароль root до vcenter.example.com: ***

         Id    Name                           State
        ----------------------------------------------------
         -     Fedora 20                      shut off
         -     Windows 2003                   shut off

       Якщо ви отримуєте повідомлення про помилку «Сертифікат вузла  не  може  бути  уповноважено  за  допомогою
       вказаних  сертифікатів  CA»  або  подібне, ви можете або імпортувати сертифікат вузла vCenter, або обійти
       перевірку підписів додаванням прапорця "?no_verify=1":

        $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' list --all

       Крім того, вам слід спробувати створити дамп метаданих з будь-якої гостьової системи на  вашому  сервері,
       ось так:

        $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi' dumpxml "Windows 2003"
        <domain type='vmware'>
          <name>Windows 2003</name>
          [...]
          <vmware:moref>vm-123</vmware:moref>
        </domain>

       Якщо у метаданих немає "<vmware:moref>", вам слід оновити libvirt.

       Якщо  наведені  вище  команди  не  дають  бажаного  результату,  virt-v2v також не працюватиме.  Перш ніж
       продовжувати, виправте вашу адресу і/або сервера vCenter VMware.

   VDDK: Importing a guest
       Параметр -it vddk визначає VDDK як вхідний канал передавання даних для дисків.

       Щоб імпортувати певну гостьову систему з сервера vCenter або гіпервізору  ESXi,  скористайтеся  командою,
       подібною до наведеної нижче, замінивши адресу, назву гостьової системи та відбиток SSL:

        $ virt-v2v \
            -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' \
            -it vddk \
            -io vddk-libdir=/path/to/vmware-vix-disklib-distrib \
            -io vddk-thumbprint=xx:xx:xx:... \
            "Windows 2003" \
            -o local -os /var/tmp

       Other  options that you might need to add in rare circumstances include -io vddk-config, -io vddk-cookie,
       -io vddk-nfchostport, -io vddk-port, -io vddk-snapshot, and -io vddk-transports, which are all  explained
       in the nbdkit-vddk-plugin(1) documentation.  Do not use these options unless you know what you are doing.

   VDDK: Debugging VDDK failures
       З  бібліотекою  VDDK  можна  працювати у режимі докладних повідомлень, у якому бібліотека (дуже) докладно
       повідомляє про свої дії. Скористайтеся командою «virt-v2v -v -x» у звичний спосіб,  щоб  увімкнути  режим
       докладних повідомлень.

   VDDK: Slow imports and repeated NBD_ClientOpen messages
       If  imports  over  VDDK are slow, and ‘virt-v2v -v -x’ shows many "NBD_ClientOpen" messages, then you are
       hitting an apparent bug in VDDK 6.7 (https://bugzilla.redhat.com/1901489).  Upgrade to at least VDDK 7 to
       resolve the issue.

ВХІДНІ ДАНІ З OVA VMWARE

       Virt-v2v може імпортувати гостьові системи з файлів OVA (Open Virtualization Appliance) VMware.  Програма
       може працювати лише з файлами OVA, які експортовано з vSphere VMware.

   OVA: Create OVA
       Щоб  створити  OVA  у  vSphere,  скористайтеся  параметром  «Export  OVF  Template»  (з контекстного меню
       віртуальної машини або з меню «File»). Можна вибрати варіант «Folder of files» (OVF)  або  «Single  file»
       (OVA),  втім,  працювати  з  OVA,  ймовірно  простіше. Файли OVA є просто стиснутими файлами tar, тому ви
       можете користуватися командами, подібними до "tar tf VM.ova", для перегляду їхнього вмісту.

       Створення OVA за допомогою ovftool

       Ви також можете скористатися пропрієтарною програмою "ovftool" з VMware:

        ovftool --noSSLVerify \
          vi://КОРИСТУВАЧ:ПАРОЛЬ@esxi.example.com/VM \
          VM.ova

       Для встановлення з'єднання із vCenter:

        ovftool  --noSSLVerify \
          vi://КОРИСТУВАЧ:ПАРОЛЬ@vcenter.example.com/НАЗВА-ДАТАЦЕНТРУ/vm/VM \
          VM.ova

       For Active Directory-aware authentication using down-level  logon  names  ("DOMAIN\USER"),  you  have  to
       express the "\" character in the form of its ascii hex-code (%5c):

        vi://ДОМЕН%5cКОРИСТУВАЧ:ПАРОЛЬ@...

   OVA: Importing a guest
       To import an OVA file called VM.ova, do:

        $ virt-v2v -i ova VM.ova -o local -os /var/tmp

       Якщо  ви  експортували  гостьову  систему  як «Folder of files» (теку з файлами), або якщо ви розпакували
       власноруч архів tar OVA, ви можете вказати virt-v2v каталог, у якому містяться файли:

        $ virt-v2v -i ova /шлях/до/файлів -o local -os /var/tmp

ВХІДНІ ДАНІ З СЕРВЕРА VCENTER VMWARE

       Virt-v2v може імпортувати гостьові системи з сервера vCenter VMware.

       vCenter ≥ 5.0 is required.  If you don’t have vCenter, using OVA  or  VMX  is  recommended  instead  (see
       "INPUT FROM VMWARE OVA" and/or "INPUT FROM VMWARE VMX").

       Virt-v2v  використовує  для  доступу до  vCenter libvirt, тому режимом вхідних даних має бути -i libvirt.
       Оскільки цей режим є типовим, немає потреби вказувати його у рядку команди.

   vCenter: URI
       Адреса libvirt сервера vCenter виглядає десь так:

        vpx://користувач@сервер/Datacenter/esxi

       де

       "користувач@"
           є необов'язковим, але рекомендованим записом користувача, для якого слід встановити з'єднання.

           Якщо  ім'я  користувача  містить  символ  зворотної  похилої  риски  (наприклад  "DOMAIN\USER"),  вам
           доведеться  скористатися маскуванням символу у адресі за допомогою послідовності %5c: "DOMAIN%5cUSER"
           (5c — шістнадцятковий код ASCII символу зворотної похилої риски). Ймовірно, інші  символи  пунктуації
           також доведеться маскувати.

       "server"
           це сервер vCenter (не гіпервізор).

       "Datacenter"
           це назва датацентру.

           Якщо у назві міститься пробіл, замініть його екранованим кодом адрес, %20.

       "esxi"
           назва гіпервізору ESXi, на якому запущено гостьову систему.

       Якщо  при  розгортанні  VMware  використано  підтеки,  може  виникнути  потреба у додаванні їх до адреси.
       Приклад:

        vpx://користувач@сервер/Тека/Датацентр/esxi

       Повний опис адрес libvirt наведено тут: http://libvirt.org/drvesx.html

       Типовими помилками, про які повідомляє libvirt / virsh, якщо адреса є помилковою, є такі:

       •   Не вдалося знайти датацентр, вказаний у «...»

       •   Не вдалося знайти обчислювальний ресурс, вказаний у «...»

       •   Шлях «...» не визначає обчислювального ресурсу

       •   Шлях «...» не визначає основну систему

       •   Не вдалося знайти основну систему, вказану у «...»

   vCenter: Test libvirt connection to vCenter
       Скористайтеся командою virsh(1) для отримання списку гостьових систем на сервері vCenter, ось так:

        $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi' list --all
        Введіть пароль root до vcenter.example.com: ***

         Id    Name                           State
        ----------------------------------------------------
         -     Fedora 20                      shut off
         -     Windows 2003                   shut off

       Якщо ви отримуєте повідомлення про помилку «Сертифікат вузла  не  може  бути  уповноважено  за  допомогою
       вказаних  сертифікатів  CA»  або  подібне, ви можете або імпортувати сертифікат вузла vCenter, або обійти
       перевірку підписів додаванням прапорця "?no_verify=1":

        $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' list --all

       Крім того, вам слід спробувати створити дамп метаданих з будь-якої гостьової системи на  вашому  сервері,
       ось так:

        $ virsh -c 'vpx://root@vcenter.example.com/Datacenter/esxi' dumpxml "Windows 2003"
        <domain type='vmware'>
          <name>Windows 2003</name>
          [...]
        </domain>

       Якщо  наведені  вище  команди  не  дають  бажаного  результату,  virt-v2v також не працюватиме.  Перш ніж
       продовжувати, виправте ваші налаштування libvirt і/або сервера vCenter VMware.

   vCenter: Importing a guest
       Щоб імпортувати певну гостьову систему з сервера vCenter, віддайте таку команду:

        $ virt-v2v -ic 'vpx://root@vcenter.example.com/Datacenter/esxi?no_verify=1' \
          "Windows 2003" \
          -o local -os /var/tmp

       де "Windows 2003" — назва гостьової системи (яку має бути вимкнено).

       Note that you may be asked for the vCenter password twice.  This happens once because libvirt  needs  it,
       and  a second time because virt-v2v itself connects directly to the server.  Use -ip filename to supply a
       password via a file.

       У цьому випадку прапорці виведення встановлено так, щоб  перетворена  гостьова  система  записувалася  до
       тимчасового  каталогу,  оскільки  це  лише  приклад,  але ви також можете записати перетворену систему до
       libvirt або будь-якого іншого підтримуваного призначення.

   vCenter: Non-administrator role
       Instead of using the vCenter Administrator role, you  can  create  a  custom  non-administrator  role  to
       perform  the conversion.  You will however need to give it a minimum set of permissions as follows (using
       VMware vCenter 6.5):

       1.  Створіть нетипову роль у vCenter.

       2.  Увімкніть (позначте) такі об'єкти:

            Datastore:
             - Browse datastore
             - Low level file operations

            Sessions:
             - Validate session

            Virtual Machine:
              Interaction:
                - Guest operating system management by VIX API
              Provisioning:
                - Allow disk access
                - Allow read-only disk access

            Cryptographic operations:
             - Decrypt
             - Direct Access

   vCenter: Firewall and proxy settings
       vCenter: Порти

       Якщо між сервером перетворення virt-v2v і сервером vCenter працює брандмауер,  вам  потрібно  відкрити  у
       ньому порт 443 (https) і порт 5480.

       Порт 443 використовується для копіювання образів дисків гостьової системи. Порт 5480 використовується для
       опитування vCenter щодо метаданих гостьової системи.

       These  port  numbers  are  only  the  defaults.   It is possible to reconfigure vCenter to use other port
       numbers.  In that case you would need to specify those ports in the "vpx://"  URI.   See  "vCenter:  URI"
       above.

       Ці  порти  стосуються  лише  перетворень  virt-v2v. Ви можете відкрити інші порти для користування іншими
       можливостями vCenter, наприклад  для  інтернет-інтерфейсу  користувача.  Відповідні  номери  для  vCenter
       наведено у інтернет-документації до VMware.

        ┌────────────┐   порт 443 ┌────────────┐        ┌────────────┐
        │   сервер   │────────────▶ сервер     │────────▶ гіпервізор │
        │перетворення│────────────▶ vCenter    │        │ ESXi       │
        │ virt-v2v   │  порт 5480 │            │        │   ┌─────┐  │
        └────────────┘            └────────────┘        │   │гість│  │
                                                        └───┴─────┴──┘

       (На  наведеній  вище діаграмі стрілки показують напрям, у якому ініціюється з'єднання TCP, не обов'язково
       напрям передавання даних.)

       Сама програма virt-v2v не з'єднується безпосередньо із гіпервізором ESXi, де міститься гостьова  система.
       Втім,  з  гіпервізором  з'єднується  vCenter  і  переспрямовує  дані,  тому,  якщо  між  vCenter  і  його
       гіпервізорами працює брандмауер (мережевий екран), ймовірно, вам слід відкрити у  ньому  додаткові  порти
       (визначити їхні номери вам допоможе документація щодо VMware).

       Під час перетворень з vCenter пов'язані із проксі-сервером змінні середовища ("https_proxy", "all_proxy",
       "no_proxy", "HTTPS_PROXY", "ALL_PROXY" і "NO_PROXY") буде проігноровано.

   vCenter: SSL/TLS certificate problems
       Ви можете побачити таке повідомлення про помилку:

         CURL: Error opening file: SSL: no alternative certificate subject
         name matches target host name

       (Щоб  побачити  це  повідомлення,  вам  слід  увімкнути  діагностичні  повідомлення  за допомогою команди
       «virt-v2v -v -x».)

       Причиною може бути використання IP-адреси замість повноцінної назви у домені  DNS  для  сервера  vCenter,
       тобто використання "vpx://vcenter.example.com/..."  замість, скажімо, "vpx://11.22.33.44/..."

       Ще  однією  причиною  проблем  із  сертифікатами  може  бути  те,  що  FQDN сервера vCenter не відповідає
       IP-адресі, наприклад, якщо сервер отримав нову IP-адресу з  DHCP.  Щоб  усунути  цю  проблему,  вам  слід
       змінити  налаштування  вашого  сервера  DHCP або мережі так, щоб сервер vCenter завжди отримував незмінну
       IP-адресу.  Після   цього,   увійдіть   до   консолі   адміністрування   сервера   vCenter   за   адресою
       "https://vcenter:5480/".   На  вкладці  "Admin"  позначте  пункт  "Certificate  regeneration  enabled"  і
       перезавантажте сервер.

   vCenter: "Out of HTTP sessions: Limited to ..."
       VMware vCenter appears to limit HTTP sessions and in some circumstances virt-v2v may exceed this  number.
       You  can  adjust or remove the limit by editing /etc/vmware-vpx/vpxd.cfg on the vCenter server.  Increase
       the "<maxSessionCount>" field, or set it to 0 which makes it unlimited:

        <soap>
          <maxSessionCount>0</maxSessionCount>
        </soap>

ТАКОЖ ПЕРЕГЛЯНЬТЕ

       virt-v2v(1).

АВТОР

       Richard W.M. Jones

АВТОРСЬКІ ПРАВА

       Copyright (C) 2009-2020 Red Hat Inc.

LICENSE

BUGS

       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.

virt-v2v-1.44.2                                    2021-11-24                           virt-v2v-input-vmware(1)