1

1 つのプロジェクトで 2 つの異なる環境で 2 つの vagrant ボックスを使用したいと考えています。次の方法で2つのボックスを追加しようとしました:

vagrant box add first_box http://files.vagrantup.com/lucid32.box
vagrant box add second_box http://files.vagrantup.com/lucid32.box

次の方法でそれらを切り替えます。

vagrant init first_box
vagrant init second_box

しかし、それらは同じです.1つのボックスでテストファイルを作成すると、別のボックスに表示されます。誰でも助けることができますか?

4

1 に答える 1

6

ここで何かを見逃しているかどうかはわかりませんが、Vagrantfile内の2台のマシンを次のように説明するだけでは不十分です。

Vagrant::Config.run do |config|

  config.vm.box = "lucid32"
  config.vm.box_url = "http://files.vagrantup.com/lucid32.box"

  # define box #1
  config.vm.define "node1" do |cfg|
    cfg.vm.network "10.23.5.11"
    cfg.vm.provision :puppet do |puppet|
      puppet.manifests_path = "manifests"
      puppet.manifest_file = "node1.pp"
    end
  end

  # define box #2
  config.vm.define "node2" do |cfg|
    cfg.vm.network "10.23.5.12"
    cfg.vm.provision :puppet do |puppet|
      puppet.manifests_path = "manifests"
      puppet.manifest_file = "node2.pp"
    end
  end

end

これで、両方のノードを簡単に起動できます。

vagrant up

またはそれらの1つ

vagrant up <nodename>

'halt'コマンドでそれぞれ停止します。あなたはそれらにsshすることができます

vagrant ssh <nodename>

または設定されたIPアドレスの直下。

puppetが必要ない場合は、これらの行を省略してください。それ以外の場合は、manifestsフォルダーでさまざまなプロビジョニングsrciptsを管理できます。

于 2012-01-20T23:03:09.287 に答える