Page tree
Skip to end of metadata
Go to start of metadata

Introduction

If you are attending the NoF Tutorial session session (IEEE NoF tutorial), kindly complete the tasks in pre-requisites, before the hands-on.

Prerequisites

Environment.


   


System / SoftwareSource / Image / command /Comments
Virtualization /HypervisorOracle VirtualboxTo run VMs.
Virtual Machine Download-link

For running Test and DUTs

Create 2 VMs
Step-1
DUT and TGEN
Exchange of SSH-Keys between VMsStep-2 
Install New Version of T-RexStep-3
Install Test Automation ToolsStep-4

The Installation and configuration details are provided below. Please complete the below Steps 1, 2 3 and 4.

Step-1: Creating VMs.

  1. VM1 (DUT) : This is just a standard VM-from-ISO installation procedure. You will find many step-by-step description Ex: https://itsfoss.com/install-linux-in-virtualbox on this, including Videos (Ex: https://www.youtube.com/watch?v=QbmRXJJKsvs) . 
    1. Please ensure that number of interfaces are 4 and configured according to the table above.
  2. VM2 (TGEN): Same as above - or you can just clone it!.
    1. Please ensure that number of interfaces are 4 and configured according to the table  above.
Network

Network/Adapter Type

(Virtualbox)

Interfaces on DUTInterfaces on TGenComments
test1Internaleth3eth3Inter-VM ONLY
test2Internaleth2,eth2,Inter-VM ONLY
adminBridgedeth1eth1Communicate with VMs from Host.
InternetNATeth0eth0For Internet Access

The names of the interfaces maybe different - for example on Ubuntu it may be enp0s2/3/4...

Step-2: Exchange SSH Keys

To ensure smoother access, ensure DUT-VM can ssh to TGEN-VM without password-probe, copy the SSH public keys. The step to follow:

  1. If no identity is created yet (ex: if you don't find id_rsa.pub in ~/.ssh folder) Run ssh-keygen. It will generate the necessary identify.
  2. Use ssh-copy-id command. ssh-copy-id username_of_tgen_vm@ipaddress_of_tgen_vm

Step-3: Install New Version of T-Rex.

(a) INSTALL-TRex

sudo apt -y install zlib1g-dev build-essential python python3-distutils git clone https://github.com/cisco-system-traffic-generator/trex-core.git cd trex-core/ cd linux_dpdk ./b configure ./b build cd .. sudo cp scripts/cfg/simple_cfg.yaml /etc/trex_cfg.yaml

(b) Find PCIs
lspci | grep Eth
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
00:08.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
00:09.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)


(ref)

Step-4: Download and Install Test Automation Tools.

(a) Installing VSPERF on DUT-VM

Instructions to install and configure (including tuning) VSPERF can be found here 

You may have to configure hugepages before running the install script - by running following commands:

  1. mkdir -p /mnt/huge
  2. mount -t hugetlbfs nodev /mnt/huge
  3. echo "vm.nr_hugepages=64" >> /etc/sysctl.conf


(b) Download functest and x-testing on TGEN-VM

  1. sudo apt install python-virtualenv docker.io git
  2. virtualenv xtesting

  3. . xtesting/bin/activate

  4. pip install ansible

  5. ansible-galaxy install collivier.xtesting

  6. git clone https://gerrit.opnfv.org/gerrit/functest-xtesting functest-xtesting-src

(c) Download Storperf on TGEN_VM

  1. Profiling without OpenStack

(d) Other Tools

  1. docker on TGen-VM
    1. sudo apt -y install docker docker-compose

    2. sudo usermod -aG docker $USER

Handson-Sessions

Handson-Session-1: Installations check / Resolve Issues / Try Storperf 

Handson-Session-2: Try Vsperf 

Handson-Session-3: X-Testing

  • No labels