Anuket Project

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Scenario Agnostic

  1. --k8s should be used.
  2. The testcase name should be explicitly specified – there should be a 'c' in the testcase. 
  3. conf/12_k8s.conf is correctly configured - especially the K8S_CONFIG_FILEPATH, NETWORK_ATTACHMENT_FILEPATH & POD_MANIFEST_FILEPATH.
  4. Important files:
    1. core/pod_controller.py - Based on the deployment, this decides how many pods to deploy.
    2. pods/papi.py - Does the actual deployment of Network attachments and pods.
    3. testcases/testcase.py - controls the flow
      1. Variables: _pod_ctl, _pod_list, _evfctl, 
      2. _pod_ctl: Reference to Pod Controller. This is a main handler using which we manage the pods.
      3. _pod_list : list of pods-references.
      4. _evfctl : Use to configure the external vswitch. Currently, only flow-entries and Interface Up/Down is managed 

Scenario-Specific:

  1. Vswitch is managed by ViNePerf - North-South
    1. Single-Pod
    2. Multi-Pod*
  2. Vswitch is NOT managed by ViNePerf - North-South
    1. Single-Pod
    2. Multi-Pod
  3. Using with Non-vSwitch-based-CNI - North-South.
  4. Vswitch is manage


Scenario 1a:

Only OVSDPDK is supported. To support VPP, we need to modify how VPP is deployed. Current VPP deployment is NOT compatible with Userspace CNI.

For this case, ensure the following configuration:

  1. The 'deployment' of testcase starts with pc (For KaLi release - as only North-South is supported for now).
  2. The EXT_VSWITCH in conf/12_k8s.conf is False.
  3. VSWITCH is set to ovsdpdk

Scenarios 1b:

This is WIP - Userspace CNI with ovsdpdk has issues with multiple pods deployment.


Scenario 2a:

Only VPP is used, as OVSDPDK is well-managed by ViNePerf. 

Changes to support this scenario needs more explanation:

ViNePerf decides on how switch is managed based on (a) 'deployment-scenario' and (b) VSWITCH type. If VSWITCH is set to 'None', then ViNePerf will treat it as "pkt-fowarding' case and does not deploy any vSwitch, else it creates vswitch based on 'deployment-scenario'. Here, 'deployment-scenario' mainly control what kind of flow and interface configuration should be done on the managed vSwitch.

As this is an external case, we should set the VSWITCH to None, which will make ViNePerf to consider it as a 'Packet-Forwarding' scenario. We do not want to use the packet-forwarding option too - hence, a 'dummy' packet-forwarder is created. Using VSWITCH as None and PKT_FWD as dummy, we will ensure the ViNePerf will not bother about vSwitch, and just focuses on Pods and Traffic-management.

For this case, ensure the following configuration:

  1. VSWITCH is set to None.
  2. PKT_FWD is set to Dummy.
  3. The 'deployment' of testcase starts with pc (For KaLi release - as only North-South is supported for now).
  4. The EXT_VSWITCH in conf/12_k8s.conf is set to True.
  5. EXT_VSWITCH_TYPE is set to 'vpp'



  • No labels