VirtualBox ディスクの「スナップショット」を再利用する方法

VirtualBox ディスクの「スナップショット」を再利用する方法

私が作成したいのは、すべて Ubuntu Server 12.04 ゲスト OS ですが、OS 上のソフトウェア スタックが根本的に異なる 5 つの VM の「スイート」です (1 つのサーバーは Subversion、Hudson などがインストールされた「ビルド サーバー」で、もう 1 つのサーバーは JBoss などがインストールされたアプリケーション サーバーです)。

Ubuntu Server のインストールと構成には数時間かかります。可能であれば、これを 1 回だけ実行し (VM に OS の「ベース」バージョンをインストール)、この「ベース」を他の 4 台にコピーしたいと思います。そうすれば、マシンごとに 2 ~ 3 時間を節約でき、各サーバーのアプリケーションのインストールと構成に集中するだけで済みます。

VM を作成すると、次の 3 つのファイルが作成されます。

  • my-vm.vbox- これはVMだと思います
  • my-vm.vbox-prev- これが何なのか分からない
  • my-vm.vdi- これはゲストOS(私の「ベース」)がインストールされている実際のディスクだと思います

残念ながら、すでに 5 つの VM すべてを作成しており、最初の VM に Ubuntu Server をインストールしている最中なので、セットアップは次のようになります。

  • build-srv.vbox、、build-srv.vbox-prevbuild-srv.vdiVDI は初期化されていますが、何も入っていません)
  • app-srv.vbox、、 (app-srv.vbox-prev同じapp-srv.vdi、初期化されているが、何も入っていない)
  • など(全5件)

ビルドサーバー( )にUbuntu Serverをインストール中ですbuild-srv期待して完了したら、すべての構成情報は に格納されますbuild-srv.vdi。理論的には、すべきbuild-srv.vdi他の各サーバーにコピー アンド ペーストして、それぞれの VDI を交換するだけで済みますよね?

VM 設定にアクセスして VDI も何らかの方法で変更する必要があることは確かですが、正しい方向に進んでいるかどうかさえわかりません。

必要なことは可能ですか? 可能であれば、現在使用している OS インスタンスの同じコピーを使用して各 VM を構成するには、何をする必要がありますか? 不可能な場合は、(各 VM に対して同じ 2 時間のインストールを繰り返す以外に) どのようなオプションがありますか? よろしくお願いします!

答え1

各 VDI ファイルには、UUID 形式の識別子が含まれています。Virtualbox
はこれらの UUID をデータベースに記録し、コピーしたばかりの VDI の使用を拒否します (ただし、別のコンピューターではこの UUID については何も記録されないため、問題ありません)。

2 つの方法を知っています:
- VDI をコピーし (ファイル マネージャーまたはコマンド ラインを使用)、使用するとvboxmanage internalcommands sethduuid "path/yourdisk.vdi"、この VDI の新しい UUID が作成されます
- または、Virtualbox メディア マネージャーを使用します (メニュー内)。コピーするディスクを選択し、[コピー] ボタンをクリックします。同じことが簡単に実行されます。

  • my-vm.vbox- これはVMを記述するXMLファイルです。テキストエディタまたはWebブラウザで開くことができます。
  • my-vm.vbox-prev- これはmy-vm.vboxのバックアップです
  • my-vm.vdi- これは仮想ディスクです

編集:このcopy機能はWindowsにのみ存在するようです。私のLinuxボックスにはこの機能がありませんが、Windowsボックスには

答え2

あなたが探しているのはマルチアタッチディスク モード - 初期ディスク イメージの作成と構成後に適用できます。その後、これを複数の VM のコアとして使用し、それぞれが元のイメージに基づいて独自の差分イメージを持つようになります。コピーやクローンは必要ありません。次のドキュメントを参照してください。http://www.virtualbox.org/manual/ch05.html#hdimagewrites

関連情報