What I try to do is to create a virtual cluster with 4 nodes in one physical machine. Currently each node is a virtualbox VM. The cluster may be scaled to include many more nodes later.
With the configuration file I have (part of Vagrantfile is shown below), VMs are started sequentially. It takes a lot of time to start the complete cluster, since every VM goes through a boot process as you pointed out. I am wondering if there is any way to speed it up. I figure one possible solution is that VMs are started in parallel.
(1..4).each do |i|
config.vm.define "node-#{i}" do |node|
node.vm.box = "base-node"
node.vm.provider :virtualbox do |v|
v.customize ["modifyvm", :id, "--memory", "640"]
end
end
end
The main reason that I use virtualbox is I know virtualbox better and it works well with vagrant. Going with a container is definitely an option. I will look into this if I cannot make the current setup (based on virtualbox) faster.
Thanks for the help.