# -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure(2) do |config| # Define and configure SolrCloud cluster cloudservers = { "solr1" => "192.168.2.4", "solr2" => "192.168.2.5" } 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 cloudconfig.vm.provision "ansible" do |ansible| ansible.playbook = "solr.yml" end 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" zookeeper.vm.provision "ansible" do |ansible| ansible.playbook = "zookeeper.yml" end 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" end