非常に多くの依存関係を必要とするWebアプリケーションがあります。私は現在、ユーザーがこのアプリケーションをサーバーにインストールするのに役立つkvmイメージの使用を評価しています。
ただし、主にネットワークとストレージを使用して、これらのイメージをカスタマイズする可能性について懸念があります。
多くのサイトには複数のネットワークがあり(たとえば、パブリックWebインターフェイス用に1つのネットワーク、データ用に1つのプライベートネットワーク)、仮想ゲストは両方にアクセスする必要がある場合があります。これは、2つ(またはそれ以上)の仮想ネットワークインターフェイスを使用して簡単に処理できるはずです。しかしながら:
現在、ゲストがブリッジを介してネットワークにアクセスしていることを正確に示す必要があります。
そのような問題にどのようなテクニックを採用していますか?一度仮想ゲストを構成し、最小限の構成でどこでも実行する方法はありますか? libvirtはこのプロセスに何らかの支援を提供できますか?
ありがとう!
最初の答えをありがとう。今、私はもう少し正確にすべきだと気づきました。
まず、アプリケーションはもちろん、あらゆる種類の仮想マシン(XEN、VMWareなど)にインストールでき、ユーザーに選択肢を提供します。一部のサイトは事前構成されたKVMイメージを要求し、現在使用しているものほど仮想化技術に慣れていないため、KVMに焦点を当てています。 Xen。
次に、前述のネットワークの問題で直面する可能性のある問題は、職場で直面する問題とほぼ同じです。通常、アーカイブを本番用のクラスターに移動する前に、デスクトップコンピューター上に仮想マシンを作成します。ただし、デスクトップコンピューターとクラスターの環境はまったく異なります。 Linuxのバージョンは異なり、使用するプライベートネットワークも異なります。つまり、仮想KVMマシンをコンピューターからクラスターに移動するプロセスを単純化したいだけだとしましょう。
私は実際、仮想ゲストに環境についてのヒントを与えるための堅牢なソリューションを探していました。たとえば、eth0とeth1のMACアドレスやこれらのインターフェイスのIPなどのlibvirt XMLファイルや、その他の情報(NFSなど)に情報を追加します。ネットワークブリッジを使用しているため、ホスト上のローカルDHCPサーバーが適切な解決策になるとは思わず、問題の一部しか解決できないと思います。したがって、本当にすばらしいのは、ホストからゲストに構成情報を伝達する方法です。たぶん、これはすでに存在するか、何らかの方法で実装できます。
つまり、私の再定式化された質問は次のとおりです:良いものはありますか(堅牢、標準、エレガントなど)ホストからゲストにこれらの情報を伝達する方法(理想的にはlibvirt XMLを直接使用)、これがまだ存在しない場合、またはこのアイデアが完全に愚かである場合、これを実装できますか(次に、これが愚かなアイデアである理由について議論してください)。
再度、感謝します) !
OSとすべての依存関係を含むフルスタックインストールとして、それが適切に機能することがわかっているOSに作成する方がよい場合があります。次に、エンドユーザーに、スタンドアロンでインストールするか、KVM、VMWare、XenなどにVMゲストとしてインストールするかを決定させます。 KVMイメージでこれを克服できる唯一のことは、ハードウェアに依存しないことですが、指摘したように、そこにはまだ潜在的な落とし穴があり、サイトは進んでアプリケーションとそのOSに加えて、KVMホストを維持できます。
編集:再定式化された質問に答えるために、あなたはまだこのようなものをサイトに任せていると思います--VMゲストは、設計上、ネットワーキングの設定方法を制御できませんホスト上で。これを最も簡単または最も効果的な方法で行うためのドキュメントと手順を確実に提供できますが、それはサイトごとに異なる場合があります。何をするにしても、これをVMイメージまたはアプライアンスとして配布する場合、サイトは、それらのホストで動作するように特別に構成されたVMホストを効果的にセットアップおよび維持する必要があります。通信網。
まだ誰もが実際に実装を完了しているわけではありませんが、これはまさにDMTFのOpen VirtualizationFormatが対処することになっていることです。申し訳ありませんが、これ以上の提案はありません。