My Vagrantfile is as below
VAGRANTFILE_API_VERSION = "2"
# master runs HDFS NameNode, YARN ResourceManager, HBase Master (optional)
# slaves run HDFS DataNode, YARN NodeManager, HBase RegionServers
(optional)
# increase ram as needed, add additional slave nodes if needed.
nodes = [
{ :type => 'master',
:hostname => 'master.local',
:ip => '192.168.48.10',
:box => 'puppetlabs/ubuntu-12.04-64-puppet',
:cpus => '1',
:ram => '2048' },
{ :type => 'slave',
:hostname => 'hadoop1.local',
:ip => '192.168.48.11',
:box => 'puppetlabs/ubuntu-12.04-64-puppet',
:cpus => '1',
:ram => '1024' },
{ :type => 'slave',
:hostname => 'hadoop2.local',
:ip => '192.168.48.12',
:box => 'puppetlabs/ubuntu-12.04-64-puppet',
:cpus => '1',
:ram => '1024' },
{ :type => 'slave',
:hostname => 'hadoop3.local',
:ip => '192.168.48.13',
:box => 'puppetlabs/ubuntu-12.04-64-puppet',
:cpus => '1',
:ram => '1024' },
]
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
nodes.each do |node|
config.vm.define node[:hostname] do |node_config|
node_config.vm.box = node[:box]
node_config.vm.box_version = "1.0.1" # optional, can be
removed to default to latest version
node_config.vm.box_check_update = false # disabling for now
node_config.vm.host_name = node[:hostname]
node_config.vm.network "private_network", ip: node[:ip]
node_config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--cpus", node[:cpus]]
vb.customize ["modifyvm", :id, "--memory", node[:ram]]
# vb.gui = true # uncomment this line
to debug virtual machine startup issues
end
end
# Shell provisioning - bootstrap for puppet
# install - git, ruby and librarian-puppet
config.vm.provision :shell, :path => 'shell/main.sh'
# Puppet provisioning
config.vm.provision "puppet" do |puppet|
# puppet.options = "--verbose --debug" # uncomment to enable
verbose mode
puppet.manifests_path = "puppet/manifests"
puppet.manifest_file = node[:type] + ".pp"
puppet.module_path = "puppet/modules"
end
end
end
Within puppet/manifests I have files master.pp and slave.pp which I want to
be picked up based on node[:type] value, but i notice that each of the 4
nodes is double provisioned, once with master.pp and then with slave.pp.
Not sure why that is the case. Help appreciated.
Regards,
Hemen
--
This mailing list is governed under the HashiCorp Community Guidelines -
https://www.hashicorp.com/community-guidelines.html. Behavior in violation of
those guidelines may result in your removal from this mailing list.
GitHub Issues: https://github.com/mitchellh/vagrant/issues
IRC: #vagrant on Freenode
---
You received this message because you are subscribed to the Google Groups
"Vagrant" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/vagrant-up/f550990d-8c75-4914-b7d3-9127a1a66b33%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.