web-dev-qa-db-ja.com

VMからKVM= ESXiに)をエクスポートする手順は何ですか?

KVM based VM=をESXi 5.1/5.5ホストにエクスポートできるようにしたい。

私の現在の方法は、VMがESXiホストで起動できないことで終わります(VirtualBox 4.3に同じ.ovaをインポートしようとしましたが、ここでVirtualBoxはvmdkのサイズが895バイトであると主張しています。 、ただし実際のvmdkは2GBに近い)。

これらは私が取るステップです:

  1. KVM VMを停止します
  2. qemu-img convert -O vmdk my.qcow2 -o adapter_type = lsilogic、subformat = streamOptimized、compat6 my.vmdk
  3. My.ovfを生成する
  4. printf '\ x03' | dd conv = notrunc of = my.vmdk bs = 1 seek = $((0x4))
  5. tar my.ova my.ovf my.vmdk
  6. ファイルを使用してvSphereで-> OVFテンプレートのデプロイ

デプロイメントは「成功」ですが、マシンは起動できません。

私が使用しています:

  • F23 x86_64
  • qemu-imgバージョン2.4.1
  • ESXi 5.1
  • vSphere 5.1

私が試したVirtualBoxは、Windows 7ホスト上の4.3.10です。

任意のヒントをいただければ幸いです。

ありがとう。

このパッチが適用されるまでステップ4が必要であるようです: https://lists.gnu.org/archive/html/qemu-devel/2015-09/msg04514.html

https://bugzilla.redhat.com/show_bug.cgi?id=1299116 この会話から、2014年に対処されたように思われますか? https://patchwork.ozlabs.org/patch/359685/

My.ovfからの抜粋:仮想ディスクのセットについて説明します

<OperatingSystemSection ovf:id="101" vmw:osType="otherLinux64Guest">
  <!-- TODO make this a configurable string. -->
  <Info>RHEL 6</Info>
</OperatingSystemSection>

<VirtualHardwareSection>
  <Info>1024MB, 1 CPU, 1 disk, 3 NICs - Virtual Machine.</Info>
  <System>
    <vssd:ElementName>Virtual Hardware Family</vssd:ElementName>
    <vssd:InstanceID>0</vssd:InstanceID>
    <vssd:VirtualSystemIdentifier>GLS</vssd:VirtualSystemIdentifier>
    <!-- possible types:
           kvm
           Linux:KVM
           virtualbox-2.2 - VirtualBox 4.3.10.
           vmx-08 - ESXi 5.0
           vmx-07
           vmx-04
      -->
    <vssd:VirtualSystemType>vmx-08</vssd:VirtualSystemType>
  </System>

  <Item>
    <rasd:Address>0</rasd:Address>
    <rasd:Caption>scsiController0</rasd:Caption>
    <rasd:Description>SCSI Controller</rasd:Description>
    <rasd:ElementName>scsiController0</rasd:ElementName>
    <rasd:InstanceID>5</rasd:InstanceID>
    <rasd:ResourceSubType>lsilogic</rasd:ResourceSubType>
    <rasd:ResourceType>6</rasd:ResourceType>
  </Item>

  <Item>
    <rasd:AddressOnParent>0</rasd:AddressOnParent>
    <rasd:Caption>disk1</rasd:Caption>
    <rasd:Description>Disk Image</rasd:Description>
    <rasd:ElementName>disk1</rasd:ElementName>
    <rasd:HostResource>/disk/vmdisk1</rasd:HostResource>
    <rasd:InstanceID>7</rasd:InstanceID>
    <!-- The Parent is the Instance ID of the controller, here the SCSI controller. -->
    <rasd:Parent>5</rasd:Parent>
    <rasd:ResourceType>17</rasd:ResourceType>
    <!-- TODO should write-though be optionally be requested in vmware with vmw:Config -->
  </Item>
2
Henk

これを行う最も簡単な方法は、p2v変換 https://www.vmware.com/products/converter です。その後は、ネットワーキングなどの詳細を調整するだけで完了です。何百ものVMを変換する必要がある場合は、コンバーターを使用するだけで済むでしょう。

2
Alex H