From 0cf5b3770e33ed1168e98d557a6dc212ca57f970 Mon Sep 17 00:00:00 2001 From: Tim Rozet Date: Thu, 21 Jul 2016 23:00:21 -0400 Subject: Adds configuring vpp/hc on all nodes Changes include: - starting vpp with pci addr of tenant nic - setting performance options for fdio scenario - creates nosdn fdio scenario (needs newtorking-vpp, etc) - starts HC if ODL is used opnfv-tht-pr: 46 JIRA: APEX-133 Change-Id: Ie7a7f1418b94dfb82255ec9aebc550a955dd696a Signed-off-by: Tim Rozet --- build/build_perf_image.sh | 2 -- build/network-environment.yaml | 1 - build/opnfv-apex-common.spec | 4 ++++ config/deploy/os-nosdn-fdio-noha.yaml | 25 +++++++++++++++++++++++++ config/deploy/os-odl_l2-fdio-ha.yaml | 14 ++++++++++++++ config/deploy/os-odl_l2-fdio-noha.yaml | 16 ++++++++++++++++ lib/overcloud-deploy-functions.sh | 17 +++++++++++++++-- lib/parse-functions.sh | 14 ++++++++++++-- lib/python/apex/common/constants.py | 4 ++++ lib/python/apex/network_environment.py | 15 ++++++++++++++- lib/python/apex_python_utils.py | 15 ++++++++++++++- tests/test_apex_network_environment.py | 4 +++- 12 files changed, 121 insertions(+), 10 deletions(-) create mode 100644 config/deploy/os-nosdn-fdio-noha.yaml diff --git a/build/build_perf_image.sh b/build/build_perf_image.sh index c91b563d..a6ca066b 100644 --- a/build/build_perf_image.sh +++ b/build/build_perf_image.sh @@ -27,8 +27,6 @@ fi if [ "$CATEGORY" == "nova" ]; then if [ "$KEY" == "libvirtpin" ]; then sudo sed -i "s/#LibvirtCPUPinSet:.*/LibvirtCPUPinSet: '${VALUE}'/" /usr/share/openstack-tripleo-heat-templates/environments/numa.yaml - sudo sed -i "s/^#resource_registry:/resource_registry:/" /usr/share/openstack-tripleo-heat-templates/environments/numa.yaml - sudo sed -i "s/# {numa}/ OS::TripleO::ComputeExtraConfigPre: ..\/puppet\/extraconfig\/pre_deploy\/compute\/numa.yaml/" /usr/share/openstack-tripleo-heat-templates/environments/numa.yaml fi fi diff --git a/build/network-environment.yaml b/build/network-environment.yaml index 84bb5cef..bbd0796f 100644 --- a/build/network-environment.yaml +++ b/build/network-environment.yaml @@ -39,7 +39,6 @@ resource_registry: OS::TripleO::Compute::Net::SoftwareConfig: nics/compute.yaml OS::TripleO::Controller::Net::SoftwareConfig: nics/controller.yaml - parameter_defaults: NeutronExternalNetworkBridge: 'br-ex' ControlPlaneSubnetCidr: "24" diff --git a/build/opnfv-apex-common.spec b/build/opnfv-apex-common.spec index 854fbbb6..6b86bf87 100644 --- a/build/opnfv-apex-common.spec +++ b/build/opnfv-apex-common.spec @@ -35,6 +35,7 @@ install ci/util.sh %{buildroot}%{_bindir}/opnfv-util mkdir -p %{buildroot}%{_sysconfdir}/opnfv-apex/ install config/deploy/os-nosdn-nofeature-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-nosdn-nofeature-noha.yaml +install config/deploy/os-nosdn-fdio-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-nosdn-fdio-noha.yaml install config/deploy/os-nosdn-ovs-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-nosdn-ovs-noha.yaml install config/deploy/os-nosdn-nofeature-ha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-nosdn-nofeature-ha.yaml install config/deploy/os-nosdn-performance-ha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-nosdn-performance-ha.yaml @@ -104,6 +105,7 @@ install config/inventory/pod_example_settings.yaml %{buildroot}%{_docdir}/opnfv/ %{_var}/opt/opnfv/lib/installer/onos/onos_gw_mac_update.sh %{_var}/opt/opnfv/lib/installer/domain.xml %{_sysconfdir}/opnfv-apex/os-nosdn-nofeature-noha.yaml +%{_sysconfdir}/opnfv-apex/os-nosdn-fdio-noha.yaml %{_sysconfdir}/opnfv-apex/os-nosdn-ovs-noha.yaml %{_sysconfdir}/opnfv-apex/os-nosdn-nofeature-ha.yaml %{_sysconfdir}/opnfv-apex/os-nosdn-performance-ha.yaml @@ -129,6 +131,8 @@ install config/inventory/pod_example_settings.yaml %{buildroot}%{_docdir}/opnfv/ %doc %{_docdir}/opnfv/inventory.yaml.example %changelog +* Thu Aug 1 2016 Tim Rozet - 3.0-11 +- Add nosdn fdio scenarios. * Tue Jul 5 2016 Dan Radez - 3.0-10 - Adding functions.sh files * Thu Jun 15 2016 Tim Rozet - 3.0-9 diff --git a/config/deploy/os-nosdn-fdio-noha.yaml b/config/deploy/os-nosdn-fdio-noha.yaml new file mode 100644 index 00000000..057177f6 --- /dev/null +++ b/config/deploy/os-nosdn-fdio-noha.yaml @@ -0,0 +1,25 @@ +global_params: + ha_enabled: false + +deploy_options: + sdn_controller: false + sdn_l3: false + tacker: false + congress: false + sfc: false + vpn: false + vpp: true + dataplane: fdio + performance: + Controller: + kernel: + hugepages: 1024 + hugepagesz: 2M + Compute: + nova: + libvirtpin: 1 + kernel: + hugepagesz: 2M + hugepages: 4096 + intel_iommu: 'on' + iommu: pt diff --git a/config/deploy/os-odl_l2-fdio-ha.yaml b/config/deploy/os-odl_l2-fdio-ha.yaml index e0f26696..c7a9d8e0 100644 --- a/config/deploy/os-odl_l2-fdio-ha.yaml +++ b/config/deploy/os-odl_l2-fdio-ha.yaml @@ -10,3 +10,17 @@ deploy_options: sfc: false vpn: false vpp: true + dataplane: fdio + performance: + Controller: + kernel: + hugepages: 1024 + hugepagesz: 2M + Compute: + nova: + libvirtpin: 1 + kernel: + hugepagesz: 2M + hugepages: 4096 + intel_iommu: 'on' + iommu: pt diff --git a/config/deploy/os-odl_l2-fdio-noha.yaml b/config/deploy/os-odl_l2-fdio-noha.yaml index 9fc896b5..ca090154 100644 --- a/config/deploy/os-odl_l2-fdio-noha.yaml +++ b/config/deploy/os-odl_l2-fdio-noha.yaml @@ -10,3 +10,19 @@ deploy_options: sfc: false vpn: false vpp: true + dataplane: fdio + performance: + Controller: + kernel: + hugepages: 1024 + hugepagesz: 2M + intel_iommu: 'on' + iommu: pt + Compute: + nova: + libvirtpin: 1 + kernel: + hugepagesz: 2M + hugepages: 4096 + intel_iommu: 'on' + iommu: pt diff --git a/lib/overcloud-deploy-functions.sh b/lib/overcloud-deploy-functions.sh index 14c37247..5b0e1aca 100755 --- a/lib/overcloud-deploy-functions.sh +++ b/lib/overcloud-deploy-functions.sh @@ -71,7 +71,7 @@ function overcloud_deploy { scp ${SSH_OPTIONS[@]} $RESOURCES/overcloud-full-${SDN_IMAGE}.qcow2 "stack@$UNDERCLOUD":overcloud-full.qcow2 # Install ovs-dpdk inside the overcloud image if it is enabled. - if [ "${deploy_options_array['dataplane']}" == 'ovs_dpdk' ]; then + if [[ "${deploy_options_array['dataplane']}" == 'ovs_dpdk' || "${deploy_options_array['dataplane']}" == 'fdio' ]]; then # install dpdk packages before ovs echo -e "${blue}INFO: Enabling kernel modules for dpdk inside overcloud image${reset}" @@ -90,9 +90,16 @@ EOF --upload uio_pci_generic.modules:/etc/sysconfig/modules/ \ --run-command "chmod 0755 /etc/sysconfig/modules/vfio_pci.modules" \ --run-command "chmod 0755 /etc/sysconfig/modules/uio_pci_generic.modules" \ - --run-command "yum install -y /root/dpdk_rpms/*" \ -a overcloud-full.qcow2 + + if [ "${deploy_options_array['dataplane']}" == 'fdio' ]; then + sed -i '/FdioEnabled:/c\ FdioEnabled: true' opnfv-environment.yaml + else + LIBGUESTFS_BACKEND=direct virt-customize --run-command "yum install -y /root/dpdk_rpms/*" \ + -a overcloud-full.qcow2 + fi EOI + elif [ "${deploy_options_array['dataplane']}" != 'ovs' ]; then echo "${red}${deploy_options_array['dataplane']} not supported${reset}" exit 1 @@ -148,6 +155,12 @@ find . | cpio -o -H newc | gzip > /home/stack/Controller-ironic-python-agent.ini chown stack /home/stack/Controller-ironic-python-agent.initramfs popd /bin/rm -rf ipa/ +EOI + + # set NIC heat params and resource registry + ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <