From: Michael Polenchuk Date: Fri, 13 Apr 2018 08:50:14 +0000 (+0400) Subject: [virtual] Bring in OpenDaylight DPDK scenario X-Git-Tag: opnfv-7.0.0~206 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=421aa5796c194382bec24737b9b1d60bde544672;p=fuel.git [virtual] Bring in OpenDaylight DPDK scenario Change-Id: If77ac85fa86e0a1a18c0cc2abff77d876cdb9e93 Signed-off-by: Michael Polenchuk --- diff --git a/ci/deploy.sh b/ci/deploy.sh index a5fec4d44..fd41be85d 100755 --- a/ci/deploy.sh +++ b/ci/deploy.sh @@ -266,8 +266,9 @@ fi generate_ssh_key export MAAS_SSH_KEY="$(cat "$(basename "${SSH_KEY}").pub")" +MCP_DPDK_MODE=$([[ "$DEPLOY_SCENARIO" =~ ovs ]] && echo 1 || echo 0) # Expand jinja2 templates based on PDF data and env vars -export MCP_VCP MCP_JUMP_ARCH=$(uname -i) +export MCP_VCP MCP_DPDK_MODE MCP_JUMP_ARCH=$(uname -i) do_templates_scenario "${STORAGE_DIR}" "${TARGET_LAB}" "${TARGET_POD}" \ "${BASE_CONFIG_URI}" "${SCENARIO_DIR}" do_templates_cluster "${STORAGE_DIR}" "${TARGET_LAB}" "${TARGET_POD}" \ diff --git a/mcp/config/scenario/os-odl-ovs-noha.yaml b/mcp/config/scenario/os-odl-ovs-noha.yaml new file mode 100644 index 000000000..c282707f7 --- /dev/null +++ b/mcp/config/scenario/os-odl-ovs-noha.yaml @@ -0,0 +1,38 @@ +############################################################################## +# Copyright (c) 2018 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +cluster: + domain: mcp-pike-odl-noha.local + states: + - dpdk + - opendaylight + - openstack_noha + - neutron_gateway + - networks +virtual: + nodes: + - cfg01 + - ctl01 + - cmp01 + - cmp02 + - gtw01 + - odl01 + ctl01: + vcpus: 4 + ram: 14336 + gtw01: + ram: 1024 + odl01: + vcpus: 4 + ram: 5120 + cmp01: + vcpus: 4 + ram: 8192 + cmp02: + vcpus: 4 + ram: 8192 diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml.j2 similarity index 92% rename from mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml rename to mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml.j2 index b63ac68b5..46e25fe95 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml.j2 @@ -11,7 +11,7 @@ classes: - system.reclass.storage.system.openstack_gateway_single - cluster.mcp-pike-common-noha.infra.config - cluster.mcp-pike-odl-noha - - cluster.all-mcp-arch-common.infra.config_pdf + - cluster.all-mcp-arch-common.infra.config{%- if conf.MCP_DPDK_MODE %}_dpdk{%- endif %}_pdf parameters: reclass: storage: diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml.j2 similarity index 70% rename from mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml rename to mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml.j2 index b0690167f..12dfdcaa1 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml.j2 @@ -9,12 +9,34 @@ classes: - service.neutron.compute.single - service.neutron.compute.opendaylight.single +{%- if conf.MCP_DPDK_MODE %} + - system.nova.compute.nfv.hugepages + - system.neutron.compute.nfv.dpdk +{%- endif %} - cluster.mcp-pike-common-noha.openstack_compute - cluster.mcp-pike-odl-noha parameters: linux: network: interface: +{%- if conf.MCP_DPDK_MODE %} + dpdk0: + name: ${_param:dpdk0_name} + pci: ${_param:dpdk0_pci} + driver: ${_param:dpdk0_driver} + enabled: true + bridge: br-prv + type: dpdk_ovs_port + n_rxq: ${_param:dpdk0_n_rxq} + br-prv: + enabled: true + type: dpdk_ovs_bridge + proto: static + address: ${_param:tenant_address} + netmask: 255.255.255.0 + tenant_interface: + type: dpdk # Not a meaningful type, just match 'dpdk' for filtering +{%- endif %} external_interface: enabled: true type: eth