@@ -290,14 +290,26 @@ function is_service_enabled() {
290290# FIXME: more documentation about why these are important flags. Also
291291# we should make sure we use the same variable names as the flag names.
292292
293+ if [ " $VIRT_DRIVER " = ' xenserver' ]; then
294+ PUBLIC_INTERFACE_DEFAULT=eth3
295+ # allow build_domU.sh to specify the flat network bridge via kernel args
296+ FLAT_NETWORK_BRIDGE_DEFAULT=$( grep -o ' flat_network_bridge=[^.]*' /proc/cmdline | cut -d= -f 2)
297+ GUEST_INTERFACE_DEFAULT=eth1
298+ else
299+ PUBLIC_INTERFACE_DEFAULT=br100
300+ FLAT_NETWORK_BRIDGE_DEFAULT=br100
301+ GUEST_INTERFACE_DEFAULT=eth0
302+ fi
303+
304+ PUBLIC_INTERFACE=${PUBLIC_INTERFACE:- $PUBLIC_INTERFACE_DEFAULT }
293305PUBLIC_INTERFACE=${PUBLIC_INTERFACE:- br100}
294306FIXED_RANGE=${FIXED_RANGE:- 10.0.0.0/ 24}
295307FIXED_NETWORK_SIZE=${FIXED_NETWORK_SIZE:- 256}
296308FLOATING_RANGE=${FLOATING_RANGE:- 172.24.4.224/ 28}
297309NET_MAN=${NET_MAN:- FlatDHCPManager}
298310EC2_DMZ_HOST=${EC2_DMZ_HOST:- $SERVICE_HOST }
299- FLAT_NETWORK_BRIDGE=${FLAT_NETWORK_BRIDGE:- br100 }
300- VLAN_INTERFACE=${VLAN_INTERFACE:- eth0 }
311+ FLAT_NETWORK_BRIDGE=${FLAT_NETWORK_BRIDGE:- $FLAT_NETWORK_BRIDGE_DEFAULT }
312+ VLAN_INTERFACE=${VLAN_INTERFACE:- $GUEST_INTERFACE_DEFAULT }
301313
302314# Test floating pool and range are used for testing. They are defined
303315# here until the admin APIs can replace nova-manage
@@ -323,7 +335,7 @@ MULTI_HOST=${MULTI_HOST:-False}
323335# devices other than that node, you can set the flat interface to the same
324336# value as ``FLAT_NETWORK_BRIDGE``. This will stop the network hiccup from
325337# occurring.
326- FLAT_INTERFACE=${FLAT_INTERFACE:- eth0 }
338+ FLAT_INTERFACE=${FLAT_INTERFACE:- $GUEST_INTERFACE_DEFAULT }
327339
328340# # FIXME(ja): should/can we check that FLAT_INTERFACE is sane?
329341
@@ -1213,6 +1225,10 @@ add_nova_flag "--osapi_compute_extension=nova.api.openstack.compute.contrib.stan
12131225add_nova_flag " --my_ip=$HOST_IP "
12141226add_nova_flag " --public_interface=$PUBLIC_INTERFACE "
12151227add_nova_flag " --vlan_interface=$VLAN_INTERFACE "
1228+ add_nova_flag " --flat_network_bridge=$FLAT_NETWORK_BRIDGE "
1229+ if [ -n " $FLAT_INTERFACE " ]; then
1230+ add_nova_flag " --flat_interface=$FLAT_INTERFACE "
1231+ fi
12161232add_nova_flag " --sql_connection=$BASE_SQL_CONN /nova"
12171233add_nova_flag " --libvirt_type=$LIBVIRT_TYPE "
12181234add_nova_flag " --instance_name_template=${INSTANCE_NAME_PREFIX} %08x"
@@ -1262,28 +1278,19 @@ done
12621278# ---------
12631279
12641280if [ " $VIRT_DRIVER " = ' xenserver' ]; then
1265- # Get the VM bridge
1266- FLAT_NETWORK_BRIDGE=$( grep -o ' flat_network_bridge=[^.]*' /proc/cmdline | cut -d= -f 2)
12671281 read_password XENAPI_PASSWORD " ENTER A PASSWORD TO USE FOR XEN."
12681282 add_nova_flag " --connection_type=xenapi"
12691283 add_nova_flag " --xenapi_connection_url=http://169.254.0.1"
12701284 add_nova_flag " --xenapi_connection_username=root"
12711285 add_nova_flag " --xenapi_connection_password=$XENAPI_PASSWORD "
12721286 add_nova_flag " --noflat_injected"
1273- add_nova_flag " --flat_interface=eth1"
1274- add_nova_flag " --flat_network_bridge=${FLAT_NETWORK_BRIDGE} "
1275- add_nova_flag " --public_interface=${HOST_IP_IFACE} "
12761287 # Need to avoid crash due to new firewall support
12771288 XEN_FIREWALL_DRIVER=${XEN_FIREWALL_DRIVER:- " nova.virt.firewall.IptablesFirewallDriver" }
12781289 add_nova_flag " --firewall_driver=$XEN_FIREWALL_DRIVER "
12791290else
12801291 add_nova_flag " --connection_type=libvirt"
12811292 LIBVIRT_FIREWALL_DRIVER=${LIBVIRT_FIREWALL_DRIVER:- " nova.virt.libvirt.firewall.IptablesFirewallDriver" }
12821293 add_nova_flag " --firewall_driver=$LIBVIRT_FIREWALL_DRIVER "
1283- add_nova_flag " --flat_network_bridge=$FLAT_NETWORK_BRIDGE "
1284- if [ -n " $FLAT_INTERFACE " ]; then
1285- add_nova_flag " --flat_interface=$FLAT_INTERFACE "
1286- fi
12871294fi
12881295
12891296# Nova Database
0 commit comments