From fb8c23c5413ee7c820f7c947fb1bb007d5d4cf95 Mon Sep 17 00:00:00 2001 From: davidjchou Date: Sun, 5 Mar 2017 17:39:24 -0900 Subject: Adding "Real Time KVM" support Adding the support to run the "Real Time KVM" kernel in the compute node(s) to reduce the network latency caused by the virtualization of the network functions. Since the current "Real Time KVM" kernel doesn't support physical to logical network interface mapping yet, we need to use the real physical interface name rather than the logical interface name for all compute interfaces in network_settings.yaml. Also updates tests for the network settings changes and fixes a bug where interface was being queried on the controller nics before it interfaces were validated. JIRA: APEX-128 Change-Id: Iccb6c9fbdcf7e3b482f4283039ef17c38e0a6df7 Signed-off-by: davidjchou Signed-off-by: Tim Rozet Signed-off-by: Dan Radez --- lib/overcloud-deploy-functions.sh | 16 ++++++++++------ lib/python/apex/deploy_settings.py | 3 ++- lib/python/apex/network_settings.py | 2 +- 3 files changed, 13 insertions(+), 8 deletions(-) (limited to 'lib') diff --git a/lib/overcloud-deploy-functions.sh b/lib/overcloud-deploy-functions.sh index f05e611f..d7e9b7e0 100755 --- a/lib/overcloud-deploy-functions.sh +++ b/lib/overcloud-deploy-functions.sh @@ -14,6 +14,11 @@ function overcloud_deploy { local num_compute_nodes local num_control_nodes + # OPNFV Default Environment and Network settings + DEPLOY_OPTIONS+=" -e ${ENV_FILE}" + DEPLOY_OPTIONS+=" -e network-environment.yaml" + + # Custom Deploy Environment Templates if [[ "${#deploy_options_array[@]}" -eq 0 || "${deploy_options_array['sdn_controller']}" == 'opendaylight' ]]; then if [ "${deploy_options_array['sfc']}" == 'True' ]; then DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/opendaylight_sfc.yaml" @@ -65,6 +70,11 @@ function overcloud_deploy { DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/enable_congress.yaml" fi + # Enable Real Time Kernel (kvm4nfv) + if [ "${deploy_options_array['rt_kvm']}" == 'True' ]; then + DEPLOY_OPTIONS+=" -e /home/stack/enable_rt_kvm.yaml" + fi + # Make sure the correct overcloud image is available if [ ! -f $IMAGES/overcloud-full-${SDN_IMAGE}.qcow2 ]; then echo "${red} $IMAGES/overcloud-full-${SDN_IMAGE}.qcow2 is required to execute your deployment." @@ -185,10 +195,6 @@ EOI DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml" fi - #DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml" - DEPLOY_OPTIONS+=" -e network-environment.yaml" - - # get number of nodes available in inventory num_control_nodes=$(ssh -T ${SSH_OPTIONS[@]} "root@$UNDERCLOUD" "grep -c profile:control /home/stack/instackenv.json") num_compute_nodes=$(ssh -T ${SSH_OPTIONS[@]} "root@$UNDERCLOUD" "grep -c profile:compute /home/stack/instackenv.json") @@ -225,8 +231,6 @@ EOI DEPLOY_OPTIONS+=" -e virtual-environment.yaml" fi - DEPLOY_OPTIONS+=" -e ${ENV_FILE}" - echo -e "${blue}INFO: Deploy options set:\n${DEPLOY_OPTIONS}${reset}" ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <