2017-03-09 70 views
0

我想配置多个具有流浪者的虚拟机。我希望能够快速轻松地增加虚拟机的数量。流浪者:多个相同虚拟机的最佳方法

根据我目前对Vagrant的理解。这里https://www.edureka.co/blog/10-steps-to-create-multiple-vms-using-vagrant/详述下面的方法似乎是最好的办法:

# This defines the version of vagrant 
Vagrant.configure(2) do |config| 
    # Specifying the box we wish to use 
    config.vm.box = "chef/centos-6.5" 
    # Adding Bridged Network Adapter 
    config.vm.network "public_network" 
    # Iterating the loop for three times 
    (1..3).each do |i| 
     # Defining VM properties 
     config.vm.define "edureka_vm#{i}" do |node| 
      # Specifying the provider as VirtualBox and naming the VM's 
      config.vm.provider "virtualbox" do |node| 
       # The VM will be named as edureka_vm{i} 
       node.name = "edureka_vm#{i}" 
      end 
     end 
    end 
end 

所以,如果我想从3提高到4,我只是改变了循环范围。

有没有另一种方法?当我阅读文档时,我希望会有一些版本的vagrant up命令可以启动一个新的独特实例。

+0

这与'vagrant up'一起工作。你为什么认为它不? –

+0

@MattSchuchard我想操作系统正在寻找CLI的选项来创建一个全新的虚拟机。 @Robben_Ford_Fan_boy不幸的是,没有这样的选择,docker有一个很好的'scale'选项来轻松地添加更多的资源,但流浪者没有这种可能性。你需要从Vagrantfile中定义,如果你需要更多,你需要更改配置文件并重新加载你的配置('vagrant reload') –

回答

1

环境变量的流浪者是你最好的选择。在你的Vagrantfile中定义这样的东西。

myVMs = ENV['NODES'] || 1

其中节点是一个环境变量。您可以通过以下方式使用它。

NODES=4 vagrant up

这会在你的Vagrantfile更新myVMs变量和产卵4个VM。你不需要打开你的Vagrantfile并更新它。但是请注意,这将仅用于此会话。如果要保存NODES的值,则可能需要将其添加到Linux中的〜/ .profile或Windows中的环境变量中。

希望这会有所帮助。

+0

好的解决方案 - 我喜欢它 –

相关问题