diff options
author | Feng Pan <fpan@redhat.com> | 2017-04-17 11:15:52 -0400 |
---|---|---|
committer | Feng Pan <fpan@redhat.com> | 2017-04-18 14:52:50 -0400 |
commit | ed59809f6edc325700055c7fa2375d3245eb8ef9 (patch) | |
tree | 8a738b0fcac6444cdea4fe77e2df9e3b01cac629 | |
parent | 79b0248d53c066a4631879332299118277381a76 (diff) |
Add ODL netvirt VPP support
opnfv-tht-pr: 131
Change-Id: I112d454078bd29a386b8557bf1d015d81f328d61
Signed-off-by: Feng Pan <fpan@redhat.com>
-rwxr-xr-x | build/overcloud-opendaylight.sh | 4 | ||||
-rw-r--r-- | build/rpm_specs/opnfv-apex-common.spec | 2 | ||||
-rw-r--r-- | config/deploy/os-odl_netvirt-fdio-noha.yaml | 38 | ||||
-rwxr-xr-x | lib/overcloud-deploy-functions.sh | 11 | ||||
-rw-r--r-- | lib/python/apex/deploy_settings.py | 3 |
5 files changed, 56 insertions, 2 deletions
diff --git a/build/overcloud-opendaylight.sh b/build/overcloud-opendaylight.sh index f8682f6c..b73ffc46 100755 --- a/build/overcloud-opendaylight.sh +++ b/build/overcloud-opendaylight.sh @@ -76,6 +76,9 @@ popd > /dev/null # Download quagga/zrpc rpms populate_cache http://artifacts.opnfv.org/apex/danube/quagga/quagga.tar.gz +# Download ODL netvirt for VPP +populate_cache http://artifacts.opnfv.org/apex/danube/fdio_netvirt/odl-netvirt-vpp-distribution.tar.gz + # install ODL packages # Patch in OPNFV custom puppet-tripleO # install Honeycomb @@ -110,6 +113,7 @@ LIBGUESTFS_BACKEND=direct virt-customize \ --install capnproto-devel,capnproto-libs,capnproto \ --upload ${BUILD_ROOT}/patches/neutron-patch-NSDriver.patch:/usr/lib/python2.7/site-packages/ \ --upload ${BUILD_ROOT}/patches/disable_odl_clustering.patch:/etc/puppet/modules/tripleo/ \ + --upload ${CACHE_DIR}/odl-netvirt-vpp-distribution.tar.gz:/root/ \ -a overcloud-full-opendaylight_build.qcow2 LIBGUESTFS_BACKEND=direct virt-sparsify --compress overcloud-full-opendaylight_build.qcow2 overcloud-full-opendaylight.qcow2 diff --git a/build/rpm_specs/opnfv-apex-common.spec b/build/rpm_specs/opnfv-apex-common.spec index ca7a05e5..8be717bf 100644 --- a/build/rpm_specs/opnfv-apex-common.spec +++ b/build/rpm_specs/opnfv-apex-common.spec @@ -52,6 +52,7 @@ install config/deploy/os-odl-bgpvpn-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-a install config/deploy/os-odl_l2-fdio-ha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl_l2-fdio-ha.yaml install config/deploy/os-odl_l2-fdio-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl_l2-fdio-noha.yaml install config/deploy/os-odl-fdio-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl-fdio-noha.yaml +install config/deploy/os-odl_netvirt-fdio-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl_netvirt-fdio-noha.yaml install config/deploy/os-odl-fdio-ha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl-fdio-ha.yaml install config/deploy/os-odl-nofeature-ha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl-nofeature-ha.yaml install config/deploy/os-odl-nofeature-noha.yaml %{buildroot}%{_sysconfdir}/opnfv-apex/os-odl-nofeature-noha.yaml @@ -137,6 +138,7 @@ install config/inventory/pod_example_settings.yaml %{buildroot}%{_docdir}/opnfv/ %{_sysconfdir}/opnfv-apex/os-odl_l2-fdio-noha.yaml %{_sysconfdir}/opnfv-apex/os-odl_l2-fdio-ha.yaml %{_sysconfdir}/opnfv-apex/os-odl-fdio-noha.yaml +%{_sysconfdir}/opnfv-apex/os-odl_netvirt-fdio-noha.yaml %{_sysconfdir}/opnfv-apex/os-odl-fdio-ha.yaml %{_sysconfdir}/opnfv-apex/os-odl-ovs_dpdk-noha.yaml %{_sysconfdir}/opnfv-apex/os-odl-ovs_dpdk-ha.yaml diff --git a/config/deploy/os-odl_netvirt-fdio-noha.yaml b/config/deploy/os-odl_netvirt-fdio-noha.yaml new file mode 100644 index 00000000..fa6ba800 --- /dev/null +++ b/config/deploy/os-odl_netvirt-fdio-noha.yaml @@ -0,0 +1,38 @@ +global_params: + ha_enabled: false + +deploy_options: + sdn_controller: opendaylight + sdn_l3: true + odl_version: carbon + odl_vpp_netvirt: true + odl_vpp_routing_node: overcloud-novacompute-0 + tacker: true + congress: true + sfc: false + vpn: false + vpp: true + dataplane: fdio + performance: + Controller: + kernel: + hugepages: 1024 + hugepagesz: 2M + intel_iommu: 'on' + iommu: pt + isolcpus: 1,2 + vpp: + main-core: 1 + corelist-workers: 2 + uio-driver: uio_pci_generic + Compute: + kernel: + hugepagesz: 2M + hugepages: 2048 + intel_iommu: 'on' + iommu: pt + isolcpus: 1,2 + vpp: + main-core: 1 + corelist-workers: 2 + uio-driver: uio_pci_generic diff --git a/lib/overcloud-deploy-functions.sh b/lib/overcloud-deploy-functions.sh index 0ed98fb7..9b27bfa1 100755 --- a/lib/overcloud-deploy-functions.sh +++ b/lib/overcloud-deploy-functions.sh @@ -34,7 +34,9 @@ function overcloud_deploy { DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/services/gluon.yaml" fi elif [ "${deploy_options_array['vpp']}" == 'True' ]; then - if [ "${deploy_options_array['sdn_l3']}" == "True" ]; then + if [ "${deploy_options_array['odl_vpp_netvirt']}" == "True" ]; then + DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/neutron-opendaylight-netvirt-vpp.yaml" + elif [ "${deploy_options_array['sdn_l3']}" == "True" ]; then DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/neutron-opendaylight-honeycomb.yaml" else DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/neutron-opendaylight-honeycomb-l2.yaml" @@ -300,6 +302,13 @@ EOI -a overcloud-full.qcow2 EOI fi + if [ "${deploy_options_array['odl_vpp_netvirt']}" == "True" ]; then + ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <<EOI + LIBGUESTFS_BACKEND=direct virt-customize --run-command "rm -rf /opt/opendaylight/*" \ + --run-command "tar zxvf /root/odl-netvirt-vpp-distribution.tar.gz -C /opt/opendaylight/" \ + -a overcloud-full.qcow2 +EOI + fi fi # check if ceph should be enabled diff --git a/lib/python/apex/deploy_settings.py b/lib/python/apex/deploy_settings.py index dc58d764..48ce340d 100644 --- a/lib/python/apex/deploy_settings.py +++ b/lib/python/apex/deploy_settings.py @@ -31,7 +31,8 @@ OPT_DEPLOY_SETTINGS = ['performance', 'ceph_device', 'yardstick', 'dovetail', - 'odl_vpp_routing_node'] + 'odl_vpp_routing_node', + 'odl_vpp_netvirt'] VALID_ROLES = ['Controller', 'Compute', 'ObjectStorage'] VALID_PERF_OPTS = ['kernel', 'nova', 'vpp', 'ovs'] |