diff --git a/Vagrantfile b/Vagrantfile
index ac96263..ffa826e 100644
--- a/Vagrantfile
+++ b/Vagrantfile
@@ -9,6 +9,14 @@
     config.vm.synced_folder "..", "/cord"
   end
 
+  #By default, this variable is set to 2, such that Vagrantfile allows creation
+  #of compute nodes up to 2. If the number of compute nodes to be supported more 
+  #than 2, set the environment variable NUM_COMPUTE_NODES to the desired value
+  #before executing this Vagrantfile.
+  num_compute_nodes = (ENV['NUM_COMPUTE_NODES'] || 2).to_i
+  compute_ip_base = "10.6.1."
+  compute_ips = num_compute_nodes.times.collect { |n| compute_ip_base + "#{n+2}" }
+
   config.vm.define "corddev" do |d|
     d.ssh.forward_agent = true
     d.vm.box = "ubuntu/trusty64"
@@ -91,30 +99,34 @@
     end
   end
 
-  # Libvirt compute node
-  # Not able to merge with virtualbox config for compute nodes above
-  # Issue is that here no box and no private network are specified
-  config.vm.define "compute_node" do |c|
-    c.vm.synced_folder '.', '/vagrant', disabled: true
-    c.vm.communicator = "none"
-    c.vm.hostname = "computenode"
-    c.vm.network "public_network",
-      adapter: 1,
-      auto_config: false,
-      dev: "mgmtbr",
-      mode: "bridge",
-      type: "bridge"
-    c.vm.network "private_network",
-      adapter: 2,
-      ip: "10.6.1.2"
-    c.vm.provider :libvirt do |domain|
-      domain.memory = 8192
-      domain.cpus = 4
-      domain.machine_virtual_size = 100
-      domain.storage :file, :size => '100G', :type => 'qcow2'
-      domain.boot 'network'
-      domain.boot 'hd'
-      domain.nested = true
+  num_compute_nodes.times do |n|
+    # Libvirt compute node
+    # Not able to merge with virtualbox config for compute nodes above
+    # Issue is that here no box and no private network are specified
+    config.vm.define "compute_node-#{n+1}" do |c|
+      compute_ip = compute_ips[n]
+      compute_index = n+1
+      c.vm.synced_folder '.', '/vagrant', disabled: true
+      c.vm.communicator = "none"
+      c.vm.hostname = "computenode-#{compute_index}"
+      c.vm.network "public_network",
+        adapter: 1,
+        auto_config: false,
+        dev: "mgmtbr",
+        mode: "bridge",
+        type: "bridge"
+      c.vm.network "private_network",
+        adapter: 2,
+        ip: "#{compute_ip}"
+      c.vm.provider :libvirt do |domain|
+        domain.memory = 8192
+        domain.cpus = 4
+        domain.machine_virtual_size = 100
+        domain.storage :file, :size => '100G', :type => 'qcow2'
+        domain.boot 'network'
+        domain.boot 'hd'
+        domain.nested = true
+      end
     end
   end
 
diff --git a/scripts/cord-in-a-box.sh b/scripts/cord-in-a-box.sh
index 706662c..5eecc1c 100755
--- a/scripts/cord-in-a-box.sh
+++ b/scripts/cord-in-a-box.sh
@@ -181,19 +181,27 @@
   sudo su maas -c 'cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys'
 }
 
+FIRST_COMPUTE_NODE=true
+
 function add_compute_node() {
+  echo add_compute_node: $1 $2
+    
   cd $CORDDIR/build
-  sudo su $USER -c 'vagrant up compute_node --provider libvirt'
+  sudo su $USER -c "vagrant up $1 --provider libvirt"
 
-  # Change MAC address of bridge to match cord-pod service profile
-  # This change won't survive a reboot
-  BRIDGE=$( route -n | grep 10.6.1.0 | awk '{print $8}' )
-  sudo ifconfig $BRIDGE hw ether 02:42:0a:06:01:01
+  if [ "$FIRST_COMPUTE_NODE" == true ]; then
+    # Change MAC address of bridge to match cord-pod service profile
+    # This change won't survive a reboot
+    BRIDGE=$( route -n | grep 10.6.1.0 | awk '{print $8}' )
+    sudo ifconfig $BRIDGE hw ether 02:42:0a:06:01:01
 
-  # Add gateway IP addresses to $BRIDGE for vsg and exampleservice tests
-  # This change won't survive a reboot
-  sudo ip address add 10.6.1.129 dev $BRIDGE
-  sudo ip address add 10.6.1.193 dev $BRIDGE
+    # Add gateway IP addresses to $BRIDGE for vsg and exampleservice tests
+    # This change won't survive a reboot
+    sudo ip address add 10.6.1.129 dev $BRIDGE
+    sudo ip address add 10.6.1.193 dev $BRIDGE
+
+    FIRST_COMPUTE_NODE=false
+  fi
 
   # Sign into MAAS
   KEY=$(sudo maas-region-admin apikey --username=cord)
@@ -209,7 +217,7 @@
   # Add remote power state
   maas cord node update $NODEID power_type="virsh" \
     power_parameters_power_address="qemu+ssh://maas@localhost/system" \
-    power_parameters_power_id="build_compute_node"
+    power_parameters_power_id="$2"
 
   STATUS=$(sudo /usr/local/bin/get-node-prov-state |jq ".[] | select(.id == \"$NODEID\").status")
   until [ "$STATUS" == "2" ]; do
@@ -247,8 +255,11 @@
 SETUP_ONLY=0
 DIAGNOSTICS=0
 CLEANUP=0
+#By default, cord-in-a-box creates 1 compute node. If more than one compute is
+#needed, use -n option
+NUM_COMPUTE_NODES=1
 
-while getopts "b:cdhst" opt; do
+while getopts "b:cdhn:st" opt; do
   case ${opt} in
     b ) GERRIT_BRANCHES+=("$OPTARG")
       ;;
@@ -263,10 +274,13 @@
       echo "    $0 -c             cleanup from previous test"
       echo "    $0 -d             run diagnostic collector"
       echo "    $0 -h             display this help message"
+      echo "    $0 -n             number of compute nodes to setup. currently max 2 nodes can be supported"
       echo "    $0 -s             run initial setup phase only (don't start building CORD)"
       echo "    $0 -t             do install, bring up cord-pod configuration, run E2E test"
       exit 0
       ;;
+    n ) NUM_COMPUTE_NODES=$OPTARG
+      ;;
     s ) SETUP_ONLY=1
       ;;
     t ) RUN_TEST=1
@@ -298,7 +312,21 @@
 
 install_head_node
 set_up_maas_user
-add_compute_node
+
+#Limiting the maximum number of compute nodes that can be supported to 2. If 
+#more than 2 compute nodes are needed, this script need to be enhanced to set
+#the environment variable NUM_COMPUTE_NODES before invoking the Vagrant commands
+if [[ $NUM_COMPUTE_NODES -gt 2 ]]
+then
+   echo "currently max only two compute nodes can be supported..."
+   NUM_COMPUTE_NODES=2
+fi
+
+for i in `seq 1 $NUM_COMPUTE_NODES`;
+do
+   echo adding the compute node: compute-node-$i
+   add_compute_node compute_node-$i build_compute_node-$i
+done
 
 if [[ $RUN_TEST -eq 1 ]]
 then
