1virt-v2v-output-rhv(1)      Virtualization Support      virt-v2v-output-rhv(1)
2
3
4

NAME

6       virt-v2v-output-rhv - Using virt-v2v to convert guests to oVirt or RHV
7

SYNOPSIS

9        virt-v2v [-i* options] -o rhv-upload [-oc ENGINE_URL] -os STORAGE
10                               [-op PASSWORD] [-of raw]
11                               [-oo rhv-cafile=FILE]
12                               [-oo rhv-cluster=CLUSTER]
13                               [-oo rhv-proxy]
14                               [-oo rhv-disk-uuid=UUID ...]
15                               [-oo rhv-verifypeer]
16
17        virt-v2v [-i* options] -o rhv -os [esd:/path|/path]
18
19        virt-v2v [-i* options] -o vdsm
20                               [-oo vdsm-image-uuid=UUID]
21                               [-oo vdsm-vol-uuid=UUID]
22                               [-oo vdsm-vm-uuid=UUID]
23                               [-oo vdsm-ovf-output=DIR]
24

DESCRIPTION

26       This page documents how to use virt-v2v(1) to convert guests to an
27       oVirt or RHV management instance.  There are three output modes that
28       you can select, but only -o rhv-upload should be used normally, the
29       other two are deprecated:
30
31       -o rhv-upload -os STORAGE
32           Full description: "OUTPUT TO RHV"
33
34           This is the modern method for uploading to oVirt/RHV via the REST
35           API.  It requires oVirt/RHV ≥ 4.2.
36
37       -o rhv -os esd:/path
38       -o rhv -os /path
39           Full description: "OUTPUT TO EXPORT STORAGE DOMAIN"
40
41           This is the old method for uploading to oVirt/RHV via the Export
42           Storage Domain (ESD).  The ESD can either be accessed over NFS
43           (using the -os esd:/path form) or if you have already NFS-mounted
44           it somewhere specify the path to the mountpoint as -os /path.
45
46           The Export Storage Domain was deprecated in oVirt 4, and so we
47           expect that this method will stop working at some point in the
48           future.
49
50       -o vdsm
51           This is the old method used internally by the RHV-M user interface.
52           It is never intended to be used directly by end users.
53

OUTPUT TO RHV

55       This new method to upload guests to oVirt or RHV directly via the REST
56       API requires oVirt/RHV ≥ 4.2.
57
58       You need to specify -o rhv-upload as well as the following extra
59       parameters:
60
61       -oc "https://ovirt-engine.example.com/ovirt-engine/api"
62           The URL of the REST API which is usually the server name with
63           "/ovirt-engine/api" appended, but might be different if you
64           installed oVirt Engine on a different path.
65
66           You can optionally add a username and port number to the URL.  If
67           the username is not specified then virt-v2v defaults to using
68           "admin@internal" which is the typical superuser account for oVirt
69           instances.
70
71       -of raw
72           Currently you must use -of raw and you cannot use -oa preallocated.
73
74           These restrictions will be loosened in a future version.
75
76       -op password-file
77           A file containing a password to be used when connecting to the
78           oVirt engine.  Note the file should contain the whole password,
79           without any trailing newline, and for security the file should have
80           mode 0600 so that others cannot read it.
81
82       -os "ovirt-data"
83           The storage domain.
84
85       -oo rhv-cafile=ca.pem
86           The ca.pem file (Certificate Authority), copied from
87           /etc/pki/ovirt-engine/ca.pem on the oVirt engine.
88
89           If -oo rhv-verifypeer is enabled then this option can be used to
90           control which CA is used to verify the client’s identity.  If this
91           option is not used then the system’s global trust store is used.
92
93       -oo rhv-cluster="CLUSTERNAME"
94           Set the RHV Cluster Name.  If not given it uses "Default".
95
96       -oo rhv-disk-uuid="UUID"
97           This option can used to manually specify UUIDs for the disks when
98           creating the virtual machine.  If not specified, the oVirt engine
99           will generate random UUIDs for the disks.  Please note that:
100
101           •   you must pass as many -oo rhv-disk-uuid=UUID options as the
102               amount of disks in the guest
103
104           •   the specified UUIDs must not conflict with the UUIDs of
105               existing disks
106
107       -oo rhv-proxy
108           Proxy the upload through oVirt Engine.  This is slower than
109           uploading directly to the oVirt node but may be necessary if you do
110           not have direct network access to the nodes.
111
112       -oo rhv-verifypeer
113           Verify the oVirt/RHV server’s identity by checking the server‘s
114           certificate against the Certificate Authority.
115

