Adjust region name for images, networks and volumes during deployment
In a multiregion installation of devstack, conflicts occur in the creation of images, networks, or volume types, when the region is not set. This patch adjusts commands to include the region, and also adjusts the region_name in the nova configuration section of neutron.conf to include the region. Change-Id: Ifedff6a124fa49d57cc7b2f35916d8d96f5e5f7a
This commit is contained in:
parent
96ffde28b6
commit
878d7d8f13
20
functions
20
functions
@ -83,7 +83,7 @@ function upload_image {
|
|||||||
# OpenVZ-format images are provided as .tar.gz, but not decompressed prior to loading
|
# OpenVZ-format images are provided as .tar.gz, but not decompressed prior to loading
|
||||||
if [[ "$image_url" =~ 'openvz' ]]; then
|
if [[ "$image_url" =~ 'openvz' ]]; then
|
||||||
image_name="${image_fname%.tar.gz}"
|
image_name="${image_fname%.tar.gz}"
|
||||||
openstack --os-cloud=devstack-admin image create "$image_name" --public --container-format ami --disk-format ami < "${image}"
|
openstack --os-cloud=devstack-admin --os-region-name="$REGION_NAME" image create "$image_name" --public --container-format ami --disk-format ami < "${image}"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -197,7 +197,7 @@ function upload_image {
|
|||||||
vmdk_adapter_type="${props[1]:-$vmdk_adapter_type}"
|
vmdk_adapter_type="${props[1]:-$vmdk_adapter_type}"
|
||||||
vmdk_net_adapter="${props[2]:-$vmdk_net_adapter}"
|
vmdk_net_adapter="${props[2]:-$vmdk_net_adapter}"
|
||||||
|
|
||||||
openstack --os-cloud=devstack-admin image create "$image_name" --public --container-format bare --disk-format vmdk --property vmware_disktype="$vmdk_disktype" --property vmware_adaptertype="$vmdk_adapter_type" --property hw_vif_model="$vmdk_net_adapter" < "${image}"
|
openstack --os-cloud=devstack-admin --os-region-name="$REGION_NAME" image create "$image_name" --public --container-format bare --disk-format vmdk --property vmware_disktype="$vmdk_disktype" --property vmware_adaptertype="$vmdk_adapter_type" --property hw_vif_model="$vmdk_net_adapter" < "${image}"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -214,7 +214,7 @@ function upload_image {
|
|||||||
force_vm_mode="--property vm_mode=xen"
|
force_vm_mode="--property vm_mode=xen"
|
||||||
fi
|
fi
|
||||||
openstack \
|
openstack \
|
||||||
--os-cloud=devstack-admin \
|
--os-cloud=devstack-admin --os-region-name="$REGION_NAME" \
|
||||||
image create \
|
image create \
|
||||||
"$image_name" --public \
|
"$image_name" --public \
|
||||||
--container-format=ovf --disk-format=vhd \
|
--container-format=ovf --disk-format=vhd \
|
||||||
@ -228,7 +228,7 @@ function upload_image {
|
|||||||
if [[ "$image_url" =~ '.xen-raw.tgz' ]]; then
|
if [[ "$image_url" =~ '.xen-raw.tgz' ]]; then
|
||||||
image_name="${image_fname%.xen-raw.tgz}"
|
image_name="${image_fname%.xen-raw.tgz}"
|
||||||
openstack \
|
openstack \
|
||||||
--os-cloud=devstack-admin \
|
--os-cloud=devstack-admin --os-region-name="$REGION_NAME" \
|
||||||
image create \
|
image create \
|
||||||
"$image_name" --public \
|
"$image_name" --public \
|
||||||
--container-format=tgz --disk-format=raw \
|
--container-format=tgz --disk-format=raw \
|
||||||
@ -244,7 +244,7 @@ function upload_image {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
openstack \
|
openstack \
|
||||||
--os-cloud=devstack-admin \
|
--os-cloud=devstack-admin --os-region-name="$REGION_NAME" \
|
||||||
image create \
|
image create \
|
||||||
"$image_name" --public \
|
"$image_name" --public \
|
||||||
--container-format=bare --disk-format=ploop \
|
--container-format=bare --disk-format=ploop \
|
||||||
@ -327,9 +327,9 @@ function upload_image {
|
|||||||
|
|
||||||
if [ "$container_format" = "bare" ]; then
|
if [ "$container_format" = "bare" ]; then
|
||||||
if [ "$unpack" = "zcat" ]; then
|
if [ "$unpack" = "zcat" ]; then
|
||||||
openstack --os-cloud=devstack-admin image create "$image_name" $img_property --public --container-format=$container_format --disk-format $disk_format < <(zcat --force "${image}")
|
openstack --os-cloud=devstack-admin --os-region-name="$REGION_NAME" image create "$image_name" $img_property --public --container-format=$container_format --disk-format $disk_format < <(zcat --force "${image}")
|
||||||
else
|
else
|
||||||
openstack --os-cloud=devstack-admin image create "$image_name" $img_property --public --container-format=$container_format --disk-format $disk_format < "${image}"
|
openstack --os-cloud=devstack-admin --os-region-name="$REGION_NAME" image create "$image_name" $img_property --public --container-format=$container_format --disk-format $disk_format < "${image}"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
# Use glance client to add the kernel the root filesystem.
|
# Use glance client to add the kernel the root filesystem.
|
||||||
@ -337,12 +337,12 @@ function upload_image {
|
|||||||
# kernel for use when uploading the root filesystem.
|
# kernel for use when uploading the root filesystem.
|
||||||
local kernel_id="" ramdisk_id="";
|
local kernel_id="" ramdisk_id="";
|
||||||
if [ -n "$kernel" ]; then
|
if [ -n "$kernel" ]; then
|
||||||
kernel_id=$(openstack --os-cloud=devstack-admin image create "$image_name-kernel" $img_property --public --container-format aki --disk-format aki < "$kernel" | grep ' id ' | get_field 2)
|
kernel_id=$(openstack --os-cloud=devstack-admin --os-region-name="$REGION_NAME" image create "$image_name-kernel" $img_property --public --container-format aki --disk-format aki < "$kernel" | grep ' id ' | get_field 2)
|
||||||
fi
|
fi
|
||||||
if [ -n "$ramdisk" ]; then
|
if [ -n "$ramdisk" ]; then
|
||||||
ramdisk_id=$(openstack --os-cloud=devstack-admin image create "$image_name-ramdisk" $img_property --public --container-format ari --disk-format ari < "$ramdisk" | grep ' id ' | get_field 2)
|
ramdisk_id=$(openstack --os-cloud=devstack-admin --os-region-name="$REGION_NAME" image create "$image_name-ramdisk" $img_property --public --container-format ari --disk-format ari < "$ramdisk" | grep ' id ' | get_field 2)
|
||||||
fi
|
fi
|
||||||
openstack --os-cloud=devstack-admin image create "${image_name%.img}" $img_property --public --container-format ami --disk-format ami ${kernel_id:+--property kernel_id=$kernel_id} ${ramdisk_id:+--property ramdisk_id=$ramdisk_id} < "${image}"
|
openstack --os-cloud=devstack-admin --os-region-name="$REGION_NAME" image create "${image_name%.img}" $img_property --public --container-format ami --disk-format ami ${kernel_id:+--property kernel_id=$kernel_id} ${ramdisk_id:+--property ramdisk_id=$ramdisk_id} < "${image}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -560,7 +560,7 @@ function create_volume_types {
|
|||||||
local be be_name
|
local be be_name
|
||||||
for be in ${CINDER_ENABLED_BACKENDS//,/ }; do
|
for be in ${CINDER_ENABLED_BACKENDS//,/ }; do
|
||||||
be_name=${be##*:}
|
be_name=${be##*:}
|
||||||
openstack volume type create --property volume_backend_name="${be_name}" ${be_name}
|
openstack --os-region-name="$REGION_NAME" volume type create --property volume_backend_name="${be_name}" ${be_name}
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -556,16 +556,16 @@ function create_neutron_initial_network {
|
|||||||
if is_provider_network; then
|
if is_provider_network; then
|
||||||
die_if_not_set $LINENO PHYSICAL_NETWORK "You must specify the PHYSICAL_NETWORK"
|
die_if_not_set $LINENO PHYSICAL_NETWORK "You must specify the PHYSICAL_NETWORK"
|
||||||
die_if_not_set $LINENO PROVIDER_NETWORK_TYPE "You must specify the PROVIDER_NETWORK_TYPE"
|
die_if_not_set $LINENO PROVIDER_NETWORK_TYPE "You must specify the PROVIDER_NETWORK_TYPE"
|
||||||
NET_ID=$(neutron net-create $PHYSICAL_NETWORK --tenant_id $project_id --provider:network_type $PROVIDER_NETWORK_TYPE --provider:physical_network "$PHYSICAL_NETWORK" ${SEGMENTATION_ID:+--provider:segmentation_id $SEGMENTATION_ID} --shared | grep ' id ' | get_field 2)
|
NET_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" net-create $PHYSICAL_NETWORK --tenant_id $project_id --provider:network_type $PROVIDER_NETWORK_TYPE --provider:physical_network "$PHYSICAL_NETWORK" ${SEGMENTATION_ID:+--provider:segmentation_id $SEGMENTATION_ID} --shared | grep ' id ' | get_field 2)
|
||||||
die_if_not_set $LINENO NET_ID "Failure creating NET_ID for $PHYSICAL_NETWORK $project_id"
|
die_if_not_set $LINENO NET_ID "Failure creating NET_ID for $PHYSICAL_NETWORK $project_id"
|
||||||
|
|
||||||
if [[ "$IP_VERSION" =~ 4.* ]]; then
|
if [[ "$IP_VERSION" =~ 4.* ]]; then
|
||||||
SUBNET_ID=$(neutron subnet-create --tenant_id $project_id --ip_version 4 ${ALLOCATION_POOL:+--allocation-pool $ALLOCATION_POOL} --name $PROVIDER_SUBNET_NAME --gateway $NETWORK_GATEWAY $NET_ID $FIXED_RANGE | grep ' id ' | get_field 2)
|
SUBNET_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnet-create --tenant_id $project_id --ip_version 4 ${ALLOCATION_POOL:+--allocation-pool $ALLOCATION_POOL} --name $PROVIDER_SUBNET_NAME --gateway $NETWORK_GATEWAY $NET_ID $FIXED_RANGE | grep ' id ' | get_field 2)
|
||||||
die_if_not_set $LINENO SUBNET_ID "Failure creating SUBNET_ID for $PROVIDER_SUBNET_NAME $project_id"
|
die_if_not_set $LINENO SUBNET_ID "Failure creating SUBNET_ID for $PROVIDER_SUBNET_NAME $project_id"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$IP_VERSION" =~ .*6 ]] && [[ -n "$IPV6_PROVIDER_FIXED_RANGE" ]] && [[ -n "$IPV6_PROVIDER_NETWORK_GATEWAY" ]]; then
|
if [[ "$IP_VERSION" =~ .*6 ]] && [[ -n "$IPV6_PROVIDER_FIXED_RANGE" ]] && [[ -n "$IPV6_PROVIDER_NETWORK_GATEWAY" ]]; then
|
||||||
SUBNET_V6_ID=$(neutron subnet-create --tenant_id $project_id --ip_version 6 --ipv6-address-mode $IPV6_ADDRESS_MODE --gateway $IPV6_PROVIDER_NETWORK_GATEWAY --name $IPV6_PROVIDER_SUBNET_NAME $NET_ID $IPV6_PROVIDER_FIXED_RANGE | grep 'id' | get_field 2)
|
SUBNET_V6_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnet-create --tenant_id $project_id --ip_version 6 --ipv6-address-mode $IPV6_ADDRESS_MODE --gateway $IPV6_PROVIDER_NETWORK_GATEWAY --name $IPV6_PROVIDER_SUBNET_NAME $NET_ID $IPV6_PROVIDER_FIXED_RANGE | grep 'id' | get_field 2)
|
||||||
die_if_not_set $LINENO SUBNET_V6_ID "Failure creating SUBNET_V6_ID for $IPV6_PROVIDER_SUBNET_NAME $project_id"
|
die_if_not_set $LINENO SUBNET_V6_ID "Failure creating SUBNET_V6_ID for $IPV6_PROVIDER_SUBNET_NAME $project_id"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -575,7 +575,7 @@ function create_neutron_initial_network {
|
|||||||
sudo ip link set $PUBLIC_INTERFACE up
|
sudo ip link set $PUBLIC_INTERFACE up
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
NET_ID=$(neutron net-create --tenant-id $project_id "$PRIVATE_NETWORK_NAME" | grep ' id ' | get_field 2)
|
NET_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" net-create --tenant-id $project_id "$PRIVATE_NETWORK_NAME" | grep ' id ' | get_field 2)
|
||||||
die_if_not_set $LINENO NET_ID "Failure creating NET_ID for $PRIVATE_NETWORK_NAME $project_id"
|
die_if_not_set $LINENO NET_ID "Failure creating NET_ID for $PRIVATE_NETWORK_NAME $project_id"
|
||||||
|
|
||||||
if [[ "$IP_VERSION" =~ 4.* ]]; then
|
if [[ "$IP_VERSION" =~ 4.* ]]; then
|
||||||
@ -589,17 +589,17 @@ function create_neutron_initial_network {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AUTO_ALLOCATE_EXT=$(neutron ext-list | grep 'auto-allocated-topology' | get_field 1)
|
AUTO_ALLOCATE_EXT=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" ext-list | grep 'auto-allocated-topology' | get_field 1)
|
||||||
SUBNETPOOL_EXT=$(neutron ext-list | grep 'subnet_allocation' | get_field 1)
|
SUBNETPOOL_EXT=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" ext-list | grep 'subnet_allocation' | get_field 1)
|
||||||
if [[ "$Q_L3_ENABLED" == "True" ]]; then
|
if [[ "$Q_L3_ENABLED" == "True" ]]; then
|
||||||
# Create a router, and add the private subnet as one of its interfaces
|
# Create a router, and add the private subnet as one of its interfaces
|
||||||
if [[ "$Q_L3_ROUTER_PER_TENANT" == "True" ]]; then
|
if [[ "$Q_L3_ROUTER_PER_TENANT" == "True" ]]; then
|
||||||
# create a tenant-owned router.
|
# create a tenant-owned router.
|
||||||
ROUTER_ID=$(neutron router-create --tenant-id $project_id $Q_ROUTER_NAME | grep ' id ' | get_field 2)
|
ROUTER_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" router-create --tenant-id $project_id $Q_ROUTER_NAME | grep ' id ' | get_field 2)
|
||||||
die_if_not_set $LINENO ROUTER_ID "Failure creating ROUTER_ID for $project_id $Q_ROUTER_NAME"
|
die_if_not_set $LINENO ROUTER_ID "Failure creating ROUTER_ID for $project_id $Q_ROUTER_NAME"
|
||||||
else
|
else
|
||||||
# Plugin only supports creating a single router, which should be admin owned.
|
# Plugin only supports creating a single router, which should be admin owned.
|
||||||
ROUTER_ID=$(neutron router-create $Q_ROUTER_NAME | grep ' id ' | get_field 2)
|
ROUTER_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" router-create $Q_ROUTER_NAME | grep ' id ' | get_field 2)
|
||||||
die_if_not_set $LINENO ROUTER_ID "Failure creating ROUTER_ID for $Q_ROUTER_NAME"
|
die_if_not_set $LINENO ROUTER_ID "Failure creating ROUTER_ID for $Q_ROUTER_NAME"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -609,17 +609,17 @@ function create_neutron_initial_network {
|
|||||||
if [[ -n $AUTO_ALLOCATE_EXT && -n $SUBNETPOOL_EXT ]]; then
|
if [[ -n $AUTO_ALLOCATE_EXT && -n $SUBNETPOOL_EXT ]]; then
|
||||||
EXTERNAL_NETWORK_FLAGS="$EXTERNAL_NETWORK_FLAGS --is-default"
|
EXTERNAL_NETWORK_FLAGS="$EXTERNAL_NETWORK_FLAGS --is-default"
|
||||||
if [[ "$IP_VERSION" =~ 4.* ]]; then
|
if [[ "$IP_VERSION" =~ 4.* ]]; then
|
||||||
SUBNETPOOL_V4_ID=$(neutron subnetpool-create $SUBNETPOOL_NAME --default-prefixlen $SUBNETPOOL_SIZE_V4 --pool-prefix $SUBNETPOOL_PREFIX_V4 --shared --is-default=True | grep ' id ' | get_field 2)
|
SUBNETPOOL_V4_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnetpool-create $SUBNETPOOL_NAME --default-prefixlen $SUBNETPOOL_SIZE_V4 --pool-prefix $SUBNETPOOL_PREFIX_V4 --shared --is-default=True | grep ' id ' | get_field 2)
|
||||||
fi
|
fi
|
||||||
if [[ "$IP_VERSION" =~ .*6 ]]; then
|
if [[ "$IP_VERSION" =~ .*6 ]]; then
|
||||||
SUBNETPOOL_V6_ID=$(neutron subnetpool-create $SUBNETPOOL_NAME --default-prefixlen $SUBNETPOOL_SIZE_V6 --pool-prefix $SUBNETPOOL_PREFIX_V6 --shared --is-default=True | grep ' id ' | get_field 2)
|
SUBNETPOOL_V6_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnetpool-create $SUBNETPOOL_NAME --default-prefixlen $SUBNETPOOL_SIZE_V6 --pool-prefix $SUBNETPOOL_PREFIX_V6 --shared --is-default=True | grep ' id ' | get_field 2)
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
# Create an external network, and a subnet. Configure the external network as router gw
|
# Create an external network, and a subnet. Configure the external network as router gw
|
||||||
if [ "$Q_USE_PROVIDERNET_FOR_PUBLIC" = "True" ]; then
|
if [ "$Q_USE_PROVIDERNET_FOR_PUBLIC" = "True" ]; then
|
||||||
EXT_NET_ID=$(neutron net-create "$PUBLIC_NETWORK_NAME" -- $EXTERNAL_NETWORK_FLAGS --provider:network_type=flat --provider:physical_network=${PUBLIC_PHYSICAL_NETWORK} | grep ' id ' | get_field 2)
|
EXT_NET_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" net-create "$PUBLIC_NETWORK_NAME" -- $EXTERNAL_NETWORK_FLAGS --provider:network_type=flat --provider:physical_network=${PUBLIC_PHYSICAL_NETWORK} | grep ' id ' | get_field 2)
|
||||||
else
|
else
|
||||||
EXT_NET_ID=$(neutron net-create "$PUBLIC_NETWORK_NAME" -- $EXTERNAL_NETWORK_FLAGS | grep ' id ' | get_field 2)
|
EXT_NET_ID=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" net-create "$PUBLIC_NETWORK_NAME" -- $EXTERNAL_NETWORK_FLAGS | grep ' id ' | get_field 2)
|
||||||
fi
|
fi
|
||||||
die_if_not_set $LINENO EXT_NET_ID "Failure creating EXT_NET_ID for $PUBLIC_NETWORK_NAME"
|
die_if_not_set $LINENO EXT_NET_ID "Failure creating EXT_NET_ID for $PUBLIC_NETWORK_NAME"
|
||||||
|
|
||||||
@ -974,6 +974,9 @@ function _configure_neutron_common {
|
|||||||
iniset $NEUTRON_CONF DEFAULT bind_host $Q_LISTEN_ADDRESS
|
iniset $NEUTRON_CONF DEFAULT bind_host $Q_LISTEN_ADDRESS
|
||||||
iniset $NEUTRON_CONF oslo_concurrency lock_path $DATA_DIR/neutron/lock
|
iniset $NEUTRON_CONF oslo_concurrency lock_path $DATA_DIR/neutron/lock
|
||||||
|
|
||||||
|
# NOTE(freerunner): Need to adjust Region Name for nova in multiregion installation
|
||||||
|
iniset $NEUTRON_CONF nova region_name $REGION_NAME
|
||||||
|
|
||||||
# If addition config files are set, make sure their path name is set as well
|
# If addition config files are set, make sure their path name is set as well
|
||||||
if [[ ${#Q_PLUGIN_EXTRA_CONF_FILES[@]} > 0 && $Q_PLUGIN_EXTRA_CONF_PATH == '' ]]; then
|
if [[ ${#Q_PLUGIN_EXTRA_CONF_FILES[@]} > 0 && $Q_PLUGIN_EXTRA_CONF_PATH == '' ]]; then
|
||||||
die $LINENO "Neutron additional plugin config not set.. exiting"
|
die $LINENO "Neutron additional plugin config not set.. exiting"
|
||||||
@ -1289,7 +1292,7 @@ function _neutron_create_private_subnet_v4 {
|
|||||||
subnet_params+="--name $PRIVATE_SUBNET_NAME "
|
subnet_params+="--name $PRIVATE_SUBNET_NAME "
|
||||||
subnet_params+="$NET_ID $FIXED_RANGE"
|
subnet_params+="$NET_ID $FIXED_RANGE"
|
||||||
local subnet_id
|
local subnet_id
|
||||||
subnet_id=$(neutron subnet-create $subnet_params | grep ' id ' | get_field 2)
|
subnet_id=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnet-create $subnet_params | grep ' id ' | get_field 2)
|
||||||
die_if_not_set $LINENO subnet_id "Failure creating private IPv4 subnet for $project_id"
|
die_if_not_set $LINENO subnet_id "Failure creating private IPv4 subnet for $project_id"
|
||||||
echo $subnet_id
|
echo $subnet_id
|
||||||
}
|
}
|
||||||
@ -1306,7 +1309,7 @@ function _neutron_create_private_subnet_v6 {
|
|||||||
subnet_params+="--name $IPV6_PRIVATE_SUBNET_NAME "
|
subnet_params+="--name $IPV6_PRIVATE_SUBNET_NAME "
|
||||||
subnet_params+="$NET_ID $FIXED_RANGE_V6 $ipv6_modes"
|
subnet_params+="$NET_ID $FIXED_RANGE_V6 $ipv6_modes"
|
||||||
local ipv6_subnet_id
|
local ipv6_subnet_id
|
||||||
ipv6_subnet_id=$(neutron subnet-create $subnet_params | grep ' id ' | get_field 2)
|
ipv6_subnet_id=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnet-create $subnet_params | grep ' id ' | get_field 2)
|
||||||
die_if_not_set $LINENO ipv6_subnet_id "Failure creating private IPv6 subnet for $project_id"
|
die_if_not_set $LINENO ipv6_subnet_id "Failure creating private IPv6 subnet for $project_id"
|
||||||
echo $ipv6_subnet_id
|
echo $ipv6_subnet_id
|
||||||
}
|
}
|
||||||
@ -1320,7 +1323,7 @@ function _neutron_create_public_subnet_v4 {
|
|||||||
subnet_params+="$EXT_NET_ID $FLOATING_RANGE "
|
subnet_params+="$EXT_NET_ID $FLOATING_RANGE "
|
||||||
subnet_params+="-- --enable_dhcp=False"
|
subnet_params+="-- --enable_dhcp=False"
|
||||||
local id_and_ext_gw_ip
|
local id_and_ext_gw_ip
|
||||||
id_and_ext_gw_ip=$(neutron subnet-create $subnet_params | grep -e 'gateway_ip' -e ' id ')
|
id_and_ext_gw_ip=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnet-create $subnet_params | grep -e 'gateway_ip' -e ' id ')
|
||||||
die_if_not_set $LINENO id_and_ext_gw_ip "Failure creating public IPv4 subnet"
|
die_if_not_set $LINENO id_and_ext_gw_ip "Failure creating public IPv4 subnet"
|
||||||
echo $id_and_ext_gw_ip
|
echo $id_and_ext_gw_ip
|
||||||
}
|
}
|
||||||
@ -1333,14 +1336,14 @@ function _neutron_create_public_subnet_v6 {
|
|||||||
subnet_params+="$EXT_NET_ID $IPV6_PUBLIC_RANGE "
|
subnet_params+="$EXT_NET_ID $IPV6_PUBLIC_RANGE "
|
||||||
subnet_params+="-- --enable_dhcp=False"
|
subnet_params+="-- --enable_dhcp=False"
|
||||||
local ipv6_id_and_ext_gw_ip
|
local ipv6_id_and_ext_gw_ip
|
||||||
ipv6_id_and_ext_gw_ip=$(neutron subnet-create $subnet_params | grep -e 'gateway_ip' -e ' id ')
|
ipv6_id_and_ext_gw_ip=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" subnet-create $subnet_params | grep -e 'gateway_ip' -e ' id ')
|
||||||
die_if_not_set $LINENO ipv6_id_and_ext_gw_ip "Failure creating an IPv6 public subnet"
|
die_if_not_set $LINENO ipv6_id_and_ext_gw_ip "Failure creating an IPv6 public subnet"
|
||||||
echo $ipv6_id_and_ext_gw_ip
|
echo $ipv6_id_and_ext_gw_ip
|
||||||
}
|
}
|
||||||
|
|
||||||
# Configure neutron router for IPv4 public access
|
# Configure neutron router for IPv4 public access
|
||||||
function _neutron_configure_router_v4 {
|
function _neutron_configure_router_v4 {
|
||||||
neutron router-interface-add $ROUTER_ID $SUBNET_ID
|
neutron --os-cloud devstack-admin --os-region "$REGION_NAME" router-interface-add $ROUTER_ID $SUBNET_ID
|
||||||
# Create a public subnet on the external network
|
# Create a public subnet on the external network
|
||||||
local id_and_ext_gw_ip
|
local id_and_ext_gw_ip
|
||||||
id_and_ext_gw_ip=$(_neutron_create_public_subnet_v4 $EXT_NET_ID)
|
id_and_ext_gw_ip=$(_neutron_create_public_subnet_v4 $EXT_NET_ID)
|
||||||
@ -1348,7 +1351,7 @@ function _neutron_configure_router_v4 {
|
|||||||
ext_gw_ip=$(echo $id_and_ext_gw_ip | get_field 2)
|
ext_gw_ip=$(echo $id_and_ext_gw_ip | get_field 2)
|
||||||
PUB_SUBNET_ID=$(echo $id_and_ext_gw_ip | get_field 5)
|
PUB_SUBNET_ID=$(echo $id_and_ext_gw_ip | get_field 5)
|
||||||
# Configure the external network as the default router gateway
|
# Configure the external network as the default router gateway
|
||||||
neutron router-gateway-set $ROUTER_ID $EXT_NET_ID
|
neutron --os-cloud devstack-admin --os-region "$REGION_NAME" router-gateway-set $ROUTER_ID $EXT_NET_ID
|
||||||
|
|
||||||
# This logic is specific to using the l3-agent for layer 3
|
# This logic is specific to using the l3-agent for layer 3
|
||||||
if is_service_enabled q-l3; then
|
if is_service_enabled q-l3; then
|
||||||
@ -1370,7 +1373,7 @@ function _neutron_configure_router_v4 {
|
|||||||
sudo ip addr add $ext_gw_ip/$cidr_len dev $ext_gw_interface
|
sudo ip addr add $ext_gw_ip/$cidr_len dev $ext_gw_interface
|
||||||
sudo ip link set $ext_gw_interface up
|
sudo ip link set $ext_gw_interface up
|
||||||
fi
|
fi
|
||||||
ROUTER_GW_IP=`neutron port-list -c fixed_ips -c device_owner | grep router_gateway | awk -F'ip_address' '{ print $2 }' | cut -f3 -d\" | tr '\n' ' '`
|
ROUTER_GW_IP=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" port-list -c fixed_ips -c device_owner | grep router_gateway | awk -F'ip_address' '{ print $2 }' | cut -f3 -d\" | tr '\n' ' ')
|
||||||
die_if_not_set $LINENO ROUTER_GW_IP "Failure retrieving ROUTER_GW_IP"
|
die_if_not_set $LINENO ROUTER_GW_IP "Failure retrieving ROUTER_GW_IP"
|
||||||
sudo ip route replace $FIXED_RANGE via $ROUTER_GW_IP
|
sudo ip route replace $FIXED_RANGE via $ROUTER_GW_IP
|
||||||
fi
|
fi
|
||||||
@ -1380,7 +1383,7 @@ function _neutron_configure_router_v4 {
|
|||||||
|
|
||||||
# Configure neutron router for IPv6 public access
|
# Configure neutron router for IPv6 public access
|
||||||
function _neutron_configure_router_v6 {
|
function _neutron_configure_router_v6 {
|
||||||
neutron router-interface-add $ROUTER_ID $IPV6_SUBNET_ID
|
neutron --os-cloud devstack-admin --os-region "$REGION_NAME" router-interface-add $ROUTER_ID $IPV6_SUBNET_ID
|
||||||
# Create a public subnet on the external network
|
# Create a public subnet on the external network
|
||||||
local ipv6_id_and_ext_gw_ip
|
local ipv6_id_and_ext_gw_ip
|
||||||
ipv6_id_and_ext_gw_ip=$(_neutron_create_public_subnet_v6 $EXT_NET_ID)
|
ipv6_id_and_ext_gw_ip=$(_neutron_create_public_subnet_v6 $EXT_NET_ID)
|
||||||
@ -1392,7 +1395,7 @@ function _neutron_configure_router_v6 {
|
|||||||
# If the external network has not already been set as the default router
|
# If the external network has not already been set as the default router
|
||||||
# gateway when configuring an IPv4 public subnet, do so now
|
# gateway when configuring an IPv4 public subnet, do so now
|
||||||
if [[ "$IP_VERSION" == "6" ]]; then
|
if [[ "$IP_VERSION" == "6" ]]; then
|
||||||
neutron router-gateway-set $ROUTER_ID $EXT_NET_ID
|
neutron --os-cloud devstack-admin --os-region "$REGION_NAME" router-gateway-set $ROUTER_ID $EXT_NET_ID
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# This logic is specific to using the l3-agent for layer 3
|
# This logic is specific to using the l3-agent for layer 3
|
||||||
@ -1401,7 +1404,7 @@ function _neutron_configure_router_v6 {
|
|||||||
sudo sysctl -w net.ipv6.conf.all.forwarding=1
|
sudo sysctl -w net.ipv6.conf.all.forwarding=1
|
||||||
# Configure and enable public bridge
|
# Configure and enable public bridge
|
||||||
# Override global IPV6_ROUTER_GW_IP with the true value from neutron
|
# Override global IPV6_ROUTER_GW_IP with the true value from neutron
|
||||||
IPV6_ROUTER_GW_IP=`neutron port-list -c fixed_ips | grep $ipv6_pub_subnet_id | awk -F'ip_address' '{ print $2 }' | cut -f3 -d\" | tr '\n' ' '`
|
IPV6_ROUTER_GW_IP=$(neutron --os-cloud devstack-admin --os-region "$REGION_NAME" port-list -c fixed_ips | grep $ipv6_pub_subnet_id | awk -F'ip_address' '{ print $2 }' | cut -f3 -d\" | tr '\n' ' ')
|
||||||
die_if_not_set $LINENO IPV6_ROUTER_GW_IP "Failure retrieving IPV6_ROUTER_GW_IP"
|
die_if_not_set $LINENO IPV6_ROUTER_GW_IP "Failure retrieving IPV6_ROUTER_GW_IP"
|
||||||
|
|
||||||
if is_neutron_ovs_base_plugin; then
|
if is_neutron_ovs_base_plugin; then
|
||||||
@ -1466,7 +1469,7 @@ function teardown_neutron_debug {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function _get_net_id {
|
function _get_net_id {
|
||||||
neutron --os-tenant-name admin --os-username admin --os-password $ADMIN_PASSWORD net-list | grep $1 | awk '{print $2}'
|
neutron --os-cloud devstack-admin --os-region "$REGION_NAME" --os-tenant-name admin --os-username admin --os-password $ADMIN_PASSWORD net-list | grep $1 | awk '{print $2}'
|
||||||
}
|
}
|
||||||
|
|
||||||
function _get_probe_cmd_prefix {
|
function _get_probe_cmd_prefix {
|
||||||
|
24
lib/nova
24
lib/nova
@ -935,21 +935,21 @@ function stop_nova {
|
|||||||
# create_instance_types(): Create default flavors
|
# create_instance_types(): Create default flavors
|
||||||
function create_flavors {
|
function create_flavors {
|
||||||
if is_service_enabled n-api; then
|
if is_service_enabled n-api; then
|
||||||
if ! openstack flavor list | grep -q ds512M; then
|
if ! openstack --os-region-name="$REGION_NAME" flavor list | grep -q ds512M; then
|
||||||
# Note that danms hates these flavors and apologizes for sdague
|
# Note that danms hates these flavors and apologizes for sdague
|
||||||
openstack flavor create --id c1 --ram 256 --disk 0 --vcpus 1 cirros256
|
openstack --os-region-name="$REGION_NAME" flavor create --id c1 --ram 256 --disk 0 --vcpus 1 cirros256
|
||||||
openstack flavor create --id d1 --ram 512 --disk 5 --vcpus 1 ds512M
|
openstack --os-region-name="$REGION_NAME" flavor create --id d1 --ram 512 --disk 5 --vcpus 1 ds512M
|
||||||
openstack flavor create --id d2 --ram 1024 --disk 10 --vcpus 1 ds1G
|
openstack --os-region-name="$REGION_NAME" flavor create --id d2 --ram 1024 --disk 10 --vcpus 1 ds1G
|
||||||
openstack flavor create --id d3 --ram 2048 --disk 10 --vcpus 2 ds2G
|
openstack --os-region-name="$REGION_NAME" flavor create --id d3 --ram 2048 --disk 10 --vcpus 2 ds2G
|
||||||
openstack flavor create --id d4 --ram 4096 --disk 20 --vcpus 4 ds4G
|
openstack --os-region-name="$REGION_NAME" flavor create --id d4 --ram 4096 --disk 20 --vcpus 4 ds4G
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! openstack flavor list | grep -q m1.tiny; then
|
if ! openstack --os-region-name="$REGION_NAME" flavor list | grep -q m1.tiny; then
|
||||||
openstack flavor create --id 1 --ram 512 --disk 1 --vcpus 1 m1.tiny
|
openstack --os-region-name="$REGION_NAME" flavor create --id 1 --ram 512 --disk 1 --vcpus 1 m1.tiny
|
||||||
openstack flavor create --id 2 --ram 2048 --disk 20 --vcpus 1 m1.small
|
openstack --os-region-name="$REGION_NAME" flavor create --id 2 --ram 2048 --disk 20 --vcpus 1 m1.small
|
||||||
openstack flavor create --id 3 --ram 4096 --disk 40 --vcpus 2 m1.medium
|
openstack --os-region-name="$REGION_NAME" flavor create --id 3 --ram 4096 --disk 40 --vcpus 2 m1.medium
|
||||||
openstack flavor create --id 4 --ram 8192 --disk 80 --vcpus 4 m1.large
|
openstack --os-region-name="$REGION_NAME" flavor create --id 4 --ram 8192 --disk 80 --vcpus 4 m1.large
|
||||||
openstack flavor create --id 5 --ram 16384 --disk 160 --vcpus 8 m1.xlarge
|
openstack --os-region-name="$REGION_NAME" flavor create --id 5 --ram 16384 --disk 160 --vcpus 8 m1.xlarge
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user