formalizing configure_nova_kvm
The earlier hack has proved to be quite good, and has not produced many problems. Messages echoed to the summary log are not stashed in logstash, moving to a single message in the log instead. Changed the function name to a more formal name (configure_nova_kvm) instead of tweak_nova. Change-Id: I85364c6530058e964a8eba7fb515d7deadfd5d72
This commit is contained in:
parent
4f9c538f68
commit
966b777e78
@ -100,48 +100,42 @@ function iniset_conditional {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# tweak_nova() - update the nova hypervisor configuration if possible
|
# configure_nova_kvm() - update the nova hypervisor configuration if possible
|
||||||
function tweak_nova {
|
function configure_nova_kvm {
|
||||||
|
cpu="unknown"
|
||||||
|
|
||||||
if [ -e /sys/module/kvm_*/parameters/nested ]; then
|
if [ -e /sys/module/kvm_*/parameters/nested ]; then
|
||||||
reconfigure_nova="F"
|
reconfigure_nova="F"
|
||||||
|
|
||||||
if [ -e /sys/module/kvm_intel/parameters/nested ]; then
|
if [ -e /sys/module/kvm_intel/parameters/nested ]; then
|
||||||
|
cpu="Intel"
|
||||||
if [[ "$(cat /sys/module/kvm_*/parameters/nested)" == "Y" ]]; then
|
if [[ "$(cat /sys/module/kvm_*/parameters/nested)" == "Y" ]]; then
|
||||||
reconfigure_nova="Y"
|
reconfigure_nova="Y"
|
||||||
else
|
|
||||||
echo_summary "Found Intel with no support for nested KVM."
|
|
||||||
fi
|
fi
|
||||||
elif [ -e /sys/module/kvm_amd/parameters/nested ]; then
|
elif [ -e /sys/module/kvm_amd/parameters/nested ]; then
|
||||||
|
cpu="AMD"
|
||||||
if [[ "$(cat /sys/module/kvm_*/parameters/nested)" == "1" ]]; then
|
if [[ "$(cat /sys/module/kvm_*/parameters/nested)" == "1" ]]; then
|
||||||
reconfigure_nova="Y"
|
reconfigure_nova="Y"
|
||||||
else
|
|
||||||
echo_summary "Found AMD with no support for nested KVM."
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${reconfigure_nova}" == "Y" ]; then
|
if [ "${reconfigure_nova}" == "Y" ]; then
|
||||||
echo_summary "Configuring Nova to use KVM."
|
|
||||||
|
|
||||||
NOVA_CONF_DIR=${NOVA_CONF_DIR:-/etc/nova}
|
NOVA_CONF_DIR=${NOVA_CONF_DIR:-/etc/nova}
|
||||||
NOVA_CONF=${NOVA_CONF:-${NOVA_CONF_DIR}/nova.conf}
|
NOVA_CONF=${NOVA_CONF:-${NOVA_CONF_DIR}/nova.conf}
|
||||||
iniset $NOVA_CONF libvirt cpu_mode "none"
|
iniset $NOVA_CONF libvirt cpu_mode "none"
|
||||||
iniset $NOVA_CONF libvirt virt_type "kvm"
|
iniset $NOVA_CONF libvirt virt_type "kvm"
|
||||||
else
|
|
||||||
virt_type=$(iniget $NOVA_CONF libvirt virt_type)
|
|
||||||
echo_summary "Nested hypervisor not supported, using ${virt_type}."
|
|
||||||
fi
|
fi
|
||||||
else
|
|
||||||
virt_type=$(iniget $NOVA_CONF libvirt virt_type)
|
|
||||||
echo_summary "Unable to configure Nova to use KVM, using ${virt_type}."
|
|
||||||
echo "Unable to configure Nova to use KVM, using ${virt_type}."
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
virt_type=$(iniget $NOVA_CONF libvirt virt_type)
|
||||||
|
echo "configure_nova_kvm: using virt_type: ${virt_type} for cpu: ${cpu}."
|
||||||
}
|
}
|
||||||
|
|
||||||
# configure_trove() - Set config files, create data dirs, etc
|
# configure_trove() - Set config files, create data dirs, etc
|
||||||
function configure_trove {
|
function configure_trove {
|
||||||
setup_develop $TROVE_DIR
|
setup_develop $TROVE_DIR
|
||||||
|
|
||||||
tweak_nova
|
configure_nova_kvm
|
||||||
|
|
||||||
# Create the trove conf dir and cache dirs if they don't exist
|
# Create the trove conf dir and cache dirs if they don't exist
|
||||||
sudo install -d -o $STACK_USER ${TROVE_CONF_DIR} ${TROVE_AUTH_CACHE_DIR}
|
sudo install -d -o $STACK_USER ${TROVE_CONF_DIR} ${TROVE_AUTH_CACHE_DIR}
|
||||||
|
Loading…
Reference in New Issue
Block a user