これは大きな質問なので、3つのセクションに分けます。
放浪者
Vagrantは、次の方法で1つ以上の仮想マシンをセットアップするために使用されます。
- 既製の画像(「ボックス」と呼ばれる)をインポートする
- VM固有の設定(IPアドレス、ホスト名、ポート転送、メモリなど)の設定
- PuppetやChefなどのプロビジョニングソフトウェアの実行
ソフトウェアをインストールしたり、VMを読み込んでVirtualBoxの設定を行ったりした後にマシンをセットアップすることはありません。VirtualBoxのスクリプトエンジンと考えてください。
VirtualBoxだけでVagrantを使用した理由は次のとおりです。
1.マルチVMネットワークを簡単にセットアップする
私が読んだVagrantパワーユーザーコンテンツのほとんどは、同時に複数のVMをセットアップすることに関するものです。Vagrantはこれらを設定するための単一の設定ファイルを提供し、1つのコマンドですべてを起動できるようにします。
192.168.1。*サブネット上の静的IPを使用して相互にネットワーク接続するように3つのVMを構成したとします。すでにそのサブネットを使用してIPアドレスを配布している場所にいることに気付き、VMが競合するようになりました。Vagrantでは、Vagrantfileを編集してVMをリロードできますが、VirtualBoxでは、各VMを起動して内部で変更しない場合は、各VMの設定を開く必要があります。
2.ソース管理
テキストファイルに設定を配置することにより、構成をソース管理下に置くことができます。先週いくつかの変更を行い、誤って画像を壊しましたか?変更を元に戻してVMをリロードするだけです。VirtualBoxスナップショットを使用してこれを実現できますが、Vagrantfileよりもはるかに多くのスペースを占有します。
3.さまざまなプラットフォーム
http://vagrantbox.esなどのサイトで多数のボックスを利用できます。これにより、さまざまなOSまたはディストリビューションを試して、同じプロビジョニングを適用して同様の環境をセットアップできます。これは、新しいプラットフォームのテストやサポートの追加に役立ち、VirtualBoxだけを使用すると時間がかかります。
プロビジョニングソフトウェアの使用とイメージスナップショットの使用には、多くの議論があります。追加の説明については、Stephen Nelson-Smithの優れた記事「1日で100台のWebサーバーを構築する方法」を参照してください。