A Vagrantfile to generate several machines:
Vagrantfile
# * mode: ruby * VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box_url = "https://vagrantcloud.com/deb/jessie/version/1/provider/virtualbox.box" config.vm.synced_folder "shared", "/shared", owner: "root" config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'" config.vm.provision :shell, :path => "bootstrap.sh" config.vm.synced_folder "salt", "/srv/salt" config.vm.network "public_network" ["node1", "node2"].each do |nodename| puts nodename config.vm.define nodename do |node| node.vm.box = "deb/jessie" node.vm.hostname = nodename node.vm.provider :virtualbox do |vb| vb.name = nodename end end end end
Each machine has a different configuration via salt provision.