OUTPUT TO EXPORT STORAGE DOMAIN

117       This section only applies to the -o rhv output mode.  If you use
118       virt-v2v from the RHV-M user interface, then behind the scenes the
119       import is managed by VDSM using the -o vdsm output mode (which end
120       users should not try to use directly).
121
122       You have to specify -o rhv and an -os option that points to the RHV-M
123       Export Storage Domain.  You can either specify the NFS server and
124       mountpoint, eg. "-os rhv-storage:/rhv/export", or you can mount that
125       first and point to the directory where it is mounted, eg.
126       "-os /tmp/mnt".  Be careful not to point to the Data Storage Domain by
127       accident as that will not work.
128
129       On successful completion virt-v2v will have written the new guest to
130       the Export Storage Domain, but it will not yet be ready to run.  It
131       must be imported into RHV using the UI before it can be used.
132
133       In RHV ≥ 2.2 this is done from the Storage tab.  Select the export
134       domain the guest was written to.  A pane will appear underneath the
135       storage domain list displaying several tabs, one of which is "VM
136       Import".  The converted guest will be listed here.  Select the
137       appropriate guest an click "Import".  See the RHV documentation for
138       additional details.
139
140       If you export several guests, then you can import them all at the same
141       time through the UI.
142
143   Testing RHV conversions
144       If you do not have an oVirt or RHV instance to test against, then you
145       can test conversions by creating a directory structure which looks
146       enough like a RHV-M Export Storage Domain to trick virt-v2v:
147
148        uuid=`uuidgen`
149        mkdir /tmp/rhv
150        mkdir /tmp/rhv/$uuid
151        mkdir /tmp/rhv/$uuid/images
152        mkdir /tmp/rhv/$uuid/master
153        mkdir /tmp/rhv/$uuid/master/vms
154        touch /tmp/rhv/$uuid/dom_md
155        virt-v2v [...] -o rhv -os /tmp/rhv
156
157   Debugging RHV-M import failures
158       When you export to the RHV-M Export Storage Domain, and then import
159       that guest through the RHV-M UI, you may encounter an import failure.
160       Diagnosing these failures is infuriatingly difficult as the UI
161       generally hides the true reason for the failure.
162
163       There are several log files of interest:
164
165       /var/log/vdsm/import/
166           In oVirt ≥ 4.1.0, VDSM preserves the virt-v2v log file for 30 days
167           in this directory.
168
169           This directory is found on the host which performed the conversion.
170           The host can be selected in the import dialog, or can be found
171           under the "Events" tab in oVirt administration.
172
173       /var/log/vdsm/vdsm.log
174           As above, this file is present on the host which performed the
175           conversion.  It contains detailed error messages from low-level
176           operations executed by VDSM, and is useful if the error was not
177           caused by virt-v2v, but by VDSM.
178
179       /var/log/ovirt-engine/engine.log
180           This log file is stored on the RHV-M server.  It contains more
181           detail for any errors caused by the oVirt GUI.
182

SEE ALSO

184       virt-v2v(1).
185

AUTHOR

187       Richard W.M. Jones
188
190       Copyright (C) 2009-2020 Red Hat Inc.
191

LICENSE

193       This program is free software; you can redistribute it and/or modify it
194       under the terms of the GNU General Public License as published by the
195       Free Software Foundation; either version 2 of the License, or (at your
196       option) any later version.
197
198       This program is distributed in the hope that it will be useful, but
199       WITHOUT ANY WARRANTY; without even the implied warranty of
200       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
201       General Public License for more details.
202
203       You should have received a copy of the GNU General Public License along
204       with this program; if not, write to the Free Software Foundation, Inc.,
205       51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
206

BUGS

208       To get a list of bugs against libguestfs, use this link:
209       https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
210
211       To report a new bug against libguestfs, use this link:
212       https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
213
214       When reporting a bug, please supply:
215
216       •   The version of libguestfs.
217
218       •   Where you got libguestfs (eg. which Linux distro, compiled from
219           source, etc)
220
221       •   Describe the bug accurately and give a way to reproduce it.
222
223       •   Run libguestfs-test-tool(1) and paste the complete, unedited output
224           into the bug report.
225
226
227
228virt-v2v-2.0.7                    2022-07-06            virt-v2v-output-rhv(1)
Impressum