web-dev-qa-db-ja.com

Linux KVMイメージを配布/デプロイするためのグッドプラクティスはありますか?

非常に多くの依存関係を必要とするWebアプリケーションがあります。私は現在、ユーザーがこのアプリケーションをサーバーにインストールするのに役立つkvmイメージの使用を評価しています。

ただし、主にネットワークとストレージを使用して、これらのイメージをカスタマイズする可能性について懸念があります。

潜在的なネットワークの問題:

多くのサイトには複数のネットワークがあり(たとえば、パブリックWebインターフェイス用に1つのネットワーク、データ用に1つのプライベートネットワーク)、仮想ゲストは両方にアクセスする必要がある場合があります。これは、2つ(またはそれ以上)の仮想ネットワークインターフェイスを使用して簡単に処理できるはずです。しかしながら:

  • dHCPを使用するサイトもあれば、静的IPを必要とするサイトもあります
  • 一部のネットワークにはMACアドレスの制限があります
  • コマンドラインでMACアドレスを変更すると、仮想ゲストはおそらく新しいインターフェイスを割り当てます(つまり、eth0/eth1ではなくeth2/eth3)。これは、udevルールのためにDebianゲストで発生します。
  • このようなネットワークの問題が発生すると、通常、ゲストは起動時に一部のネットワークサービス(MTAなど)を読み込もうとすると時間がかかります。

現在、ゲストがブリッジを介してネットワークにアクセスしていることを正確に示す必要があります。

そのような問題にどのようなテクニックを採用していますか?一度仮想ゲストを構成し、最小限の構成でどこでも実行する方法はありますか? libvirtはこのプロセスに何らかの支援を提供できますか?

ありがとう!

編集:

最初の答えをありがとう。今、私はもう少し正確にすべきだと気づきました。

まず、アプリケーションはもちろん、あらゆる種類の仮想マシン(XEN、VMWareなど)にインストールでき、ユーザーに選択肢を提供します。一部のサイトは事前構成されたKVMイメージを要求し、現在使用しているものほど仮想化技術に慣れていないため、KVMに焦点を当てています。 Xen。

次に、前述のネットワークの問題で直面する可能性のある問題は、職場で直面する問題とほぼ同じです。通常、アーカイブを本番用のクラスターに移動する前に、デスクトップコンピューター上に仮想マシンを作成します。ただし、デスクトップコンピューターとクラスターの環境はまったく異なります。 Linuxのバージョンは異なり、使用するプライベートネットワークも異なります。つまり、仮想KVMマシンをコンピューターからクラスターに移動するプロセスを単純化したいだけだとしましょう。

私は実際、仮想ゲストに環境についてのヒントを与えるための堅牢なソリューションを探していました。たとえば、eth0とeth1のMACアドレスやこれらのインターフェイスのIPなどのlibvirt XMLファイルや、その他の情報(NFSなど)に情報を追加します。ネットワークブリッジを使用しているため、ホスト上のローカルDHCPサーバーが適切な解決策になるとは思わず、問題の一部しか解決できないと思います。したがって、本当にすばらしいのは、ホストからゲストに構成情報を伝達する方法です。たぶん、これはすでに存在するか、何らかの方法で実装できます。

つまり、私の再定式化された質問は次のとおりです:良いものはありますか(堅牢、標準、エレガントなど)ホストからゲストにこれらの情報を伝達する方法(理想的にはlibvirt XMLを直接使用)、これがまだ存在しない場合、またはこのアイデアが完全に愚かである場合、これを実装できますか(次に、これが愚かなアイデアである理由について議論してください)。

再度、感謝します) !

3
ixio

OSとすべての依存関係を含むフルスタックインストールとして、それが適切に機能することがわかっているOSに作成する方がよい場合があります。次に、エンドユーザーに、スタンドアロンでインストールするか、KVM、VMWare、XenなどにVMゲストとしてインストールするかを決定させます。 KVMイメージでこれを克服できる唯一のことは、ハードウェアに依存しないことですが、指摘したように、そこにはまだ潜在的な落とし穴があり、サイトは進んでアプリケーションとそのOSに加えて、KVMホストを維持できます。

編集:再定式化された質問に答えるために、あなたはまだこのようなものをサイトに任せていると思います--VMゲストは、設計上、ネットワーキングの設定方法を制御できませんホスト上で。これを最も簡単または最も効果的な方法で行うためのドキュメントと手順を確実に提供できますが、それはサイトごとに異なる場合があります。何をするにしても、これをVMイメージまたはアプライアンスとして配布する場合、サイトは、それらのホストで動作するように特別に構成されたVMホストを効果的にセットアップおよび維持する必要があります。通信網。

1
nedm

まだ誰もが実際に実装を完了しているわけではありませんが、これはまさにDMTFのOpen VirtualizationFormatが対処することになっていることです。申し訳ありませんが、これ以上の提案はありません。

1
Jake Oshins