Skip to content

Instantly share code, notes, and snippets.

@mvisonneau
Last active August 29, 2015 14:17
Show Gist options
  • Save mvisonneau/53ca17ae1108d49c1a38 to your computer and use it in GitHub Desktop.
Save mvisonneau/53ca17ae1108d49c1a38 to your computer and use it in GitHub Desktop.
Salt Vagrant File
# Configuration for minion
minion_count = 3
vb_gui = false
minion_memory = 512
minion_cpus = 1
Vagrant.configure(2) do |config|
# Define box settings
config.vm.box = "ubuntu/trusty64"
# Define SSH settings
config.ssh.insert_key = false
config.vm.box_check_update = false
# Master definition
config.vm.define :master do |master|
master.vm.hostname = "salt-master"
master.vm.network :private_network, ip: "172.16.0.100", virtualbox__intnet: "salt"
master.vm.provider :virtualbox do |vb|
vb.memory = 1024
vb.cpus = 1
end
# Setup of /etc/hosts of salt master
(1..minion_count).each do |j|
master.vm.provision :hosts do |provisioner|
provisioner.add_host '172.16.0.100', ['salt-master.internal', 'salt-master']
provisioner.add_host "172.16.0.#{j+100}", ["minion-#{j}.internal", "minion-#{j}"]
end
end
master.vm.provision :salt do |salt|
salt.install_master = true
salt.install_type = "stable"
salt.minion_config = "salt/minion/minion"
end
end
# Minion definition
(1..minion_count).each do |i|
if i == 3
config.vm.box = "chef/centos-6.5"
end
config.vm.define "minion-#{i}" do |minion|
minion.vm.hostname = "minion-#{i}"
minion.vm.network :private_network, ip: "172.16.0.#{i+100}", virtualbox__intnet: "salt"
minion.vm.provider :virtualbox do |vb|
vb.memory = minion_memory
vb.cpus = minion_cpus
end
# /etc/hosts configuration
minion.vm.provision :hosts do |provisioner|
provisioner.add_host '172.16.0.100', ['salt-master.internal', 'salt-master']
provisioner.add_host "172.16.0.#{i+100}", ["minion-#{i}.internal", "minion-#{i}"]
end
minion.vm.provision :salt do |salt|
salt.install_master = false
salt.minion_config = "salt/minion/minion"
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment