+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+
+Vagrant.configure(2) do |config|
+ # Define and configure SolrCloud cluster
+ cloudservers = {
+ "node1" => "192.168.2.4",
+ "node2" => "192.168.2.5",
+ "node3" => "192.168.2.6"
+ }
+
+ cloudservers.each do |server_name, server_ip|
+ config.vm.define server_name do |cloudconfig|
+ cloudconfig.vm.box = "debian/contrib-jessie64"
+ cloudconfig.vm.host_name = server_name.to_s
+ cloudconfig.vm.network "private_network", ip: server_ip
+ end
+ end
+
+ # Zookeeper node
+ config.vm.define "zookeeper" do |zookeeper|
+ zookeeper.vm.box = "debian/contrib-jessie64"
+ zookeeper.vm.host_name = "zookeeper"
+ zookeeper.vm.network "private_network", ip: "192.168.2.3"
+ end
+
+ # Load balancer node
+ config.vm.define "loadbalancer" do |loadbalancer|
+ loadbalancer.vm.box = "debian/contrib-jessie64"
+ loadbalancer.vm.host_name = "loadbalancer"
+ loadbalancer.vm.network "private_network", ip: "192.168.2.2"
+ end
+
+ # Disable the default shared folder, share out project folder as /vagrant for all boxes
+ config.vm.synced_folder ".", "/vagrant", disabled: true
+ config.vm.synced_folder "..", "/vagrant"
+
+ # config.vm.provision "ansible" do |ansible|
+ # ansible.playbook = "dev-deploy.yml"
+ # end
+end