ハイパーバイザーの種類を変換する

ハイパーバイザーの種類を変換する

私の会社では、独自のソリューションを使用して新しい VM の作成を自動化する必要があります。そのためには、製品を標準化された形式 (OVA が唯一の「標準」のようです) で出荷するか、同じマシンからさまざまな異なる仮想化タイプに変換できるようにしたいと考えています。

これまでのところ、これは手動で行われており、クライアントが HyperV VM を希望する場合、社内にある HyperV サーバー上に VMWare を構築したり、VMWare 上の VMWare などを構築したりする必要があります。私たちの目標は、これを自動化することです。

もっとわかりやすく説明すると、計画としては、KVM サーバーを用意し、VM をプロビジョニングし、プロビジョニング後に OVA 形式にエクスポートし、場合によっては、クライアントが選択したハイパーバイザーへの追加のサービスとして提供するというものです。

「qemu-img convert」を使用してディスクを問題なく変換できますが、マシン定義 (XML) を他のハイパーバイザーで必要な他の形式に変換することはできないようです。

これに適したツールが見つかりません。何か提案はありますか?

注: これらがインストールされるハイパーバイザーにはアクセスできないため、OVA/TAR などとしてエクスポートする必要があります。

答え1

残念ながら、OVA は実現できる以上のことを約束しています。せいぜいディスク イメージを配布するための標準フォーマットですが、ディスク イメージを複数のハイパーバイザーでシームレスに起動できることを保証する機能はほとんどありません。ハイパーバイザーごとに異なる仮想ハードウェア セットがエミュレートされるため、ゲスト OS にはハイパーバイザーごとに異なるドライバーをインストールする必要があります。Linux などの一部のオペレーティング システムは、任意のハードウェアで起動でき、見つかったものと一致するドライバーを自動検出する点でかなり優れていますが、それでも簡単に混乱したり、壊れたりすることがあります。たとえば、/etc/fstab"/" がディスク上にあるとリストされている場合/dev/vda1(QEMU の virtio-blk ディスク ドライバー用)、SCSI ディスクが として表示される VMWare で起動すると機能しません/dev/sda1。Windows は、特定のドライバーを各ディスク / NIC などに密接にバインドするため、さまざまなハードウェアに適応するのが非常に困難です。

また、すべてのハイパーバイザーが独自の推奨ディスク イメージ形式を持っているという問題もあります。VMWare は vmdk を推奨し、QEMU は raw または qcow2 を理想的に推奨し、VirtualBox は別の形式を使用するなどです。OVA は、これらの難しい問題のいずれにも対処しません。

このような問題が発生するのは、virt-v2v(virt-v2v.1 は、以下の URL からダウンロードできます。) が存在します。これは、1 つのハイパーバイザーのディスク イメージを取得し、ゲスト OS を別のハイパーバイザーで動作するように再構成し、同時にディスク フォーマットを変更します。

たとえ、すべての OS で動作すると思われるディスク イメージを何らかの方法で作成したとしても、実際に正しく動作することを確認するために、完全な QA テスト サイクルを実行する必要があります。

私見では、ハイパーバイザーごとに専用のディスク イメージを作成する方がはるかに簡単です。

関連情報