Check if network namespaces are supported
Make sure that network namespaces are supported when installing neutron componented and use_namespaces option is enabled. Otherwise, raise install exception. Change-Id: I19e7e3276f99db685f3406c1924722255bf174f8
This commit is contained in:
parent
93049be89d
commit
f509ba21ce
@ -15,6 +15,7 @@
|
||||
# under the License.
|
||||
|
||||
from anvil import colorizer
|
||||
from anvil import exceptions
|
||||
from anvil import log as logging
|
||||
from anvil import shell as sh
|
||||
|
||||
@ -45,6 +46,23 @@ class NeutronInstaller(binstall.PythonInstallComponent, NeutronPluginMixin):
|
||||
super(NeutronInstaller, self).__init__(*args, **kargs)
|
||||
self.configurator = qconf.NeutronConfigurator(self)
|
||||
|
||||
def pre_install(self):
|
||||
# Check if network namespaces are supported.
|
||||
if self.get_option("use_namespaces", default_value=True):
|
||||
try:
|
||||
# "ip netns" command is used for network namespace management.
|
||||
# We are trying to execute this command and if it was executed
|
||||
# successfully then network namespaces support is enabled.
|
||||
sh.execute(["ip", "netns"])
|
||||
except exceptions.ProcessExecutionError:
|
||||
raise exceptions.InstallException(
|
||||
"Network namespaces are not supported in your system. "
|
||||
"Please, install kernel and iproute with network "
|
||||
"namespaces support. To install them from RDO you can "
|
||||
"use the following script: "
|
||||
"./tools/install-neutron-ns-packages.sh")
|
||||
super(NeutronInstaller, self).pre_install()
|
||||
|
||||
def post_install(self):
|
||||
super(NeutronInstaller, self).post_install()
|
||||
if self.get_bool_option("db-sync"):
|
||||
|
0
tools/configure-openvswitch.sh
Normal file → Executable file
0
tools/configure-openvswitch.sh
Normal file → Executable file
16
tools/install-neutron-ns-packages.sh
Executable file
16
tools/install-neutron-ns-packages.sh
Executable file
@ -0,0 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This script is used to install 'kernel' and 'iproute'
|
||||
# with network namespaces support for openstack-neutron
|
||||
# from RDO havana repository.
|
||||
|
||||
set -e
|
||||
|
||||
echo "Adding RDO havana repo..."
|
||||
sudo rpm -i --force http://rdo.fedorapeople.org/openstack-havana/rdo-release-havana.rpm
|
||||
sudo yum clean all
|
||||
|
||||
echo "Installing 'kernel' and 'iproute' from RDO..."
|
||||
sudo yum install -y kernel iproute
|
||||
|
||||
echo "Kernel updated. Please, reboot into it!"
|
Loading…
Reference in New Issue
Block a user