.\" Automatically generated by Podwrapper::Man 1.40.2 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "virt-v2v-output-rhv 1" .TH virt-v2v-output-rhv 1 "2019-02-07" "libguestfs-1.40.2" "Virtualization Support" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "名前" .IX Header "名前" virt\-v2v\-output\-rhv \- Using virt\-v2v to convert guests to oVirt or \s-1RHV\s0 .SH "書式" .IX Header "書式" .Vb 6 \& virt\-v2v [\-i* options] \-o rhv\-upload [\-oc ENGINE_URL] \-os STORAGE \& [\-op PASSWORD] [\-of raw] \& [\-oo rhv\-cafile=FILE] \& [\-oo rhv\-cluster=CLUSTER] \& [\-oo rhv\-direct] \& [\-oo rhv\-verifypeer] \& \& virt\-v2v [\-i* options] \-o rhv \-os [esd:/path|/path] \& \& virt\-v2v [\-i* options] \-o vdsm \& [\-oo vdsm\-image\-uuid=UUID] \& [\-oo vdsm\-vol\-uuid=UUID] \& [\-oo vdsm\-vm\-uuid=UUID] \& [\-oo vdsm\-ovf\-output=DIR] .Ve .SH "説明" .IX Header "説明" This page documents how to use \fBvirt\-v2v\fR\|(1) to convert guests to an oVirt or \s-1RHV\s0 management instance. There are three output modes that you can select, but only \fI\-o rhv-upload\fR should be used normally, the other two are deprecated: .IP "\fB\-o rhv-upload\fR \fB\-os\fR \s-1STORAGE\s0" 4 .IX Item "-o rhv-upload -os STORAGE" Full description: \*(L"\s-1OUTPUT TO RHV\*(R"\s0 .Sp This is the modern method for uploading to oVirt/RHV via the \s-1REST API.\s0 It requires oVirt/RHV ≥ 4.2. .IP "\fB\-o rhv\fR \fB\-os\fR esd:/path" 4 .IX Item "-o rhv -os esd:/path" .PD 0 .IP "\fB\-o rhv\fR \fB\-os\fR /path" 4 .IX Item "-o rhv -os /path" .PD Full description: \*(L"\s-1OUTPUT TO EXPORT STORAGE DOMAIN\*(R"\s0 .Sp This is the old method for uploading to oVirt/RHV via the Export Storage Domain (\s-1ESD\s0). The \s-1ESD\s0 can either be accessed over \s-1NFS\s0 (using the \fI\-os esd:/path\fR form) or if you have already NFS-mounted it somewhere specify the path to the mountpoint as \fI\-os /path\fR. .Sp The Export Storage Domain was deprecated in oVirt 4, and so we expect that this method will stop working at some point in the future. .IP "\fB\-o vdsm\fR" 4 .IX Item "-o vdsm" This is the old method used internally by the RHV-M user interface. It is never intended to be used directly by end users. .SH "OUTPUT TO RHV" .IX Header "OUTPUT TO RHV" This new method to upload guests to oVirt or \s-1RHV\s0 directly via the \s-1REST API\s0 requires oVirt/RHV ≥ 4.2. .PP You need to specify \fI\-o rhv-upload\fR as well as the following extra parameters: .ie n .IP "\fI\-oc\fR ""https://ovirt\-engine.example.com/ovirt\-engine/api""" 4 .el .IP "\fI\-oc\fR \f(CWhttps://ovirt\-engine.example.com/ovirt\-engine/api\fR" 4 .IX Item "-oc https://ovirt-engine.example.com/ovirt-engine/api" The \s-1URL\s0 of the \s-1REST API\s0 which is usually the server name with \&\f(CW\*(C`/ovirt\-engine/api\*(C'\fR appended, but might be different if you installed oVirt Engine on a different path. .Sp You can optionally add a username and port number to the \s-1URL.\s0 If the username is not specified then virt\-v2v defaults to using \f(CW\*(C`admin@internal\*(C'\fR which is the typical superuser account for oVirt instances. .IP "\fI\-of raw\fR" 4 .IX Item "-of raw" Currently you must use \fI\-of raw\fR and you cannot use \fI\-oa preallocated\fR. .Sp These restrictions will be loosened in a future version. .IP "\fI\-op\fR \fIpassword-file\fR" 4 .IX Item "-op password-file" A file containing a password to be used when connecting to the oVirt engine. Note the file should contain the whole password, \fBwithout any trailing newline\fR, and for security the file should have mode \f(CW0600\fR so that others cannot read it. .ie n .IP "\fI\-os\fR ""ovirt\-data""" 4 .el .IP "\fI\-os\fR \f(CWovirt\-data\fR" 4 .IX Item "-os ovirt-data" The storage domain. .IP "\fI\-oo rhv\-cafile=\fR\fIca.pem\fR" 4 .IX Item "-oo rhv-cafile=ca.pem" The \fIca.pem\fR file (Certificate Authority), copied from \&\fI/etc/pki/ovirt\-engine/ca.pem\fR on the oVirt engine. .ie n .IP "\fI\-oo rhv\-cluster=\fR""CLUSTERNAME""" 4 .el .IP "\fI\-oo rhv\-cluster=\fR\f(CWCLUSTERNAME\fR" 4 .IX Item "-oo rhv-cluster=CLUSTERNAME" Set the \s-1RHV\s0 Cluster Name. If not given it uses \f(CW\*(C`Default\*(C'\fR. .IP "\fI\-oo rhv-direct\fR" 4 .IX Item "-oo rhv-direct" If this option is given then virt\-v2v will attempt to directly upload the disk to the oVirt node, otherwise it will proxy the upload through the oVirt engine. Direct upload requires that you have network access to the oVirt nodes. Non-direct upload is slightly slower but should work in all situations. .IP "\fI\-oo rhv-verifypeer\fR" 4 .IX Item "-oo rhv-verifypeer" Verify the oVirt/RHV server’s identity by checking the server‘s certificate against the Certificate Authority. .SH "OUTPUT TO EXPORT STORAGE DOMAIN" .IX Header "OUTPUT TO EXPORT STORAGE DOMAIN" This section only applies to the \fI\-o rhv\fR output mode. If you use virt\-v2v from the RHV-M user interface, then behind the scenes the import is managed by \s-1VDSM\s0 using the \fI\-o vdsm\fR output mode (which end users should not try to use directly). .PP You have to specify \fI\-o rhv\fR and an \fI\-os\fR option that points to the RHV-M Export Storage Domain. You can either specify the \s-1NFS\s0 server and mountpoint, eg. \f(CW\*(C`\-os rhv\-storage:/rhv/export\*(C'\fR, or you can mount that first and point to the directory where it is mounted, eg. \f(CW\*(C`\-os /tmp/mnt\*(C'\fR. Be careful not to point to the Data Storage Domain by accident as that will not work. .PP On successful completion virt\-v2v will have written the new guest to the Export Storage Domain, but it will not yet be ready to run. It must be imported into \s-1RHV\s0 using the \s-1UI\s0 before it can be used. .PP In \s-1RHV\s0 ≥ 2.2 this is done from the Storage tab. Select the export domain the guest was written to. A pane will appear underneath the storage domain list displaying several tabs, one of which is \*(L"\s-1VM\s0 Import\*(R". The converted guest will be listed here. Select the appropriate guest an click \&\*(L"Import\*(R". See the \s-1RHV\s0 documentation for additional details. .PP If you export several guests, then you can import them all at the same time through the \s-1UI.\s0 .SS "Testing \s-1RHV\s0 conversions" .IX Subsection "Testing RHV conversions" If you do not have an oVirt or \s-1RHV\s0 instance to test against, then you can test conversions by creating a directory structure which looks enough like a RHV-M Export Storage Domain to trick virt\-v2v: .PP .Vb 8 \& uuid=\`uuidgen\` \& mkdir /tmp/rhv \& mkdir /tmp/rhv/$uuid \& mkdir /tmp/rhv/$uuid/images \& mkdir /tmp/rhv/$uuid/master \& mkdir /tmp/rhv/$uuid/master/vms \& touch /tmp/rhv/$uuid/dom_md \& virt\-v2v [...] \-o rhv \-os /tmp/rhv .Ve .SS "Debugging RHV-M import failures" .IX Subsection "Debugging RHV-M import failures" When you export to the RHV-M Export Storage Domain, and then import that guest through the RHV-M \s-1UI,\s0 you may encounter an import failure. Diagnosing these failures is infuriatingly difficult as the \s-1UI\s0 generally hides the true reason for the failure. .PP There are several log files of interest: .IP "\fI/var/log/vdsm/import/\fR" 4 .IX Item "/var/log/vdsm/import/" In oVirt ≥ 4.1.0, \s-1VDSM\s0 preserves the virt\-v2v log file for 30 days in this directory. .Sp This directory is found on the host which performed the conversion. The host can be selected in the import dialog, or can be found under the \&\f(CW\*(C`Events\*(C'\fR tab in oVirt administration. .IP "\fI/var/log/vdsm/vdsm.log\fR" 4 .IX Item "/var/log/vdsm/vdsm.log" As above, this file is present on the host which performed the conversion. It contains detailed error messages from low-level operations executed by \&\s-1VDSM,\s0 and is useful if the error was not caused by virt\-v2v, but by \s-1VDSM.\s0 .IP "\fI/var/log/ovirt\-engine/engine.log\fR" 4 .IX Item "/var/log/ovirt-engine/engine.log" This log file is stored on the RHV-M server. It contains more detail for any errors caused by the oVirt \s-1GUI.\s0 .SH "関連項目" .IX Header "関連項目" \&\fBvirt\-v2v\fR\|(1). .SH "著者" .IX Header "著者" Richard W.M. Jones .SH "COPYRIGHT" .IX Header "COPYRIGHT" Copyright (C) 2009\-2019 Red Hat Inc. .SH "LICENSE" .IX Header "LICENSE" .SH "BUGS" .IX Header "BUGS" To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools .PP To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools .PP When reporting a bug, please supply: .IP "\(bu" 4 The version of libguestfs. .IP "\(bu" 4 Where you got libguestfs (eg. which Linux distro, compiled from source, etc) .IP "\(bu" 4 Describe the bug accurately and give a way to reproduce it. .IP "\(bu" 4 Run \fBlibguestfs\-test\-tool\fR\|(1) and paste the \fBcomplete, unedited\fR output into the bug report.