7

私は Vagrant を初めて使用し、現在、単一の Vagrantfile から VirtualBox と AWS ボックス (vagrant-aws プラグインを使用) をプロビジョニングしようとしています。

私の Vagrantfile は次のとおりです。

Vagrant.configure("2") do |config|

    config.vm.define :web do |web_config|
        web_config.vm.box = "dummy"
        web_config.vm.box_url = "https://github.com/mitchellh/vagrant-aws/raw/master/dummy.box"

        web_config.vm.provider :aws do |aws|
            aws.access_key_id = "ACCESS KEY"
            aws.secret_access_key = "SECRET KEY"
        end
    end

    config.vm.define :db do |db_config|
        db_config.vm.box = "precise32"
        db_config.vm.box_url = "http://files.vagrantup.com/precise32.box"

        db_config.vm.provider :virtualbox  do |vb|

        end     
    end
end

したがって、基本的には、AWS を Web 用に、ネットワーク ボックスをデータベース用に使用しようとしています。単一の Vagrantfile からこれを行うことは可能ですか? また、以下の vagrant up コマンドは両方の VM を作成およびプロビジョニングしますか?

vagrant up --provider=aws
4

1 に答える 1

5

基本的なプロバイダの使い方から判断する

制限事項

Vagrant は現在、マシンごとに 1 つのプロバイダーを起動するように制限しています。マルチマシン環境の場合、たとえば、VirtualBox でバッキングされた 1 台のマシンと VMware Fusion でバッキングされた別のマシンを立ち上げることができますが、VirtualBox と VMware Fusion の両方で同じマシンをバッキングすることはできません。

これは、Vagrant の将来のバージョンで削除される制限です。

これは確かに可能です!ただし、パブリック ネットワークやプライベート ネットワークなどの機能は、プロバイダーの境界を越えて使用できないことを覚えておく必要があります (通常は、プライベート ネットワークを参照してください)。

質問の 2 番目の部分については、マルチ VM 環境のプロバイダーごとに 1 つずつ、2 つのコマンドを発行する必要があると思いますが、それは単なる推測です。プロバイダーとマルチ VM 環境に関する公式ドキュメントはほとんどありません。

于 2013-04-02T17:15:55.413 に答える