Skip to content

Instantly share code, notes, and snippets.

@pantasio
Created April 25, 2019 15:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pantasio/f596bde2e8d423f80daa4e58befef59e to your computer and use it in GitHub Desktop.
Save pantasio/f596bde2e8d423f80daa4e58befef59e to your computer and use it in GitHub Desktop.
vagrant file example1
VAGRANTFILE_API_VERSION = "2"
BASE_LOCAL_IP = "192.168.33"
BASE_START_IP = 101
MASTER_NODE_IP = "#{BASE_LOCAL_IP}.101"
$num_slaves = 2
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provision "shell", run: "once", path: "provisioning/install_java.sh"
config.vm.provision "shell", run: "once", path: "provisioning/install_hadoop.sh"
config.vm.define vm_name = "hadoop-master" do |master|
master.vm.network "private_network", ip: MASTER_NODE_IP
master.vm.network "forwarded_port", guest: 50070, host: 50070
master.vm.provider "virtualbox" do |vb|
vb.name = "hadoop-master"
vb.gui = false
vb.memory = "1024"
vb.cpus = 1
end
master.vm.provision "shell" do |sh|
sh.path = "hadoop/setup_namenode.sh"
sh.args = [BASE_LOCAL_IP, BASE_START_IP, $num_slaves]
end
end
(1..$num_slaves).each do |i|
config.vm.define vm_name = "hadoop-slave-#{i}" do |slave|
slave.vm.network "private_network", ip: "#{BASE_LOCAL_IP}.#{BASE_START_IP + i}"
slave.vm.provider "virtualbox" do |vb|
vb.name = "hadoop-slave-#{i}"
vb.gui = false
vb.memory = "1024"
vb.cpus = 1
end
slave.vm.provision "shell" do |sh|
sh.path = "hadoop/setup_datanode.sh"
sh.args = [MASTER_NODE_IP]
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment