Remove n-cells, n-net and n-cauth
Remove nova cells v1 support, which also allows/necessitates removing support for nova networks (which was only supported with cells v1) and nova-consoleauth (which was required by cells v1 but is unnecessary otherwise). The Depends-On isn't really necessary, but it's here to make sure this doesn't merge until we _really_ have killed cells v1. I honestly expected this patch would be bigger. Change-Id: I90316208d1af42c1659d3bee386f95e38aaf2c56 Signed-off-by: Stephen Finucane <sfinucan@redhat.com> Depends-On: Ib0e0b708c46e4330e51f8f8fdfbb02d45aaf0f44
This commit is contained in:
parent
984c3ae33b
commit
4b8cba77fe
10
.zuul.yaml
10
.zuul.yaml
@ -408,7 +408,6 @@
|
||||
# Nova services
|
||||
n-api: true
|
||||
n-api-meta: true
|
||||
n-cauth: true
|
||||
n-cond: true
|
||||
n-cpu: true
|
||||
n-novnc: true
|
||||
@ -689,11 +688,8 @@
|
||||
# being experimental any more, so we can keep this list somewhat
|
||||
# pruned.
|
||||
#
|
||||
# * nova-cells-v1: maintained by nova for cells v1 (nova-cells service);
|
||||
# it's in experimental here (and in nova) for testing cells v1
|
||||
# changes to devstack w/o gating on it for all devstack changes.
|
||||
# * nova-next: maintained by nova for unreleased/undefaulted
|
||||
# things like cellsv2 and placement-api
|
||||
# things
|
||||
# * neutron-fullstack-with-uwsgi: maintained by neutron for fullstack test
|
||||
# when neutron-api is served by uwsgi, it's in exprimental for testing.
|
||||
# the next cycle we can remove this job if things turn out to be
|
||||
@ -706,10 +702,6 @@
|
||||
|
||||
experimental:
|
||||
jobs:
|
||||
- nova-cells-v1:
|
||||
irrelevant-files:
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
- nova-next
|
||||
- neutron-fullstack-with-uwsgi
|
||||
- neutron-functional-with-uwsgi
|
||||
|
@ -145,8 +145,8 @@ follows:
|
||||
* Global configuration that may be referenced in ``local.conf``, i.e. ``DEST``, ``DATA_DIR``
|
||||
* Global service configuration like ``ENABLED_SERVICES``
|
||||
* Variables used by multiple services that do not have a clear owner, i.e.
|
||||
``VOLUME_BACKING_FILE_SIZE`` (nova-compute, nova-volumes and cinder) or
|
||||
``PUBLIC_NETWORK_NAME`` (nova-network and neutron)
|
||||
``VOLUME_BACKING_FILE_SIZE`` (nova-compute and cinder) or
|
||||
``PUBLIC_NETWORK_NAME`` (only neutron but formerly nova-network too)
|
||||
* Variables that can not be cleanly declared in a project file due to
|
||||
dependency ordering, i.e. the order of sourcing the project files can
|
||||
not be changed for other reasons but the earlier file needs to dereference a
|
||||
|
@ -663,20 +663,6 @@ Xenserver
|
||||
If you would like to use Xenserver as the hypervisor, please refer to
|
||||
the instructions in ``./tools/xen/README.md``.
|
||||
|
||||
Cells
|
||||
~~~~~
|
||||
|
||||
`Cells <https://wiki.openstack.org/wiki/Blueprint-nova-compute-cells>`__ is
|
||||
an alternative scaling option. To setup a cells environment add the
|
||||
following to your ``localrc`` section:
|
||||
|
||||
::
|
||||
|
||||
enable_service n-cell
|
||||
|
||||
Be aware that there are some features currently missing in cells, one
|
||||
notable one being security groups.
|
||||
|
||||
Cinder
|
||||
~~~~~~
|
||||
|
||||
|
@ -120,11 +120,8 @@ cluster controller's DevStack in ``local.conf``:
|
||||
|
||||
[[local|localrc]]
|
||||
HOST_IP=192.168.42.11
|
||||
FLAT_INTERFACE=eth0
|
||||
FIXED_RANGE=10.4.128.0/20
|
||||
FIXED_NETWORK_SIZE=4096
|
||||
FLOATING_RANGE=192.168.42.128/25
|
||||
MULTI_HOST=1
|
||||
LOGFILE=/opt/stack/logs/stack.sh.log
|
||||
ADMIN_PASSWORD=labstack
|
||||
DATABASE_PASSWORD=supersecret
|
||||
@ -160,11 +157,8 @@ machines, create a ``local.conf`` with:
|
||||
|
||||
[[local|localrc]]
|
||||
HOST_IP=192.168.42.12 # change this per compute node
|
||||
FLAT_INTERFACE=eth0
|
||||
FIXED_RANGE=10.4.128.0/20
|
||||
FIXED_NETWORK_SIZE=4096
|
||||
FLOATING_RANGE=192.168.42.128/25
|
||||
MULTI_HOST=1
|
||||
LOGFILE=/opt/stack/logs/stack.sh.log
|
||||
ADMIN_PASSWORD=labstack
|
||||
DATABASE_PASSWORD=supersecret
|
||||
|
@ -87,11 +87,8 @@ do the following:
|
||||
- Set ``FLOATING_RANGE`` to a range not used on the local network, i.e.
|
||||
192.168.1.224/27. This configures IP addresses ending in 225-254 to
|
||||
be used as floating IPs.
|
||||
- Set ``FIXED_RANGE`` and ``FIXED_NETWORK_SIZE`` to configure the
|
||||
internal address space used by the instances.
|
||||
- Set ``FLAT_INTERFACE`` to the Ethernet interface that connects the
|
||||
host to your local network. This is the interface that should be
|
||||
configured with the static IP address mentioned above.
|
||||
- Set ``FIXED_RANGE`` to configure the internal address space used by the
|
||||
instances.
|
||||
- Set the administrative password. This password is used for the
|
||||
**admin** and **demo** accounts set up as OpenStack users.
|
||||
- Set the MySQL administrative password. The default here is a random
|
||||
@ -108,8 +105,6 @@ do the following:
|
||||
[[local|localrc]]
|
||||
FLOATING_RANGE=192.168.1.224/27
|
||||
FIXED_RANGE=10.11.12.0/24
|
||||
FIXED_NETWORK_SIZE=256
|
||||
FLAT_INTERFACE=eth0
|
||||
ADMIN_PASSWORD=supersecret
|
||||
DATABASE_PASSWORD=iheartdatabases
|
||||
RABBIT_PASSWORD=flopsymopsy
|
||||
|
@ -1,6 +1,6 @@
|
||||
conntrack-tools
|
||||
curl
|
||||
dnsmasq # for nova-network
|
||||
dnsmasq # for q-dhcp
|
||||
dnsmasq-utils # for dhcp_release
|
||||
ebtables
|
||||
gawk
|
||||
|
@ -469,7 +469,7 @@ EOF
|
||||
|
||||
|
||||
# ping check
|
||||
# Uses globals ``ENABLED_SERVICES``, ``TOP_DIR``, ``MULTI_HOST``, ``PRIVATE_NETWORK``
|
||||
# Uses globals ``ENABLED_SERVICES``, ``TOP_DIR``, ``PRIVATE_NETWORK``
|
||||
# ping_check <ip> [boot-timeout] [from_net] [expected]
|
||||
function ping_check {
|
||||
local ip=$1
|
||||
@ -483,12 +483,9 @@ function ping_check {
|
||||
# if we don't specify a from_net we're expecting things to work
|
||||
# fine from our local box.
|
||||
if [[ -n "$from_net" ]]; then
|
||||
# TODO(stephenfin): Is there any way neutron could be disabled now?
|
||||
if is_service_enabled neutron; then
|
||||
ping_cmd="$TOP_DIR/tools/ping_neutron.sh $from_net"
|
||||
elif [[ "$MULTI_HOST" = "True" && "$from_net" = "$PRIVATE_NETWORK_NAME" ]]; then
|
||||
# there is no way to address the multihost / private case, bail here for compatibility.
|
||||
# TODO: remove this cruft and redo code to handle this at the caller level.
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -1929,10 +1929,6 @@ function enable_service {
|
||||
# For backward compatibility if we have **swift** in ENABLED_SERVICES all the
|
||||
# **s-** services will be enabled. This will be deprecated in the future.
|
||||
#
|
||||
# Cells within nova is enabled if **n-cell** is in ``ENABLED_SERVICES``.
|
||||
# We also need to make sure to treat **n-cell-region** and **n-cell-child**
|
||||
# as enabled in this case.
|
||||
#
|
||||
# Uses global ``ENABLED_SERVICES``
|
||||
# is_service_enabled service [service ...]
|
||||
function is_service_enabled {
|
||||
@ -1955,7 +1951,6 @@ function is_service_enabled {
|
||||
# TODO(dtroyer): Remove these legacy special-cases after the is_XXX_enabled()
|
||||
# are implemented
|
||||
|
||||
[[ ${service} == n-cell-* && ,${ENABLED_SERVICES} =~ ,"n-cell" ]] && enabled=0
|
||||
[[ ${service} == n-cpu-* && ,${ENABLED_SERVICES} =~ ,"n-cpu" ]] && enabled=0
|
||||
[[ ${service} == "nova" && ,${ENABLED_SERVICES} =~ ,"n-" ]] && enabled=0
|
||||
[[ ${service} == "glance" && ,${ENABLED_SERVICES} =~ ,"g-" ]] && enabled=0
|
||||
|
@ -50,8 +50,6 @@
|
||||
# See "Neutron Network Configuration" below for additional variables
|
||||
# that must be set in localrc for connectivity across hosts with
|
||||
# Neutron.
|
||||
#
|
||||
# With Neutron networking the NETWORK_MANAGER variable is ignored.
|
||||
|
||||
# Settings
|
||||
# --------
|
||||
|
168
lib/nova
168
lib/nova
@ -50,11 +50,9 @@ NOVA_AUTH_CACHE_DIR=${NOVA_AUTH_CACHE_DIR:-/var/cache/nova}
|
||||
|
||||
NOVA_CONF_DIR=/etc/nova
|
||||
NOVA_CONF=$NOVA_CONF_DIR/nova.conf
|
||||
NOVA_CELLS_CONF=$NOVA_CONF_DIR/nova-cells.conf
|
||||
NOVA_COND_CONF=$NOVA_CONF_DIR/nova.conf
|
||||
NOVA_CPU_CONF=$NOVA_CONF_DIR/nova-cpu.conf
|
||||
NOVA_FAKE_CONF=$NOVA_CONF_DIR/nova-fake.conf
|
||||
NOVA_CELLS_DB=${NOVA_CELLS_DB:-nova_cell}
|
||||
NOVA_API_DB=${NOVA_API_DB:-nova_api}
|
||||
NOVA_UWSGI=$NOVA_BIN_DIR/nova-api-wsgi
|
||||
NOVA_METADATA_UWSGI=$NOVA_BIN_DIR/nova-metadata-wsgi
|
||||
@ -111,7 +109,6 @@ QEMU_CONF=/etc/libvirt/qemu.conf
|
||||
|
||||
# Set default defaults here as some hypervisor drivers override these
|
||||
PUBLIC_INTERFACE_DEFAULT=br100
|
||||
FLAT_NETWORK_BRIDGE_DEFAULT=br100
|
||||
# Set ``GUEST_INTERFACE_DEFAULT`` to some interface on the box so that
|
||||
# the default isn't completely crazy. This will match ``eth*``, ``em*``, or
|
||||
# the new ``p*`` interfaces, then basically picks the first
|
||||
@ -137,44 +134,6 @@ if is_service_enabled nova && [[ -r $NOVA_PLUGINS/hypervisor-$VIRT_DRIVER ]]; th
|
||||
source $NOVA_PLUGINS/hypervisor-$VIRT_DRIVER
|
||||
fi
|
||||
|
||||
|
||||
# Nova Network Configuration
|
||||
# --------------------------
|
||||
|
||||
NETWORK_MANAGER=${NETWORK_MANAGER:-${NET_MAN:-FlatDHCPManager}}
|
||||
|
||||
VLAN_INTERFACE=${VLAN_INTERFACE:-$GUEST_INTERFACE_DEFAULT}
|
||||
FLAT_NETWORK_BRIDGE=${FLAT_NETWORK_BRIDGE:-$FLAT_NETWORK_BRIDGE_DEFAULT}
|
||||
|
||||
# If you are using the FlatDHCP network mode on multiple hosts, set the
|
||||
# ``FLAT_INTERFACE`` variable but make sure that the interface doesn't already
|
||||
# have an IP or you risk breaking things.
|
||||
#
|
||||
# **DHCP Warning**: If your flat interface device uses DHCP, there will be a
|
||||
# hiccup while the network is moved from the flat interface to the flat network
|
||||
# bridge. This will happen when you launch your first instance. Upon launch
|
||||
# you will lose all connectivity to the node, and the VM launch will probably
|
||||
# fail.
|
||||
#
|
||||
# If you are running on a single node and don't need to access the VMs from
|
||||
# devices other than that node, you can set ``FLAT_INTERFACE=``
|
||||
# This will stop nova from bridging any interfaces into ``FLAT_NETWORK_BRIDGE``.
|
||||
FLAT_INTERFACE=${FLAT_INTERFACE:-$GUEST_INTERFACE_DEFAULT}
|
||||
|
||||
# ``MULTI_HOST`` is a mode where each compute node runs its own network node. This
|
||||
# allows network operations and routing for a VM to occur on the server that is
|
||||
# running the VM - removing a SPOF and bandwidth bottleneck.
|
||||
MULTI_HOST=$(trueorfalse False MULTI_HOST)
|
||||
|
||||
# ``NOVA_ALLOW_MOVE_TO_SAME_HOST`` can be set to False in multi node DevStack,
|
||||
# where there are at least two nova-computes.
|
||||
NOVA_ALLOW_MOVE_TO_SAME_HOST=$(trueorfalse True NOVA_ALLOW_MOVE_TO_SAME_HOST)
|
||||
|
||||
# Test floating pool and range are used for testing. They are defined
|
||||
# here until the admin APIs can replace nova-manage
|
||||
TEST_FLOATING_POOL=${TEST_FLOATING_POOL:-test}
|
||||
TEST_FLOATING_RANGE=${TEST_FLOATING_RANGE:-192.168.253.0/29}
|
||||
|
||||
# Other Nova configurations
|
||||
# ----------------------------
|
||||
|
||||
@ -183,6 +142,10 @@ TEST_FLOATING_RANGE=${TEST_FLOATING_RANGE:-192.168.253.0/29}
|
||||
# and Glance.
|
||||
NOVA_USE_SERVICE_TOKEN=$(trueorfalse False NOVA_USE_SERVICE_TOKEN)
|
||||
|
||||
# ``NOVA_ALLOW_MOVE_TO_SAME_HOST`` can be set to False in multi node DevStack,
|
||||
# where there are at least two nova-computes.
|
||||
NOVA_ALLOW_MOVE_TO_SAME_HOST=$(trueorfalse True NOVA_ALLOW_MOVE_TO_SAME_HOST)
|
||||
|
||||
# Enable debugging levels for iscsid service (goes from 0-8)
|
||||
ISCSID_DEBUG=$(trueorfalse False ISCSID_DEBUG)
|
||||
ISCSID_DEBUG_LEVEL=${ISCSID_DEBUG_LEVEL:-4}
|
||||
@ -198,13 +161,6 @@ function is_nova_enabled {
|
||||
return 1
|
||||
}
|
||||
|
||||
# Test if any Nova Cell services are enabled
|
||||
# is_nova_enabled
|
||||
function is_n-cell_enabled {
|
||||
[[ ,${ENABLED_SERVICES} =~ ,"n-cell" ]] && return 0
|
||||
return 1
|
||||
}
|
||||
|
||||
# is_nova_console_proxy_compute_tls_enabled() - Test if the Nova Console Proxy
|
||||
# service has TLS enabled
|
||||
function is_nova_console_proxy_compute_tls_enabled {
|
||||
@ -501,10 +457,6 @@ function create_nova_conf {
|
||||
if [ -n "$NOVA_INSTANCES_PATH" ]; then
|
||||
iniset $NOVA_CONF DEFAULT instances_path "$NOVA_INSTANCES_PATH"
|
||||
fi
|
||||
if [ "$MULTI_HOST" != "False" ]; then
|
||||
iniset $NOVA_CONF DEFAULT multi_host "True"
|
||||
iniset $NOVA_CONF DEFAULT send_arp_for_ha "True"
|
||||
fi
|
||||
if [ "$SYSLOG" != "False" ]; then
|
||||
iniset $NOVA_CONF DEFAULT use_syslog "True"
|
||||
fi
|
||||
@ -551,21 +503,6 @@ function create_nova_conf {
|
||||
|
||||
iniset $NOVA_CONF DEFAULT graceful_shutdown_timeout "$SERVICE_GRACEFUL_SHUTDOWN_TIMEOUT"
|
||||
|
||||
# Setup logging for nova-dhcpbridge command line
|
||||
sudo cp "$NOVA_CONF" "$NOVA_CONF_DIR/nova-dhcpbridge.conf"
|
||||
|
||||
if is_service_enabled n-net; then
|
||||
local service="n-dhcp"
|
||||
local logfile="${service}.log.${CURRENT_LOG_TIME}"
|
||||
local real_logfile="${LOGDIR}/${logfile}"
|
||||
if [[ -n ${LOGDIR} ]]; then
|
||||
bash -c "cd '$LOGDIR' && ln -sf '$logfile' ${service}.log"
|
||||
iniset "$NOVA_CONF_DIR/nova-dhcpbridge.conf" DEFAULT log_file "$real_logfile"
|
||||
fi
|
||||
|
||||
iniset $NOVA_CONF DEFAULT dhcpbridge_flagfile "$NOVA_CONF_DIR/nova-dhcpbridge.conf"
|
||||
fi
|
||||
|
||||
if [ "$NOVA_USE_SERVICE_TOKEN" == "True" ]; then
|
||||
init_nova_service_user_conf
|
||||
fi
|
||||
@ -748,42 +685,6 @@ function conductor_conf {
|
||||
echo "${NOVA_CONF_DIR}/nova_cell${cell}.conf"
|
||||
}
|
||||
|
||||
function init_nova_cells {
|
||||
if is_service_enabled n-cell; then
|
||||
cp $NOVA_CONF $NOVA_CELLS_CONF
|
||||
iniset $NOVA_CELLS_CONF database connection `database_connection_url $NOVA_CELLS_DB`
|
||||
rpc_backend_add_vhost child_cell
|
||||
iniset_rpc_backend nova $NOVA_CELLS_CONF DEFAULT child_cell
|
||||
iniset $NOVA_CELLS_CONF DEFAULT dhcpbridge_flagfile $NOVA_CELLS_CONF
|
||||
iniset $NOVA_CELLS_CONF cells enable True
|
||||
iniset $NOVA_CELLS_CONF cells cell_type compute
|
||||
iniset $NOVA_CELLS_CONF cells name child
|
||||
|
||||
iniset $NOVA_CONF cells enable True
|
||||
iniset $NOVA_CONF cells cell_type api
|
||||
iniset $NOVA_CONF cells name region
|
||||
|
||||
if is_service_enabled n-api-meta; then
|
||||
NOVA_ENABLED_APIS=$(echo $NOVA_ENABLED_APIS | sed "s/,metadata//")
|
||||
iniset $NOVA_CONF DEFAULT enabled_apis $NOVA_ENABLED_APIS
|
||||
iniset $NOVA_CELLS_CONF DEFAULT enabled_apis metadata
|
||||
fi
|
||||
|
||||
# Cells v1 conductor should be the nova-cells.conf
|
||||
NOVA_COND_CONF=$NOVA_CELLS_CONF
|
||||
|
||||
time_start "dbsync"
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NOVA_CELLS_CONF db sync
|
||||
time_stop "dbsync"
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NOVA_CELLS_CONF cell create --name=region --cell_type=parent --username=$RABBIT_USERID --hostname=$RABBIT_HOST --port=5672 --password=$RABBIT_PASSWORD --virtual_host=/ --woffset=0 --wscale=1
|
||||
$NOVA_BIN_DIR/nova-manage cell create --name=child --cell_type=child --username=$RABBIT_USERID --hostname=$RABBIT_HOST --port=5672 --password=$RABBIT_PASSWORD --virtual_host=child_cell --woffset=0 --wscale=1
|
||||
|
||||
# Creates the single cells v2 cell for the child cell (v1) nova db.
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NOVA_CELLS_CONF cell_v2 create_cell \
|
||||
--transport-url $(get_transport_url child_cell) --name 'cell1'
|
||||
fi
|
||||
}
|
||||
|
||||
# create_nova_cache_dir() - Part of the init_nova() process
|
||||
function create_nova_cache_dir {
|
||||
# Create cache dir
|
||||
@ -791,18 +692,6 @@ function create_nova_cache_dir {
|
||||
rm -f $NOVA_AUTH_CACHE_DIR/*
|
||||
}
|
||||
|
||||
function create_nova_conf_nova_network {
|
||||
local public_interface=${PUBLIC_INTERFACE:-$PUBLIC_INTERFACE_DEFAULT}
|
||||
iniset $NOVA_CONF DEFAULT network_manager "nova.network.manager.$NETWORK_MANAGER"
|
||||
iniset $NOVA_CONF DEFAULT public_interface "$public_interface"
|
||||
iniset $NOVA_CONF DEFAULT vlan_interface "$VLAN_INTERFACE"
|
||||
iniset $NOVA_CONF DEFAULT flat_network_bridge "$FLAT_NETWORK_BRIDGE"
|
||||
if [ -n "$FLAT_INTERFACE" ]; then
|
||||
iniset $NOVA_CONF DEFAULT flat_interface "$FLAT_INTERFACE"
|
||||
fi
|
||||
iniset $NOVA_CONF DEFAULT use_neutron False
|
||||
}
|
||||
|
||||
# create_nova_keys_dir() - Part of the init_nova() process
|
||||
function create_nova_keys_dir {
|
||||
# Create keys dir
|
||||
@ -834,10 +723,6 @@ function init_nova {
|
||||
# Migrate nova and nova_cell0 databases.
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NOVA_CONF db sync
|
||||
|
||||
if is_service_enabled n-cell; then
|
||||
recreate_database $NOVA_CELLS_DB
|
||||
fi
|
||||
|
||||
# Run online migrations on the new databases
|
||||
# Needed for flavor conversion
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NOVA_CONF db online_data_migrations
|
||||
@ -942,15 +827,6 @@ function start_nova_api {
|
||||
export PATH=$old_path
|
||||
}
|
||||
|
||||
# Detect and setup conditions under which singleconductor setup is
|
||||
# needed. Notably cellsv1.
|
||||
function _set_singleconductor {
|
||||
# NOTE(danms): Don't setup conductor fleet for cellsv1
|
||||
if is_service_enabled n-cell; then
|
||||
CELLSV2_SETUP="singleconductor"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
# start_nova_compute() - Start the compute process
|
||||
function start_nova_compute {
|
||||
@ -958,11 +834,7 @@ function start_nova_compute {
|
||||
local old_path=$PATH
|
||||
export PATH=$NOVA_BIN_DIR:$PATH
|
||||
|
||||
if is_service_enabled n-cell; then
|
||||
local compute_cell_conf=$NOVA_CELLS_CONF
|
||||
else
|
||||
local compute_cell_conf=$NOVA_CONF
|
||||
fi
|
||||
local compute_cell_conf=$NOVA_CONF
|
||||
|
||||
cp $compute_cell_conf $NOVA_CPU_CONF
|
||||
|
||||
@ -1025,22 +897,7 @@ function start_nova_rest {
|
||||
export PATH=$NOVA_BIN_DIR:$PATH
|
||||
|
||||
local api_cell_conf=$NOVA_CONF
|
||||
if is_service_enabled n-cell; then
|
||||
local compute_cell_conf=$NOVA_CELLS_CONF
|
||||
else
|
||||
local compute_cell_conf=$NOVA_CONF
|
||||
fi
|
||||
|
||||
# ``run_process`` checks ``is_service_enabled``, it is not needed here
|
||||
run_process n-cell-region "$NOVA_BIN_DIR/nova-cells --config-file $api_cell_conf"
|
||||
run_process n-cell-child "$NOVA_BIN_DIR/nova-cells --config-file $compute_cell_conf"
|
||||
|
||||
if is_service_enabled n-net; then
|
||||
if ! running_in_container; then
|
||||
enable_kernel_bridge_firewall
|
||||
fi
|
||||
fi
|
||||
run_process n-net "$NOVA_BIN_DIR/nova-network --config-file $compute_cell_conf"
|
||||
local compute_cell_conf=$NOVA_CONF
|
||||
|
||||
run_process n-sch "$NOVA_BIN_DIR/nova-scheduler --config-file $compute_cell_conf"
|
||||
if [ "$NOVA_USE_MOD_WSGI" == "False" ]; then
|
||||
@ -1049,9 +906,6 @@ function start_nova_rest {
|
||||
run_process n-api-meta "$NOVA_BIN_DIR/uwsgi --procname-prefix nova-api-meta --ini $NOVA_METADATA_UWSGI_CONF"
|
||||
fi
|
||||
|
||||
# nova-consoleauth always runs globally
|
||||
run_process n-cauth "$NOVA_BIN_DIR/nova-consoleauth --config-file $api_cell_conf"
|
||||
|
||||
export PATH=$old_path
|
||||
}
|
||||
|
||||
@ -1129,11 +983,7 @@ function is_nova_ready {
|
||||
# happen between here and the script ending. However, in multinode
|
||||
# tests this can very often not be the case. So ensure that the
|
||||
# compute is up before we move on.
|
||||
if is_service_enabled n-cell; then
|
||||
# cells v1 can't complete the check below because it munges
|
||||
# hostnames with cell information (grumble grumble).
|
||||
return
|
||||
fi
|
||||
|
||||
# TODO(sdague): honestly, this probably should be a plug point for
|
||||
# an external system.
|
||||
if [[ "$VIRT_DRIVER" == 'xenserver' ]]; then
|
||||
@ -1145,8 +995,6 @@ function is_nova_ready {
|
||||
}
|
||||
|
||||
function start_nova {
|
||||
# this catches the cells v1 case early
|
||||
_set_singleconductor
|
||||
start_nova_rest
|
||||
start_nova_console_proxies
|
||||
start_nova_conductor
|
||||
@ -1174,7 +1022,7 @@ function stop_nova_compute {
|
||||
|
||||
function stop_nova_rest {
|
||||
# Kill the non-compute nova processes
|
||||
for serv in n-api n-api-meta n-net n-sch n-cauth n-cell n-cell; do
|
||||
for serv in n-api n-api-meta n-sch; do
|
||||
stop_process $serv
|
||||
done
|
||||
}
|
||||
|
@ -24,9 +24,6 @@ set +o xtrace
|
||||
# Defaults
|
||||
# --------
|
||||
|
||||
# Allow ``build_domU.sh`` to specify the flat network bridge via kernel args
|
||||
FLAT_NETWORK_BRIDGE_DEFAULT=$(sed -e 's/.* flat_network_bridge=\([[:alnum:]]*\).*$/\1/g' /proc/cmdline)
|
||||
|
||||
VNCSERVER_PROXYCLIENT_ADDRESS=${VNCSERVER_PROXYCLIENT_ADDRESS=169.254.0.1}
|
||||
|
||||
|
||||
|
23
lib/tempest
23
lib/tempest
@ -342,7 +342,7 @@ function configure_tempest {
|
||||
iniset $TEMPEST_CONFIG compute flavor_ref $flavor_ref
|
||||
iniset $TEMPEST_CONFIG compute flavor_ref_alt $flavor_ref_alt
|
||||
iniset $TEMPEST_CONFIG validation connect_method $ssh_connect_method
|
||||
if ! is_service_enabled n-cell && ! is_service_enabled neutron; then
|
||||
if ! is_service_enabled neutron; then
|
||||
iniset $TEMPEST_CONFIG compute fixed_network_name $PRIVATE_NETWORK_NAME
|
||||
fi
|
||||
|
||||
@ -391,24 +391,6 @@ function configure_tempest {
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled scheduler_enabled_filters ${NOVA_FILTERS}
|
||||
fi
|
||||
|
||||
if is_service_enabled n-cell; then
|
||||
# Cells doesn't support shelving/unshelving
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled shelve False
|
||||
# Cells doesn't support hot-plugging virtual interfaces.
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled interface_attach False
|
||||
# Cells v1 doesn't support the rescue/unrescue tests in Tempest
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled rescue False
|
||||
|
||||
if [[ -z "$DEFAULT_INSTANCE_TYPE" ]]; then
|
||||
# Cells supports resize but does not currently work with devstack
|
||||
# because of the custom flavors created for Tempest runs which are
|
||||
# not in the cells database.
|
||||
# TODO(mriedem): work on adding a nova-manage command to sync
|
||||
# flavors into the cells database.
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled resize False
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ $ENABLE_VOLUME_MULTIATTACH == "True" ]]; then
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled volume_multiattach True
|
||||
fi
|
||||
@ -554,8 +536,7 @@ function configure_tempest {
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled shelve False
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled snapshot False
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled suspend False
|
||||
elif ! is_service_enabled n-cell; then
|
||||
# cells v1 does not support swapping volumes
|
||||
else
|
||||
iniset $TEMPEST_CONFIG compute-feature-enabled swap_volume True
|
||||
fi
|
||||
fi
|
||||
|
29
stack.sh
29
stack.sh
@ -1167,10 +1167,11 @@ if is_service_enabled neutron; then
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
# Nova
|
||||
# ----
|
||||
|
||||
if is_service_enabled n-net q-dhcp; then
|
||||
if is_service_enabled q-dhcp; then
|
||||
# Delete traces of nova networks from prior runs
|
||||
# Do not kill any dnsmasq instance spawned by NetworkManager
|
||||
netman_pid=$(pidof NetworkManager || true)
|
||||
@ -1182,12 +1183,6 @@ if is_service_enabled n-net q-dhcp; then
|
||||
|
||||
clean_iptables
|
||||
|
||||
if is_service_enabled n-net; then
|
||||
rm -rf ${NOVA_STATE_PATH}/networks
|
||||
sudo mkdir -p ${NOVA_STATE_PATH}/networks
|
||||
safe_chown -R ${STACK_USER} ${NOVA_STATE_PATH}/networks
|
||||
fi
|
||||
|
||||
# Force IP forwarding on, just in case
|
||||
sudo sysctl -w net.ipv4.ip_forward=1
|
||||
fi
|
||||
@ -1226,13 +1221,11 @@ if is_service_enabled nova; then
|
||||
init_nova
|
||||
|
||||
# Additional Nova configuration that is dependent on other services
|
||||
# TODO(stephenfin): Is it possible for neutron to *not* be enabled now? If
|
||||
# not, remove the if here
|
||||
if is_service_enabled neutron; then
|
||||
configure_neutron_nova
|
||||
elif is_service_enabled n-net; then
|
||||
create_nova_conf_nova_network
|
||||
fi
|
||||
|
||||
init_nova_cells
|
||||
fi
|
||||
|
||||
|
||||
@ -1314,20 +1307,6 @@ elif is_service_enabled q-svc; then
|
||||
echo_summary "Starting Neutron"
|
||||
configure_neutron_after_post_config
|
||||
start_neutron_service_and_check
|
||||
elif is_service_enabled $DATABASE_BACKENDS && is_service_enabled n-net; then
|
||||
NM_CONF=${NOVA_CONF}
|
||||
if is_service_enabled n-cell; then
|
||||
NM_CONF=${NOVA_CELLS_CONF}
|
||||
fi
|
||||
|
||||
# Create a small network
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NM_CONF network create "$PRIVATE_NETWORK_NAME" $FIXED_RANGE 1 $FIXED_NETWORK_SIZE $NETWORK_CREATE_ARGS
|
||||
|
||||
# Create some floating ips
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NM_CONF floating create $FLOATING_RANGE --pool=$PUBLIC_NETWORK_NAME
|
||||
|
||||
# Create a second pool
|
||||
$NOVA_BIN_DIR/nova-manage --config-file $NM_CONF floating create --ip_range=$TEST_FLOATING_RANGE --pool=$TEST_FLOATING_POOL
|
||||
fi
|
||||
|
||||
# Start placement before any of the service that are likely to want
|
||||
|
3
stackrc
3
stackrc
@ -65,7 +65,7 @@ if ! isset ENABLED_SERVICES ; then
|
||||
# Keystone - nothing works without keystone
|
||||
ENABLED_SERVICES=key
|
||||
# Nova - services to support libvirt based openstack clouds
|
||||
ENABLED_SERVICES+=,n-api,n-cpu,n-cond,n-sch,n-novnc,n-cauth,n-api-meta
|
||||
ENABLED_SERVICES+=,n-api,n-cpu,n-cond,n-sch,n-novnc,n-api-meta
|
||||
# Placement service needed for Nova
|
||||
ENABLED_SERVICES+=,placement-api,placement-client
|
||||
# Glance services needed for Nova
|
||||
@ -846,7 +846,6 @@ ENABLE_DEBUG_LOG_LEVEL=$(trueorfalse True ENABLE_DEBUG_LOG_LEVEL)
|
||||
FLOATING_RANGE=${FLOATING_RANGE:-172.24.4.0/24}
|
||||
IPV4_ADDRS_SAFE_TO_USE=${IPV4_ADDRS_SAFE_TO_USE:-10.0.0.0/22}
|
||||
FIXED_RANGE=${FIXED_RANGE:-$IPV4_ADDRS_SAFE_TO_USE}
|
||||
FIXED_NETWORK_SIZE=${FIXED_NETWORK_SIZE:-256}
|
||||
HOST_IP_IFACE=${HOST_IP_IFACE:-}
|
||||
HOST_IP=${HOST_IP:-}
|
||||
HOST_IPV6=${HOST_IPV6:-}
|
||||
|
Loading…
Reference in New Issue
Block a user