diff options
author | Peter Mikus <pmikus@cisco.com> | 2019-11-13 13:30:48 +0000 |
---|---|---|
committer | Peter Mikus <pmikus@cisco.com> | 2019-11-13 13:33:53 +0000 |
commit | 7de465c09018b1cf739a28992fe198ccd5f5699d (patch) | |
tree | e8c02828cf39619e73d0d927012a3aa0a79b598b | |
parent | 3a42930d52dca48f4df64f9d7816dfc95c286a16 (diff) |
LIGATO: Remove
Signed-off-by: Peter Mikus <pmikus@cisco.com>
Change-Id: I0c9b8b07ed3a113e24a38faaddd5ed06fae67768
45 files changed, 10 insertions, 3986 deletions
diff --git a/VPP_AGENT_STABLE_VER b/VPP_AGENT_STABLE_VER deleted file mode 100644 index a0f9a4b4bc..0000000000 --- a/VPP_AGENT_STABLE_VER +++ /dev/null @@ -1 +0,0 @@ -latest diff --git a/docs/report/detailed_test_results/cot_performance_results/index.rst b/docs/report/detailed_test_results/cot_performance_results/index.rst deleted file mode 100644 index 69ea95b593..0000000000 --- a/docs/report/detailed_test_results/cot_performance_results/index.rst +++ /dev/null @@ -1,6 +0,0 @@ -VPP K8s Container Memif -======================= - -.. toctree:: - - ../cot_performance_results_3n_hsw/index diff --git a/docs/report/detailed_test_results/cot_performance_results_3n_hsw/index.rst b/docs/report/detailed_test_results/cot_performance_results_3n_hsw/index.rst deleted file mode 100644 index 4bdb21e045..0000000000 --- a/docs/report/detailed_test_results/cot_performance_results_3n_hsw/index.rst +++ /dev/null @@ -1,12 +0,0 @@ -3n-hsw ------- - -.. note:: - - Data sources for reported test results: i) `FD.io test executor ligato - performance jobs`_, ii) archived FD.io jobs test result `output files - <../../_static/archive/>`_. - -.. toctree:: - - cot_performance_results_3n_hsw diff --git a/docs/report/index.html.template b/docs/report/index.html.template index 8a01129982..a5e57e9617 100644 --- a/docs/report/index.html.template +++ b/docs/report/index.html.template @@ -103,7 +103,6 @@ CSIT-1908 .. detailed_test_results/honeycomb_functional_results/index detailed_test_results/dmm_functional_results/index - detailed_test_results/cot_performance_results/index detailed_test_results/nshsfc_functional_results/index .. toctree:: @@ -114,8 +113,6 @@ CSIT-1908 test_configuration/vpp_mrr_configuration/index test_configuration/vpp_functional_configuration/index test_configuration/vpp_device_configuration_ubuntu/index -.. - test_configuration/cot_performance_configuration/index .. toctree:: :maxdepth: 2 diff --git a/docs/report/introduction/methodology.rst b/docs/report/introduction/methodology.rst index af9bfc661a..5c54bb9d84 100644 --- a/docs/report/introduction/methodology.rst +++ b/docs/report/introduction/methodology.rst @@ -26,5 +26,4 @@ Test Methodology methodology_trex_traffic_generator .. - methodology_k8s_container_memif methodology_http_tcp_with_wrk_tool diff --git a/docs/report/introduction/methodology_k8s_container_memif.rst b/docs/report/introduction/methodology_k8s_container_memif.rst deleted file mode 100644 index ec7a3c9ccc..0000000000 --- a/docs/report/introduction/methodology_k8s_container_memif.rst +++ /dev/null @@ -1,23 +0,0 @@ -K8s Container Memif -------------------- - -CSIT includes tests of VPP topologies running in K8s -orchestrated Pods/Containers and connected over memif virtual -interfaces. In order to provide simple topology coding flexibility and -extensibility container orchestration is done with `Kubernetes -<https://github.com/kubernetes>`_ using `Docker -<https://github.com/docker>`_ images for all container applications -including VPP. `Ligato <https://github.com/ligato>`_ is used for the -Pod/Container networking orchestration that is integrated with K8s, -including memif support. - -In these tests VPP vswitch runs in a K8s Pod with Docker Container (DRC) -handling NIC interfaces and connecting over memif to more instances of -VPP running in Pods/DRCs. All DRCs run in a priviliged mode with VPP -data plane worker threads pinned to dedicated physical CPU cores per -usual CSIT practice. All VPP instances run the same version of software. -This test topology is equivalent to existing tests with vhost-user and -VMs as described earlier in :ref:`tested_physical_topologies`. - -Further documentation is available in -:ref:`container_orchestration_in_csit`. diff --git a/docs/report/introduction/test_scenarios_overview.rst b/docs/report/introduction/test_scenarios_overview.rst index 8d66836e9d..318d86c376 100644 --- a/docs/report/introduction/test_scenarios_overview.rst +++ b/docs/report/introduction/test_scenarios_overview.rst @@ -57,11 +57,6 @@ Brief overview of test scenarios covered in this report: FD.io testbeds demonstrating a single server (DUT1) and single client (DUT2) scenario using DMM framework and Linux kernel TCP/IP stack. - #. **K8s Container/Pod Topologies Performance**: VPP container - performance tests using memif for interconnecting VPP-in- - Container/Pod instances orchestrated by K8s integrated with `Ligato - <https://github.com/ligato>`_ for container networking. TRex is - used as a traffic generator. #. **NSH_SFC Functional**: NSH_SFC functional tests are executed in virtual FD.io testbeds focusing on VPP nsh-plugin data plane functionality. Scapy is used as a traffic generator. diff --git a/docs/report/vpp_performance_tests/documentation/containers.rst b/docs/report/vpp_performance_tests/documentation/containers.rst index 313b5b7575..2d025171db 100644 --- a/docs/report/vpp_performance_tests/documentation/containers.rst +++ b/docs/report/vpp_performance_tests/documentation/containers.rst @@ -111,8 +111,6 @@ Current CSIT testing framework integrates following Linux container orchestration mechanisms: - LXC/Docker for complete VPP container lifecycle control. -- Combination of Kubernetes (container orchestration), Docker (container - images) and Ligato (container networking). LXC ~~~ @@ -163,31 +161,6 @@ containerized applications used in CSIT performance tests. configuration file controls the range of CPU cores the Docker image must run on. VPP thread pinning defined vpp startup.conf. -Kubernetes -~~~~~~~~~~ - -Kubernetes [k8sdoc]_, or K8s, is a production-grade container orchestration -platform for automating the deployment, scaling and operating -application containers. Kubernetes groups containers that make up an -application into logical units, pods, for easy management and discovery. -K8s pod definitions including compute resource allocation is provided in -.yaml files. - -CSIT uses K8s and its infrastructure components like etcd to control all -phases of container based virtualized network topologies. - -Ligato -~~~~~~ - -Ligato [ligato]_ is an open-source project developing a set of cloud-native -tools for orchestrating container networking. Ligato integrates with FD.io VPP -using goVPP [govpp]_ and vpp-agent [vppagent]_. - -**Known Issues** - -- Currently using a separate LF Jenkins job for building csit-centric - prod_vpp_agent docker images vs. dockerhub/ligato ones. - Implementation -------------- @@ -386,110 +359,30 @@ correct cpu placement. See documentation for the full reference. Kubernetes ~~~~~~~~~~ -Kubernetes is implemented as separate library ``KubernetesUtils.py``, -with a class with the same name. This utility provides an API for L2 -Robot Keywords to control ``kubectl`` installed on each of DUTs. One -time initialization script, ``resources/libraries/bash/k8s_setup.sh`` -does reset/init kubectl, applies Calico v2.6.3 and initializes the -``csit`` namespace. CSIT namespace is required to not to interfere with -existing setups and it further simplifies apply/get/delete -Pod/ConfigMap operations on SUTs. +For the future use, Kubernetes is implemented as separate library +``KubernetesUtils.py``, with a class with the same name. This utility provides +an API for L2 Robot Keywords to control ``kubectl`` installed on each of DUTs. +One time initialization script, ``resources/libraries/bash/k8s_setup.sh`` +does reset/init kubectl, and initializes the ``csit`` namespace. CSIT +namespace is required to not to interfere with existing setups and it +further simplifies apply/get/delete Pod/ConfigMap operations on SUTs. Kubernetes utility is based on YAML templates to avoid crafting the huge YAML configuration files, what would lower the readability of code and -requires complicated algorithms. The templates can be found in -``resources/templates/kubernetes`` and can be leveraged in the future -for other separate tasks. +requires complicated algorithms. Two types of YAML templates are defined: - Static - do not change between deployments, that is infrastructure containers like Kafka, Calico, ETCD. -- Dynamic - per test suite/case topology YAML files e.g. SFC_controller, - VNF, VSWITCH. +- Dynamic - per test suite/case topology YAML files. Making own python wrapper library of ``kubectl`` instead of using the official Python package allows to control and deploy environment over the SSH library without the need of using isolated driver running on each of DUTs. -Ligato -~~~~~~ - -Ligato integration does require to compile the ``vpp-agent`` tool and build the -bundled Docker image. Compilation of ``vpp-agent`` depends on specific VPP. In -``ligato/vpp-agent`` repository there are well prepared scripts for building the -Docker image. Building docker image is possible via series of commands: - -:: - - git clone https://github.com/ligato/vpp-agent - cd vpp_agent/docker/dev_vpp_agent - sudo docker build -t dev_vpp_agent --build-arg AGENT_COMMIT=<agent commit id>\ - --build-arg VPP_COMMIT=<vpp commit id> --no-cache . - sudo ./shrink.sh - cd ../prod_vpp_agent - sudo ./build.sh - sudo ./shrink.sh - -CSIT requires Docker image to include the desired VPP version (per patch -testing, nightly testing, on demand testing). - -The entire build process of building ``dev_vpp_agent`` image heavily depends -on internet connectivity and also takes a significant amount of time (~1-1.5h -based on internet bandwidth and allocated resources). The optimal solution would -be to build the image on jenkins slave, transfer the Docker image to DUTs and -execute separate suite of tests. - -To adress the amount of time required to build ``dev_vpp_agent`` image, we can -pull existing specific version of ```dev_vpp_agent``` and exctract the -```vpp-agent``` from it. - -We created separate sets of Jenkins jobs, that will be executing following: - -1. Clone latest CSIT and Ligato repositaries. -2. Pull specific version of ``dev_vpp_agent`` image from Dockerhub. -3. Extract VPP API (from ``.deb`` package) and copy into ``dev_vpp_agent`` - image -4. Rebuild vpp-agent and extract outside image. -5. Build ``prod_vpp_image`` Docker image from ``dev_vpp_agent`` image. -6. Transfer ``prod_vpp_agent`` image to DUTs. -7. Execute subset of performance tests designed for Ligato testing. - -:: - - +-----------------------------------------------+ - | ubuntu:16.04 <-----| Base image on Dockerhub - +------------------------^----------------------+ - | - | - +------------------------+----------------------+ - | ligato/dev_vpp_agent <------| Pull this image from - +------------------------^----------------------+ | Dockerhub ligato/dev_vpp_agent:<version> - | - | Rebuild and extract agent.tar.gz from dev_vpp_agent - +------------------------+----------------------+ - | prod_vpp_agent <------| Build by passing own - +-----------------------------------------------+ | vpp.tar.gz (from nexus - | or built by JJB) and - | agent.tar.gz extracted - | from ligato/dev_vpp_agent - - -Approximate size of vnf-agent docker images: - -:: - - REPOSITORY TAG IMAGE ID CREATED SIZE - dev-vpp-agent latest 78c53bd57e2 6 weeks ago 9.79GB - prod_vpp_agent latest f68af5afe601 5 weeks ago 443MB - -In CSIT we need to create separate performance suite under -``tests/kubernetes/perf`` which contains modified Suite setup in comparison -to standard perf tests. This is due to reason that VPP will act as vswitch in -Docker image and not as standalone installed service. - Tested Topologies ~~~~~~~~~~~~~~~~~ @@ -509,19 +402,6 @@ Following container networking topologies are tested in |csit-release|: - eth-l2xcbase-eth-2memif-1docker. - eth-l2xcbase-eth-1memif-1docker -- Kubernetes/Ligato topologies: - - - eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral - - eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz - - eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz - - eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain - - eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain - - eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral - - eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz - - eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz - - eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain - - eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain - References ~~~~~~~~~~ @@ -539,7 +419,3 @@ References .. [seccomp] `SECure COMPuting with filters <https://www.kernel.org/doc/Documentation/prctl/seccomp_filter.txt>`_. .. [docker] `Docker <https://www.docker.com/what-docker>`_. .. [k8sdoc] `Kubernetes documentation <https://kubernetes.io/docs/home/>`_. -.. [ligato] `Ligato <https://github.com/ligato>`_. -.. [govpp] `FD.io goVPP project <https://wiki.fd.io/view/GoVPP>`_. -.. [vppagent] `Ligato vpp-agent <https://github.com/ligato/vpp-agent>`_. -.. [imagevar] Image parameter is required in initial commit version. There is plan to implement container build class to build Docker/LXC image. diff --git a/docs/tag_documentation.rst b/docs/tag_documentation.rst index fd5b6c9d6e..6cca914811 100644 --- a/docs/tag_documentation.rst +++ b/docs/tag_documentation.rst @@ -767,20 +767,6 @@ Client-Workload Tags Container Orchestration Tags ---------------------------- -.. topic:: K8S - - All test cases which use Kubernetes for orchestration. - -.. topic:: SFC_CONTROLLER - - All test cases which use ligato/sfc_controller for driving configuration - of vpp inside container. - -.. topic:: VPP_AGENT - - All test cases which use Golang implementation of a control/management plane - for VPP - .. topic:: 1VSWITCH VPP running in Docker container acting as VSWITCH. diff --git a/resources/libraries/bash/function/gather.sh b/resources/libraries/bash/function/gather.sh index 1fc2d3e604..429a2cc91f 100644 --- a/resources/libraries/bash/function/gather.sh +++ b/resources/libraries/bash/function/gather.sh @@ -34,7 +34,7 @@ function gather_build () { # Functions called: # - die - Print to stderr and exit, defined in common.sh # - gather_os - Parse os parameter for OS/distro name. - # - gather_dpdk, gather_vpp, gather_ligato - See their definitions. + # - gather_dpdk, gather_vpp - See their definitions. # Multiple other side effects are possible, # see functions called from here for their current description. @@ -53,10 +53,6 @@ function gather_build () { DUT="vpp" gather_vpp || die "The function should have died on error." ;; - *"ligato"*) - DUT="kubernetes" - gather_ligato || die "The function should have died on error." - ;; *"dpdk"*) DUT="dpdk" gather_dpdk || die "The function should have died on error." @@ -115,133 +111,6 @@ function gather_dpdk () { } -function gather_ligato () { - - # Build docker image (with vpp, ligato and vpp-agent), - # and put it to ${DOWNLOAD_DIR}/. - # - # Access rights needed for: - # - "wget", "git clone", "dpdk -x", "cd" above ${CSIT_DIR}. - # - "sudo" without password. - # - With sudo: - # - "dpdk -i" is allowed. - # - "docker" commands have everything they needs. - # Variables read: - # - DOWNLOAD_DIR - Path to directory pybot takes the build to test from. - # - CSIT_DIR - Path to existing root of local CSIT git repository. - # Files read: - # - ${CSIT_DIR}/VPP_AGENT_STABLE_VER - Vpp agent version to use. - # Directories updated: - # - ${DOWNLOAD_DIR} - Docker image stored, VPP *.deb stored and deleted. - # - /tmp/vpp - VPP is unpacked there, not cleaned afterwards. - # - ${CSIT_DIR}/vpp-agent - Created, vpp-agent git repo si cloned there. - # - Also, various temporary files are stored there. - # System consequences: - # - Docker package is installed. - # - Presumably dockerd process is started. - # - The ligato/dev-vpp-agent docker image is downloaded. - # - Results of subsequent image manipulation are probably left lingering. - # Other hardcoded values: - # - Docker .deb file name to download and install. - # Functions called: - # - die - Print to stderr and exit, defined in common_functions.sh - # - gather_vpp - See eponymous fragment file assumend to be sourced already. - # TODO: What is the best order of description items? - - # TODO: Many of the following comments act as abstraction. - # But the abstracted blocks are mostly one-liners (plus "|| die"), - # so maybe it is not worth introducing fragments/functions for the blocks. - # TODO: This fragment is too long anyway, split it up. - - set -exuo pipefail - - gather_vpp || die "The function should have died on error." - - mkdir -p /tmp/vpp && rm -f /tmp/vpp/* || { - die "Failed to create temporary directory!" - } - dpkg -x "${DOWNLOAD_DIR}/vpp_"*".deb" "/tmp/vpp" || { - die "Failed to extract VPP packages for kubernetes!" - } - - ligato_repo_url="https://github.com/ligato/" - vpp_agent_stable_ver="$(< "${CSIT_DIR}/VPP_AGENT_STABLE_VER")" || { - die "Failed to read vpp-agent stable version!" - } - - # Clone & checkout stable vpp-agent. - cd "${CSIT_DIR}" || die "Change directory failed!" - git clone -b master --single-branch \ - "${ligato_repo_url}/vpp-agent" "vpp-agent" || { - die "Failed to run: git clone ${ligato_repo_url}/vpp-agent!" - } - cd "vpp-agent" || die "Change directory failed!" - - # Install Docker. - curl -fsSL https://get.docker.com | sudo bash || { - die "Failed to install Docker package!" - } - - # Pull ligato/dev_vpp_agent docker image and re-tag as local. - sudo docker pull "ligato/dev-vpp-agent:${vpp_agent_stable_ver}" || { - die "Failed to pull Docker image!" - } - params=(ligato/dev-vpp-agent:${vpp_agent_stable_ver} dev_vpp_agent:latest) - sudo docker tag "${params[@]}" || { - die "Failed to tag Docker image!" - } - - # Start dev_vpp_agent container as daemon. - sudo docker run --rm -itd --name "agentcnt" "dev_vpp_agent" bash || { - die "Failed to run Docker image!" - } - - # Copy latest vpp api into running container. - sudo docker exec agentcnt rm -rf "agentcnt:/usr/share/vpp/api" || { - die "Failed to remove previous API!" - } - sudo docker cp "/tmp/vpp/usr/share/vpp/api" "agentcnt:/usr/share/vpp" || { - die "Failed to copy files Docker image!" - } - - # Recompile vpp-agent. - script_arg=". ~/.bashrc; cd /go/src/github.com/ligato/vpp-agent" - script_arg+=" && make generate && make install" - sudo docker exec -i agentcnt script -qec "${script_arg}" || { - die "Failed to recompile vpp-agent in Docker image!" - } - # Make sure .deb files of other version are not present. - rm_cmd="rm -vf /opt/vpp-agent/dev/vpp/build-root/vpp*.deb /opt/vpp/*.deb" - sudo docker exec agentcnt bash -c "${rm_cmd}" || { - die "Failed to remove VPP debian packages!" - } - for f in "${DOWNLOAD_DIR}"/*; do - sudo docker cp "$f" "agentcnt:/opt/vpp-agent/dev/vpp/build-root"/ || { - die "Failed to copy files to Docker image!" - } - done - # Save container state. - sudo docker commit "$(sudo docker ps -q)" "dev_vpp_agent:latest" || { - die "Failed to commit state of Docker image!" - } - - # Build prod_vpp_agent docker image. - cd "docker/prod" || die "Change directory failed." - sudo docker build --tag "prod_vpp_agent" --no-cache "." || { - die "Failed to build Docker image!" - } - # Export Docker image. - sudo docker save "prod_vpp_agent" | gzip > "prod_vpp_agent.tar.gz" || { - die "Failed to save Docker image!" - } - docker_image="$(readlink -e "prod_vpp_agent.tar.gz")" || { - die "Failed to get Docker image path!" - } - rm -r "${DOWNLOAD_DIR}/vpp"* || die "Failed to remove VPP packages!" - mv "${docker_image}" "${DOWNLOAD_DIR}"/ || die "Failed to move image!" -} - - function gather_vpp () { # Variables read: @@ -269,7 +138,6 @@ function gather_vpp () { set -exuo pipefail case "${TEST_CODE}" in - # Not csit-vpp as this code is re-used by ligato gathering. "csit-"*) # Use downloaded packages with specific version. if [[ "${TEST_CODE}" == *"daily"* ]] || \ diff --git a/resources/libraries/robot/shared/default.robot b/resources/libraries/robot/shared/default.robot index 8bad73d70e..c0b61fcea9 100644 --- a/resources/libraries/robot/shared/default.robot +++ b/resources/libraries/robot/shared/default.robot @@ -369,70 +369,3 @@ | | Vpp Show Errors On All DUTs | ${nodes} | | Verify VPP PID in Teardown | | Clean Sockets On All Nodes | ${nodes} - -# TODO: Cleanup when ligato is gone. -| Create Kubernetes VSWITCH startup config on all DUTs -| | [Documentation] | Create base startup configuration of VSWITCH in Kubernetes -| | ... | deploy to all DUTs. -| | ... -| | ... | *Arguments:* -| | ... | - ${jumbo} - Jumbo packet. Type: boolean -| | ... | - ${phy_cores} - Physical cores. Type: integer -| | ... | - ${rxq} - RX queues. Type: integer -| | ... -| | ... | *Example:* -| | ... -| | ... | \| Create Kubernetes VSWITCH startup config on all DUTs \| ${True} \ -| | ... | \| ${1} \| ${1} -| | ... -| | [Arguments] | ${phy_cores} | ${rx_queues}=${None} | ${jumbo}=${False} -| | ... -| | ${cpu_count_int} | Convert to Integer | ${phy_cores} -| | ${thr_count_int} | Convert to Integer | ${phy_cores} -| | :FOR | ${dut} | IN | @{duts} -| | | ${numa}= | Get interfaces numa node | ${nodes['${dut}']} -| | | ... | ${${dut}_if1} | ${${dut}_if2} -| | | ${smt_used}= | Is SMT enabled | ${nodes['${dut}']['cpuinfo']} -| | | ${if1_pci}= | Get Interface PCI Addr | ${nodes['${dut}']} | ${${dut}_if1} -| | | ${if2_pci}= | Get Interface PCI Addr | ${nodes['${dut}']} | ${${dut}_if2} -| | | ${thr_count_int}= | Run keyword if | ${smt_used} -| | | ... | Evaluate | int(${cpu_count_int}*2) -| | | ... | ELSE | Set variable | ${thr_count_int} -| | | ${rxq_count_int}= | Run keyword if | ${rx_queues} -| | | ... | Set variable | ${rx_queues} -| | | ... | ELSE | Evaluate | int(${thr_count_int}/2) -| | | ${rxq_count_int}= | Run keyword if | ${rxq_count_int} == 0 -| | | ... | Set variable | ${1} -| | | ... | ELSE | Set variable | ${rxq_count_int} -| | | ${config}= | Run keyword | Create Kubernetes VSWITCH startup config -| | | ... | node=${nodes['${dut}']} | phy_cores=${phy_cores} -| | | ... | cpu_node=${numa} | jumbo=${jumbo} | rxq_count_int=${rxq_count_int} -| | | ... | buffers_per_numa=${215040} -| | | ... | filename=/tmp/vswitch.conf | if1=${if1_pci} | if2=${if2_pci} -| | | Run keyword if | ${thr_count_int} > 1 -| | | ... | Set Tags | MTHREAD | ELSE | Set Tags | STHREAD -| | | Set Tags | ${thr_count_int}T${cpu_count_int}C -| | Set Test Variable | ${smt_used} -| | Set Test Variable | ${thr_count_int} -| | Set Test Variable | ${cpu_count_int} -| | Set Test Variable | ${rxq_count_int} - -# TODO: Cleanup when ligato is gone. -| Create Kubernetes VNF'${i}' startup config on all DUTs -| | [Documentation] | Create base startup configuration of VNF in Kubernetes -| | ... | deploy to all DUTs. -| | ... -| | ${i_int}= | Convert To Integer | ${i} -| | ${cpu_skip}= | Evaluate | ${vswitch_cpus}+${system_cpus} -| | ${dut1_numa}= | Get interfaces numa node | ${dut1} -| | ... | ${dut1_if1} | ${dut1_if2} -| | ${dut2_numa}= | Get interfaces numa node | ${dut2} -| | ... | ${dut2_if1} | ${dut2_if2} -| | ${config}= | Run keyword | Create Kubernetes VNF startup config -| | ... | node=${dut1} | phy_cores=${vnf_cpus} | cpu_node=${dut1_numa} -| | ... | cpu_skip=${cpu_skip} | filename=/tmp/vnf${i}.conf -| | ... | i=${i_int} -| | ${config}= | Run keyword | Create Kubernetes VNF startup config -| | ... | node=${dut2} | phy_cores=${vnf_cpus} | cpu_node=${dut2_numa} -| | ... | cpu_skip=${cpu_skip} | filename=/tmp/vnf${i}.conf -| | ... | i=${i_int} diff --git a/resources/libraries/robot/shared/test_setup.robot b/resources/libraries/robot/shared/test_setup.robot index 17e9e6c459..c90ed68a79 100644 --- a/resources/libraries/robot/shared/test_setup.robot +++ b/resources/libraries/robot/shared/test_setup.robot @@ -39,19 +39,3 @@ | | ... | | :FOR | ${dut} | IN | @{duts} | | | Clean Up Namespaces | ${nodes['${dut}']} - -| Additional Test Setup Action For ligato -| | [Documentation] -| | ... | Additional Setup for tests which uses Ligato Kubernetes. -| | ... -| | Apply Kubernetes resource on all duts | ${nodes} | namespaces/csit.yaml -| | Apply Kubernetes resource on all duts | ${nodes} | pods/kafka.yaml -| | Apply Kubernetes resource on all duts | ${nodes} | pods/etcdv3.yaml -| | Apply Kubernetes resource on all duts | ${nodes} -| | ... | configmaps/vswitch-agent-cfg.yaml -| | Apply Kubernetes resource on all duts | ${nodes} -| | ... | configmaps/vnf-agent-cfg.yaml -| | Apply Kubernetes resource on all duts | ${nodes} -| | ... | pods/contiv-sfc-controller.yaml -| | Apply Kubernetes resource on all duts | ${nodes} -| | ... | pods/contiv-vswitch.yaml diff --git a/resources/libraries/robot/shared/test_teardown.robot b/resources/libraries/robot/shared/test_teardown.robot index 0beeff4484..336cff5dad 100644 --- a/resources/libraries/robot/shared/test_teardown.robot +++ b/resources/libraries/robot/shared/test_teardown.robot @@ -129,13 +129,3 @@ | | ... | Show SR Steering Policies on all DUTs | ${nodes} | | Run Keyword If Test Failed | | ... | Show SR LocalSIDs on all DUTs | ${nodes} - -| Additional Test Tear Down Action For ligato -| | [Documentation] -| | ... | Additional teardown for performance tests with Ligato. -| | ... -| | Run Keyword If Test Failed -| | ... | Get Kubernetes logs on all DUTs | ${nodes} | csit -| | Run Keyword If Test Failed -| | ... | Describe Kubernetes resource on all DUTs | ${nodes} | csit -| | Delete Kubernetes resource on all DUTs | ${nodes} | csit diff --git a/resources/templates/kubernetes/calico_v2.6.3.yaml b/resources/templates/kubernetes/calico_v2.6.3.yaml deleted file mode 100644 index c77b19cccc..0000000000 --- a/resources/templates/kubernetes/calico_v2.6.3.yaml +++ /dev/null @@ -1,459 +0,0 @@ -# Calico Version v2.6.3 -# https://docs.projectcalico.org/v2.6/releases#v2.6.3 -# This manifest includes the following component versions: -# calico/node:v2.6.3 -# calico/cni:v1.11.1 -# calico/kube-controllers:v1.0.1 - -# This ConfigMap is used to configure a self-hosted Calico installation. -kind: ConfigMap -apiVersion: v1 -metadata: - name: calico-config - namespace: kube-system -data: - # The location of your etcd cluster. This uses the Service clusterIP - # defined below. - etcd_endpoints: "http://10.96.232.136:6666" - - # Configure the Calico backend to use. - calico_backend: "bird" - - # The CNI network configuration to install on each node. - cni_network_config: |- - { - "name": "k8s-pod-network", - "cniVersion": "0.1.0", - "type": "calico", - "etcd_endpoints": "__ETCD_ENDPOINTS__", - "log_level": "info", - "mtu": 1500, - "ipam": { - "type": "calico-ipam" - }, - "policy": { - "type": "k8s", - "k8s_api_root": "https://__KUBERNETES_SERVICE_HOST__:__KUBERNETES_SERVICE_PORT__", - "k8s_auth_token": "__SERVICEACCOUNT_TOKEN__" - }, - "kubernetes": { - "kubeconfig": "/etc/cni/net.d/__KUBECONFIG_FILENAME__" - } - } - ---- - -# This manifest installs the Calico etcd on the kubeadm master. This uses a DaemonSet -# to force it to run on the master even when the master isn't schedulable, and uses -# nodeSelector to ensure it only runs on the master. -apiVersion: extensions/v1beta1 -kind: DaemonSet -metadata: - name: calico-etcd - namespace: kube-system - labels: - k8s-app: calico-etcd -spec: - template: - metadata: - labels: - k8s-app: calico-etcd - annotations: - # Mark this pod as a critical add-on; when enabled, the critical add-on scheduler - # reserves resources for critical add-on pods so that they can be rescheduled after - # a failure. This annotation works in tandem with the toleration below. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - # Only run this pod on the master. - tolerations: - # this taint is set by all kubelets running `--cloud-provider=external` - # so we should tolerate it to schedule the calico pods - - key: node.cloudprovider.kubernetes.io/uninitialized - value: "true" - effect: NoSchedule - - key: node-role.kubernetes.io/master - effect: NoSchedule - # Allow this pod to be rescheduled while the node is in "critical add-ons only" mode. - # This, along with the annotation above marks this pod as a critical add-on. - - key: CriticalAddonsOnly - operator: Exists - nodeSelector: - node-role.kubernetes.io/master: "" - hostNetwork: true - containers: - - name: calico-etcd - image: quay.io/coreos/etcd:v3.1.10 - env: - - name: CALICO_ETCD_IP - valueFrom: - fieldRef: - fieldPath: status.podIP - command: ["/bin/sh","-c"] - args: ["/usr/local/bin/etcd --name=calico --data-dir=/var/etcd/calico-data --advertise-client-urls=http://$CALICO_ETCD_IP:6666 --listen-client-urls=http://0.0.0.0:6666 --listen-peer-urls=http://0.0.0.0:6667"] - volumeMounts: - - name: var-etcd - mountPath: /var/etcd - volumes: - - name: var-etcd - hostPath: - path: /var/etcd - ---- - -# This manifest installs the Service which gets traffic to the Calico -# etcd. -apiVersion: v1 -kind: Service -metadata: - labels: - k8s-app: calico-etcd - name: calico-etcd - namespace: kube-system -spec: - # Select the calico-etcd pod running on the master. - selector: - k8s-app: calico-etcd - # This ClusterIP needs to be known in advance, since we cannot rely - # on DNS to get access to etcd. - clusterIP: 10.96.232.136 - ports: - - port: 6666 - ---- - -# This manifest installs the calico/node container, as well -# as the Calico CNI plugins and network config on -# each master and worker node in a Kubernetes cluster. -kind: DaemonSet -apiVersion: extensions/v1beta1 -metadata: - name: calico-node - namespace: kube-system - labels: - k8s-app: calico-node -spec: - selector: - matchLabels: - k8s-app: calico-node - template: - metadata: - labels: - k8s-app: calico-node - annotations: - # Mark this pod as a critical add-on; when enabled, the critical add-on scheduler - # reserves resources for critical add-on pods so that they can be rescheduled after - # a failure. This annotation works in tandem with the toleration below. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - hostNetwork: true - tolerations: - # this taint is set by all kubelets running `--cloud-provider=external` - # so we should tolerate it to schedule the calico pods - - key: node.cloudprovider.kubernetes.io/uninitialized - value: "true" - effect: NoSchedule - - key: node-role.kubernetes.io/master - effect: NoSchedule - # Allow this pod to be rescheduled while the node is in "critical add-ons only" mode. - # This, along with the annotation above marks this pod as a critical add-on. - - key: CriticalAddonsOnly - operator: Exists - serviceAccountName: calico-cni-plugin - # Minimize downtime during a rolling upgrade or deletion; tell Kubernetes to do a "force - # deletion": https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods. - terminationGracePeriodSeconds: 0 - containers: - # Runs calico/node container on each Kubernetes node. This - # container programs network policy and routes on each - # host. - - name: calico-node - image: quay.io/calico/node:v2.6.3 - env: - # The location of the Calico etcd cluster. - - name: ETCD_ENDPOINTS - valueFrom: - configMapKeyRef: - name: calico-config - key: etcd_endpoints - # Enable BGP. Disable to enforce policy only. - - name: CALICO_NETWORKING_BACKEND - valueFrom: - configMapKeyRef: - name: calico-config - key: calico_backend - # Cluster type to identify the deployment type - - name: CLUSTER_TYPE - value: "kubeadm,bgp" - # Set noderef for node controller. - - name: CALICO_K8S_NODE_REF - valueFrom: - fieldRef: - fieldPath: spec.nodeName - # Disable file logging so `kubectl logs` works. - - name: CALICO_DISABLE_FILE_LOGGING - value: "true" - # Set Felix endpoint to host default action to ACCEPT. - - name: FELIX_DEFAULTENDPOINTTOHOSTACTION - value: "ACCEPT" - # Configure the IP Pool from which Pod IPs will be chosen. - - name: CALICO_IPV4POOL_CIDR - value: "192.168.0.0/16" - - name: CALICO_IPV4POOL_IPIP - value: "always" - # Disable IPv6 on Kubernetes. - - name: FELIX_IPV6SUPPORT - value: "false" - # Set MTU for tunnel device used if ipip is enabled - - name: FELIX_IPINIPMTU - value: "1440" - # Set Felix logging to "info" - - name: FELIX_LOGSEVERITYSCREEN - value: "info" - # Auto-detect the BGP IP address. - - name: IP - value: "" - - name: FELIX_HEALTHENABLED - value: "true" - securityContext: - privileged: true - resources: - requests: - cpu: 250m - livenessProbe: - httpGet: - path: /liveness - port: 9099 - periodSeconds: 10 - initialDelaySeconds: 10 - failureThreshold: 6 - readinessProbe: - httpGet: - path: /readiness - port: 9099 - periodSeconds: 10 - volumeMounts: - - mountPath: /lib/modules - name: lib-modules - readOnly: true - - mountPath: /var/run/calico - name: var-run-calico - readOnly: false - # This container installs the Calico CNI binaries - # and CNI network config file on each node. - - name: install-cni - image: quay.io/calico/cni:v1.11.1 - command: ["/install-cni.sh"] - env: - # The location of the Calico etcd cluster. - - name: ETCD_ENDPOINTS - valueFrom: - configMapKeyRef: - name: calico-config - key: etcd_endpoints - # The CNI network config to install on each node. - - name: CNI_NETWORK_CONFIG - valueFrom: - configMapKeyRef: - name: calico-config - key: cni_network_config - volumeMounts: - - mountPath: /host/opt/cni/bin - name: cni-bin-dir - - mountPath: /host/etc/cni/net.d - name: cni-net-dir - volumes: - # Used by calico/node. - - name: lib-modules - hostPath: - path: /lib/modules - - name: var-run-calico - hostPath: - path: /var/run/calico - # Used to install CNI. - - name: cni-bin-dir - hostPath: - path: /opt/cni/bin - - name: cni-net-dir - hostPath: - path: /etc/cni/net.d - ---- - -# This manifest deploys the Calico Kubernetes controllers. -# See https://github.com/projectcalico/kube-controllers -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: calico-kube-controllers - namespace: kube-system - labels: - k8s-app: calico-kube-controllers -spec: - # The controllers can only have a single active instance. - replicas: 1 - strategy: - type: Recreate - template: - metadata: - name: calico-kube-controllers - namespace: kube-system - labels: - k8s-app: calico-kube-controllers - annotations: - # Mark this pod as a critical add-on; when enabled, the critical add-on scheduler - # reserves resources for critical add-on pods so that they can be rescheduled after - # a failure. This annotation works in tandem with the toleration below. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - # The controllers must run in the host network namespace so that - # it isn't governed by policy that would prevent it from working. - hostNetwork: true - tolerations: - # this taint is set by all kubelets running `--cloud-provider=external` - # so we should tolerate it to schedule the calico pods - - key: node.cloudprovider.kubernetes.io/uninitialized - value: "true" - effect: NoSchedule - - key: node-role.kubernetes.io/master - effect: NoSchedule - # Allow this pod to be rescheduled while the node is in "critical add-ons only" mode. - # This, along with the annotation above marks this pod as a critical add-on. - - key: CriticalAddonsOnly - operator: Exists - serviceAccountName: calico-kube-controllers - containers: - - name: calico-kube-controllers - image: quay.io/calico/kube-controllers:v1.0.1 - env: - # The location of the Calico etcd cluster. - - name: ETCD_ENDPOINTS - valueFrom: - configMapKeyRef: - name: calico-config - key: etcd_endpoints - # The location of the Kubernetes API. Use the default Kubernetes - # service for API access. - - name: K8S_API - value: "https://kubernetes.default:443" - # Choose which controllers to run. - - name: ENABLED_CONTROLLERS - value: policy,profile,workloadendpoint,node - # Since we're running in the host namespace and might not have KubeDNS - # access, configure the container's /etc/hosts to resolve - # kubernetes.default to the correct service clusterIP. - - name: CONFIGURE_ETC_HOSTS - value: "true" - ---- - -# This deployment turns off the old "policy-controller". It should remain at 0 replicas, and then -# be removed entirely once the new kube-controllers deployment has been deployed above. -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: calico-policy-controller - namespace: kube-system - labels: - k8s-app: calico-policy-controller -spec: - # Turn this deployment off in favor of the kube-controllers deployment above. - replicas: 0 - strategy: - type: Recreate - template: - metadata: - name: calico-policy-controller - namespace: kube-system - labels: - k8s-app: calico-policy-controller - spec: - hostNetwork: true - serviceAccountName: calico-kube-controllers - containers: - - name: calico-policy-controller - image: quay.io/calico/kube-controllers:v1.0.1 - env: - - name: ETCD_ENDPOINTS - valueFrom: - configMapKeyRef: - name: calico-config - key: etcd_endpoints - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: calico-cni-plugin -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: calico-cni-plugin -subjects: -- kind: ServiceAccount - name: calico-cni-plugin - namespace: kube-system - ---- - -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: calico-cni-plugin -rules: - - apiGroups: [""] - resources: - - pods - - nodes - verbs: - - get - ---- - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: calico-cni-plugin - namespace: kube-system - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: calico-kube-controllers -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: calico-kube-controllers -subjects: -- kind: ServiceAccount - name: calico-kube-controllers - namespace: kube-system - ---- - -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: calico-kube-controllers -rules: - - apiGroups: - - "" - - extensions - resources: - - pods - - namespaces - - networkpolicies - - nodes - verbs: - - watch - - list - ---- - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: calico-kube-controllers - namespace: kube-system diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral.yaml deleted file mode 100644 index fd457dd4a7..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral.yaml +++ /dev/null @@ -1,83 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2mp # bridge eth1 to vnf port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - l2bd: - name: eth1-vnf-port1 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2mp # bridge eth2 to vnf port 2 - pod_interfaces: - - vnf1/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ - l2bd: - name: eth2-vnf-port2 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true
\ No newline at end of file diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz.yaml deleted file mode 100644 index 7cb107dae7..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz.yaml +++ /dev/null @@ -1,105 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2mp # bridge eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - l2bd: - name: eth1-vnf-port1 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2mp # bridge eth2 to vnf2 port 2 - pod_interfaces: - - vnf2/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ - l2bd: - name: eth2-vnf-port2 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz.yaml deleted file mode 100644 index af11149288..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz.yaml +++ /dev/null @@ -1,152 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - pod: vnf3 - node: vswitch - - pod: vnf4 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf3 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf4 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2mp # bridge eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - l2bd: - name: eth1-vnf-port1 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf2 to vnf3 - - vnf2/port2 - - vnf3/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf3 - - vnf3/port1 - - vnf3/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf3 to vnf4 - - vnf3/port2 - - vnf4/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf4 - - vnf4/port1 - - vnf4/port2 - - - conn_type: l2mp # bridge eth2 to vnf4 port 2 - pod_interfaces: - - vnf4/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ - l2bd: - name: eth2-vnf-port2 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain.yaml deleted file mode 100644 index d52b7f7310..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain.yaml +++ /dev/null @@ -1,106 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2mp # bridge eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - l2bd: - name: eth1-vnf-port1 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2mp # bridge eth2 to vnf2 port 2 - pod_interfaces: - - vnf2/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ - l2bd: - name: eth2-vnf-port2 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain.yaml deleted file mode 100644 index 317f282935..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain.yaml +++ /dev/null @@ -1,152 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - pod: vnf3 - node: vswitch - - pod: vnf4 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf3 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf4 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2mp # bridge eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - l2bd: - name: eth1-vnf-port1 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf2 to vnf3 - - vnf2/port2 - - vnf3/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf3 - - vnf3/port1 - - vnf3/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf3 to vnf4 - - vnf3/port2 - - vnf4/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf4 - - vnf4/port1 - - vnf4/port2 - - - conn_type: l2mp # bridge eth2 to vnf4 port 2 - pod_interfaces: - - vnf4/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ - l2bd: - name: eth2-vnf-port2 - bd_parms: - flood: true - unknown_unicast_flood: true - forward: true - learn: true diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral.yaml deleted file mode 100644 index 42f7f8cfd8..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral.yaml +++ /dev/null @@ -1,69 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2pp # l2x eth1 to vnf port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp # l2x eth2 to vnf port 2 - pod_interfaces: - - vnf1/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz.yaml deleted file mode 100644 index 9d8d700d48..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz.yaml +++ /dev/null @@ -1,92 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2pp # l2x eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2mp # l2x eth2 to vnf2 port 2 - pod_interfaces: - - vnf2/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ - diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz.yaml deleted file mode 100644 index 5d113f6943..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz.yaml +++ /dev/null @@ -1,138 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - pod: vnf3 - node: vswitch - - pod: vnf4 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf3 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf4 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2pp # l2x eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf2 to vnf3 - - vnf2/port2 - - vnf3/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf3 - - vnf3/port1 - - vnf3/port2 - - - conn_type: l2pp - conn_method: direct - pod_interfaces: # direct memif between vnf3 to vnf4 - - vnf3/port2 - - vnf4/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf4 - - vnf4/port1 - - vnf4/port2 - - - conn_type: l2pp # l2x eth2 to vnf4 port 2 - pod_interfaces: - - vnf4/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain.yaml deleted file mode 100644 index 8d4c28d7cf..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain.yaml +++ /dev/null @@ -1,92 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - - connections: - - - conn_type: l2pp # l2x eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2pp # l2x eth2 to vnf2 port 2 - pod_interfaces: - - vnf2/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ diff --git a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain.yaml b/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain.yaml deleted file mode 100644 index 2716446b2f..0000000000 --- a/resources/templates/kubernetes/configmaps/eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain.yaml +++ /dev/null @@ -1,150 +0,0 @@ ---- -apiVersion: v1 -kind: ConfigMap -metadata: - name: sfc-controller-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - sfc.conf: | - sfc_controller_config_version: 2 - description: $$TEST_NAME$$ - - system_parameters: - mtu: 9000 - - network_pod_to_node_map: - - pod: vnf1 - node: vswitch - - pod: vnf2 - node: vswitch - - pod: vnf3 - node: vswitch - - pod: vnf4 - node: vswitch - - network_nodes: - - metadata: - name: vswitch - spec: - node_type: host - interfaces: - - name: $$VSWITCH_IF1$$ - if_type: ethernet - - name: $$VSWITCH_IF2$$ - if_type: ethernet - - network_services: - - metadata: - name: my-network-service - spec: - network_pods: - - - metadata: - name: vnf1 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - - name: port2 - if_type: memif - memif_parms: - inter_pod_conn: vswitch - - - metadata: - name: vnf2 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - memif_parms: - inter_pod_conn: vswitch - - name: port2 - if_type: memif - memif_parms: - inter_pod_conn: vswitch - - - metadata: - name: vnf3 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - memif_parms: - inter_pod_conn: vswitch - - name: port2 - if_type: memif - memif_parms: - inter_pod_conn: vswitch - - - metadata: - name: vnf4 - spec: - pod_type: vppcontainer - interfaces: - - name: port1 - if_type: memif - memif_parms: - inter_pod_conn: vswitch - - name: port2 - if_type: memif - - connections: - - - conn_type: l2pp # l2x eth1 to vnf1 port 1 - pod_interfaces: - - vnf1/port1 - node_interfaces: - - vswitch/$$VSWITCH_IF1$$ - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf1 - - vnf1/port1 - - vnf1/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf1 to vnf2 - - vnf1/port2 - - vnf2/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf2 - - vnf2/port1 - - vnf2/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf2 to vnf3 - - vnf2/port2 - - vnf3/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf3 - - vnf3/port1 - - vnf3/port2 - - - conn_type: l2pp - conn_method: vswitch - pod_interfaces: # memif via vswitch between vnf3 to vnf4 - - vnf3/port2 - - vnf4/port1 - - - conn_type: l2pp - pod_interfaces: # l2x the ports on vnf4 - - vnf4/port1 - - vnf4/port2 - - - conn_type: l2pp # l2x eth2 to vnf4 port 2 - pod_interfaces: - - vnf4/port2 - node_interfaces: - - vswitch/$$VSWITCH_IF2$$ diff --git a/resources/templates/kubernetes/configmaps/vnf-agent-cfg.yaml b/resources/templates/kubernetes/configmaps/vnf-agent-cfg.yaml deleted file mode 100644 index 619639f980..0000000000 --- a/resources/templates/kubernetes/configmaps/vnf-agent-cfg.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: vnf-agent-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - telemetry.conf: | - polling-interval: 30000000000 - disabled: true diff --git a/resources/templates/kubernetes/configmaps/vswitch-agent-cfg.yaml b/resources/templates/kubernetes/configmaps/vswitch-agent-cfg.yaml deleted file mode 100644 index 4c8122f239..0000000000 --- a/resources/templates/kubernetes/configmaps/vswitch-agent-cfg.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: vswitch-agent-cfg - namespace: csit -data: - etcd.conf: | - insecure-transport: true - dial-timeout: 1000000000 - endpoints: - - "172.17.0.1:22379" - - telemetry.conf: | - polling-interval: 30000000000 - disabled: true diff --git a/resources/templates/kubernetes/namespaces/csit.yaml b/resources/templates/kubernetes/namespaces/csit.yaml deleted file mode 100644 index 4ae72063e7..0000000000 --- a/resources/templates/kubernetes/namespaces/csit.yaml +++ /dev/null @@ -1,4 +0,0 @@ -apiVersion: v1 -kind: Namespace -metadata: - name: csit diff --git a/resources/templates/kubernetes/pods/contiv-sfc-controller.yaml b/resources/templates/kubernetes/pods/contiv-sfc-controller.yaml deleted file mode 100644 index 9fbb0e950c..0000000000 --- a/resources/templates/kubernetes/pods/contiv-sfc-controller.yaml +++ /dev/null @@ -1,21 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: sfc-controller - namespace: csit -spec: - containers: - - name: "sfc-controller" - image: ligato/prod_sfc_controller:v0.0.1-102-gc74fec6 - imagePullPolicy: Always - command: - - /bin/sfc-controller - - -etcd-config=/opt/sfc-controller/dev/etcd.conf - - -sfc-config=/opt/sfc-controller/dev/sfc.conf - volumeMounts: - - name: controller-config - mountPath: /opt/sfc-controller/dev - volumes: - - name: controller-config - configMap: - name: sfc-controller-cfg diff --git a/resources/templates/kubernetes/pods/contiv-vnf.yaml b/resources/templates/kubernetes/pods/contiv-vnf.yaml deleted file mode 100644 index ee3f447e6a..0000000000 --- a/resources/templates/kubernetes/pods/contiv-vnf.yaml +++ /dev/null @@ -1,47 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: $$VNF$$-vpp - namespace: csit -spec: - containers: - - name: $$VNF$$ - image: prod_vpp_agent - imagePullPolicy: IfNotPresent - securityContext: - privileged: true - ports: - - containerPort: 5002 - - containerPort: 9191 - readinessProbe: - httpGet: - path: /readiness - port: 9191 - periodSeconds: 1 - livenessProbe: - httpGet: - path: /liveness - port: 9191 - initialDelaySeconds: 15 - env: - - name: MICROSERVICE_LABEL - value: $$VNF$$ - - name: INITIAL_LOGLVL - value: debug - volumeMounts: - - name: vpp-config - mountPath: /etc/vpp - - name: agent-config - mountPath: /opt/vpp-agent/dev - - name: memif-sockets - mountPath: /tmp - volumes: - - name: vpp-config - configMap: - name: $$VNF$$-vpp-cfg - - name: agent-config - configMap: - name: vnf-agent-cfg - - name: memif-sockets - hostPath: - path: /tmp diff --git a/resources/templates/kubernetes/pods/contiv-vswitch.yaml b/resources/templates/kubernetes/pods/contiv-vswitch.yaml deleted file mode 100644 index e987307195..0000000000 --- a/resources/templates/kubernetes/pods/contiv-vswitch.yaml +++ /dev/null @@ -1,54 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: vswitch-vpp - namespace: csit -spec: - hostNetwork: true - containers: - - name: "vswitch" - image: prod_vpp_agent - imagePullPolicy: IfNotPresent - securityContext: - privileged: true - ports: - - containerPort: 5002 - - containerPort: 9191 - readinessProbe: - httpGet: - path: /readiness - port: 9191 - periodSeconds: 1 - livenessProbe: - httpGet: - path: /liveness - port: 9191 - periodSeconds: 1 - initialDelaySeconds: 15 - env: - - name: MICROSERVICE_LABEL - value: vswitch - - name: INITIAL_LOGLVL - value: debug - volumeMounts: - - name: vpp-config - mountPath: /etc/vpp - - name: agent-config - mountPath: /opt/vpp-agent/dev - - name: memif-sockets - mountPath: /tmp - - name: device-uio - mountPath: /dev - volumes: - - name: vpp-config - configMap: - name: vswitch-vpp-cfg - - name: agent-config - configMap: - name: vswitch-agent-cfg - - name: memif-sockets - hostPath: - path: /tmp - - name: device-uio - hostPath: - path: /dev diff --git a/resources/templates/kubernetes/pods/etcdv3.yaml b/resources/templates/kubernetes/pods/etcdv3.yaml deleted file mode 100644 index f5f6b32435..0000000000 --- a/resources/templates/kubernetes/pods/etcdv3.yaml +++ /dev/null @@ -1,25 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: etcdv3 - namespace: csit -spec: - hostNetwork: true - containers: - - image: quay.io/coreos/etcd:v3.0.16 - name: etcdv3 - command: - - /usr/local/bin/etcd - - --advertise-client-urls - - http://0.0.0.0:22379 - - --listen-client-urls - - http://0.0.0.0:22379 - - --listen-peer-urls - - http://0.0.0.0:22380 - ports: - - containerPort: 22379 - hostPort: 22379 - name: serverport - env: - - name: ETCDCTL_API - value: "3" diff --git a/resources/templates/kubernetes/pods/kafka.yaml b/resources/templates/kubernetes/pods/kafka.yaml deleted file mode 100644 index 0bb8f1e5d7..0000000000 --- a/resources/templates/kubernetes/pods/kafka.yaml +++ /dev/null @@ -1,22 +0,0 @@ -apiVersion: v1 -kind: Pod -metadata: - name: kafka - namespace: csit -spec: - hostNetwork: true - containers: - - image: spotify/kafka - name: kafka - ports: - - containerPort: 2181 - hostPort: 2181 - name: zookeeper - - containerPort: 9092 - hostPort: 9092 - name: kafka - env: - - name: ADVERTISED_HOST - value: "172.17.0.1" - - name: ADVERTISED_PORT - value: "9092" diff --git a/resources/tools/presentation/conf.py b/resources/tools/presentation/conf.py index 1b9ace729a..49cd975d8e 100644 --- a/resources/tools/presentation/conf.py +++ b/resources/tools/presentation/conf.py @@ -101,7 +101,6 @@ rst_epilog = """ .. _FD.io test executor vpp performance job 3n-tsh: https://jenkins.fd.io/view/csit/job/csit-vpp-perf-verify-{srelease}-3n-tsh .. _FD.io test executor vpp performance job 3n-dnv: https://jenkins.fd.io/view/csit/job/csit-vpp-perf-verify-{srelease}-3n-dnv .. _FD.io test executor vpp performance job 2n-dnv: https://jenkins.fd.io/view/csit/job/csit-vpp-perf-verify-{srelease}-2n-dnv -.. _FD.io test executor ligato performance jobs: https://jenkins.fd.io/job/csit-ligato-perf-{srelease}-all .. _FD.io test executor vpp functional jobs using Ubuntu: https://jenkins.fd.io/view/csit/job/csit-vpp-functional-{srelease}-ubuntu1604-virl .. _FD.io test executor vpp functional jobs using CentOs: https://jenkins.fd.io/view/csit/job/csit-vpp-functional-{srelease}-centos7-virl .. _FD.io test executor vpp device jobs using Ubuntu: https://jenkins.fd.io/view/csit/job/csit-vpp-device-{srelease}-ubuntu1804-1n-skx diff --git a/tests/kubernetes/perf/__init__.robot b/tests/kubernetes/perf/__init__.robot deleted file mode 100644 index 790a85be0f..0000000000 --- a/tests/kubernetes/perf/__init__.robot +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright (c) 2018 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Variables | resources/libraries/python/topology.py -| Library | resources.libraries.python.CpuUtils -| Library | resources.libraries.python.DUTSetup -| Library | resources.libraries.python.InterfaceUtil -| Library | resources.libraries.python.KubernetesUtils -| Library | resources.libraries.python.NodePath -| Library | resources.libraries.python.SchedUtils -| Library | resources.libraries.python.SetupFramework -| Library | resources.libraries.python.SetupFramework.CleanupFramework -| Library | resources.libraries.python.topology.Topology -| Library | Collections -| Suite Setup | Run Keywords | Setup performance global Variables -| ... | AND | Setup Framework | ${nodes} -| ... | AND | Load Docker image on all duts | ${nodes} -| ... | ${dcr_image} -| ... | AND | Setup Kubernetes on all duts | ${nodes} -| ... | AND | Get CPU Info from All Nodes | ${nodes} -| ... | AND | Update all numa nodes | ${nodes} -| ... | skip_tg=${True} -| ... | AND | Update NIC interface names on all duts | ${nodes} -| Suite Teardown | Run Keywords | Destroy Kubernetes on all duts | ${nodes} -| ... | AND | Cleanup Framework | ${nodes} - -*** Keywords *** -| Setup performance global Variables -| | [Documentation] -| | ... | Setup suite Variables. Variables are used across performance testing. -| | ... -| | ... | _NOTE:_ This KW sets following suite variables: -| | ... | - dcr_image - vpp-agent docker image -| | ... | - pkt_trace - Switch to enable packet trace for test -| | ... | - dut_stats - Switch to enable DUT statistics -| | ... | - uio_driver - Default UIO driver -| | ... | - plugins_to_enable - List of plugins to be enabled for test -| | ... -| | Set Global Variable | ${dcr_image} -| | ... | /tmp/openvpp-testing/download_dir/prod_vpp_agent.tar.gz -| | Set Global Variable | ${pkt_trace} | ${False} -| | Set Global Variable | ${dut_stats} | ${False} -| | @{plugins_to_enable}= | Create List | dpdk_plugin.so -| | Set Global Variable | @{plugins_to_enable} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr.robot deleted file mode 100644 index 5110419103..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr.robot +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | L2BDBASE | BASE | MEMIF -| ... | K8S | 1VSWITCH | 1VNF | VPP_AGENT | SFC_CONTROLLER | PARALLEL -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with two L2 -| ... | bridge domains and MAC learning enabled. DUT1 and DUT2 tested with -| ... | ${nic_name}.\ -| ... | VNF Container is connected to VSWITCH container via Memif interface. All -| ... | containers is running same VPP version. Containers are deployed with -| ... | Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2bdbasemaclrn-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr.robot deleted file mode 100644 index abaf83ebd7..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr.robot +++ /dev/null @@ -1,165 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | L2BDBASE | SCALE | MEMIF -| ... | K8S | 1VSWITCH | 2VNF | VPP_AGENT | SFC_CONTROLLER | HORIZONTAL -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with two L2 -| ... | bridge domains and MAC learning enabled. DUT1 and DUT2 tested with -| ... | ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2bdbasemaclrn-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr.robot deleted file mode 100644 index 0fd00e52e3..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr.robot +++ /dev/null @@ -1,179 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | L2BDBASE | SCALE | MEMIF -| ... | K8S | 1VSWITCH | 4VNF | VPP_AGENT | SFC_CONTROLLER | HORIZONTAL -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with two L2 -| ... | bridge domains and MAC learning enabled. DUT1 and DUT2 tested with -| ... | ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes VNF'3' startup config on all DUTs -| | Create Kubernetes VNF'4' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf3-vpp-cfg | vpp.conf=/tmp/vnf3.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf4-vpp-cfg | vpp.conf=/tmp/vnf4.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2bdbasemaclrn-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr.robot deleted file mode 100644 index 2e0e14e66b..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr.robot +++ /dev/null @@ -1,165 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | L2BDBASE | SCALE | MEMIF -| ... | K8S | 1VSWITCH | 2VNF | VPP_AGENT | SFC_CONTROLLER | CHAIN -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with two L2 -| ... | bridge domains and MAC learning enabled. DUT1 and DUT2 tested with -| ... | ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2bdbasemaclrn-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr.robot deleted file mode 100644 index baf3cb029e..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr.robot +++ /dev/null @@ -1,179 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | L2BDBASE | SCALE | MEMIF -| ... | K8S | 1VSWITCH | 4VNF | VPP_AGENT | SFC_CONTROLLER | CHAIN -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with two L2 -| ... | bridge domains and MAC learning enabled. DUT1 and DUT2 tested with -| ... | ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes VNF'3' startup config on all DUTs -| | Create Kubernetes VNF'4' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf3-vpp-cfg | vpp.conf=/tmp/vnf3.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf4-vpp-cfg | vpp.conf=/tmp/vnf4.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2bdbasemaclrn-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr.robot deleted file mode 100644 index 679e9ac421..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr.robot +++ /dev/null @@ -1,157 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2XCFWD | BASE | L2XCBASE | MEMIF -| ... | K8S | 1VSWITCH | 1VNF | VPP_AGENT | SFC_CONTROLLER | PARALLEL -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 tested with ${nic_name}.\ -| ... | VNF Container is connected to VSWITCH container via Memif interface. All -| ... | containers is running same VPP version. Containers are deployed with -| ... | Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2xcbase-eth-2memif-1drcl2xc-1paral-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr.robot deleted file mode 100644 index 9035986688..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr.robot +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2XCFWD | SCALE | L2XCBASE | MEMIF -| ... | K8S | 1VSWITCH | 2VNF | VPP_AGENT | SFC_CONTROLLER | HORIZONTAL -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 tested with ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2xcbase-eth-2memif-2drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr.robot deleted file mode 100644 index fe1bed40a5..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr.robot +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2XCFWD | SCALE | L2XCBASE | MEMIF -| ... | K8S | 1VSWITCH | 4VNF | VPP_AGENT | SFC_CONTROLLER | HORIZONTAL -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 tested with ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes VNF'3' startup config on all DUTs -| | Create Kubernetes VNF'4' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf3-vpp-cfg | vpp.conf=/tmp/vnf3.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf4-vpp-cfg | vpp.conf=/tmp/vnf4.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2xcbase-eth-2memif-4drcl2xc-1horiz-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr.robot deleted file mode 100644 index abf4311b3f..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr.robot +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2XCFWD | SCALE | L2XCBASE | MEMIF -| ... | K8S | 1VSWITCH | 2VNF | VPP_AGENT | SFC_CONTROLLER | CHAIN -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 tested with ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2xcbase-eth-4memif-2drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr.robot b/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr.robot deleted file mode 100644 index 36a3fce3ff..0000000000 --- a/tests/kubernetes/perf/container_memif/10ge2p1x710-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr.robot +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/shared/default.robot -| ... -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2XCFWD | SCALE | L2XCBASE | MEMIF -| ... | K8S | 1VSWITCH | 4VNF | VPP_AGENT | SFC_CONTROLLER | CHAIN -| ... -| Suite Setup | Setup suite single link | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | ligato -| Test Teardown | Tear down test | ligato -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 tested with ${nic_name}.\ -| ... | VNF Containers are connected to VSWITCH container via Memif interface. -| ... | All containers are running same VPP version. Containers are deployed -| ... | with Kubernetes. Configuration is applied by vnf-agent. -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${osi_layer}= | L2 -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# SFC profile -| ${sfc_profile}= | configmaps/eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain -# Traffic profile: -| ${traffic_profile}= | trex-sl-3n-ethip4-ip4src254 -# CPU settings -| ${system_cpus}= | ${1} -| ${vswitch_cpus}= | ${5} -| ${vnf_cpus}= | ${2} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs Container orchestrated config. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Set Max Rate And Jumbo -| | ${dut1_if1_name}= | Get interface name | ${dut1} | ${dut1_if1} -| | ${dut1_if2_name}= | Get interface name | ${dut1} | ${dut1_if2} -| | ${dut2_if1_name}= | Get interface name | ${dut2} | ${dut2_if1} -| | ${dut2_if2_name}= | Get interface name | ${dut2} | ${dut2_if2} -| | ${tg_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1} -| | ${tg_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2} -| | Create Kubernetes VSWITCH startup config on all DUTs -| | ... | ${phy_cores} | ${rxq} | ${jumbo} -| | Create Kubernetes VNF'1' startup config on all DUTs -| | Create Kubernetes VNF'2' startup config on all DUTs -| | Create Kubernetes VNF'3' startup config on all DUTs -| | Create Kubernetes VNF'4' startup config on all DUTs -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vswitch-vpp-cfg | vpp.conf=/tmp/vswitch.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf1-vpp-cfg | vpp.conf=/tmp/vnf1.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf2-vpp-cfg | vpp.conf=/tmp/vnf2.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf3-vpp-cfg | vpp.conf=/tmp/vnf3.conf -| | Create Kubernetes CM from file on all DUTs | ${nodes} | csit -| | ... | name=vnf4-vpp-cfg | vpp.conf=/tmp/vnf4.conf -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf1 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf2 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf3 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut2} -| | ... | pods/contiv-vnf.yaml | $$VNF$$=vnf4 -| | Apply Kubernetes resource on node | ${dut1} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut1_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut1_if2_name} -| | Apply Kubernetes resource on node | ${dut2} -| | ... | ${sfc_profile}.yaml | $$TEST_NAME$$=${TEST NAME} -| | ... | $$VSWITCH_IF1$$=${dut2_if1_name} -| | ... | $$VSWITCH_IF2$$=${dut2_if2_name} -| | Wait for Kubernetes PODs on all DUTs | ${nodes} | csit -| | Set Kubernetes PODs affinity on all DUTs | ${nodes} -| | Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-1drcl2xcbase-eth-8memif-4drcl2xc-1chain-k8s-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/kubernetes/perf/container_memif/regenerate_testcases.py b/tests/kubernetes/perf/container_memif/regenerate_testcases.py deleted file mode 100755 index 2632018a80..0000000000 --- a/tests/kubernetes/perf/container_memif/regenerate_testcases.py +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env python - -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -from resources.libraries.python.autogen.Regenerator import Regenerator - -Regenerator().regenerate_glob("*.robot") |