diff options
Diffstat (limited to 'docs/testing_guide/vstf_guide.rst')
-rw-r--r-- | docs/testing_guide/vstf_guide.rst | 241 |
1 files changed, 0 insertions, 241 deletions
diff --git a/docs/testing_guide/vstf_guide.rst b/docs/testing_guide/vstf_guide.rst deleted file mode 100644 index e1ad5f2b..00000000 --- a/docs/testing_guide/vstf_guide.rst +++ /dev/null @@ -1,241 +0,0 @@ -.. This work is licensed under a Creative Commons Attribution 4.0 International License. -.. http://creativecommons.org/licenses/by/4.0 -.. (c) Huawei Technologies Co.,Ltd and others. - -******************** -VSTF Testsuite Guide -******************** - -VSTF Introduction -==================== -VSTF(Virtual Switch Test Framework) is a system-level testing framework in the -area of network virtualization, and it could help you estimate the system switch -ability and find out the network bottlenecks by main KPIs(bandwidth, latency, -resource usage and so on), VSTF owns a methodology to define the test scenario and -testcases, Now we could support Tu testcases in the Openstack environment, More -scenarios and cases will be added. - -VSTF TestScenario ------------------ -1. Tu - VM to VM -2. Tn - Physical Nic loopback -3. TnV - VNF loopback -4. Ti - VM to Physical Nic - -Pre-install Packages on the ubuntu 14.04 VM -=========================================== -VSTF VM Preparation Steps -------------------------- -1. Create a ubuntu 14.04 VM -2. Install dependency inside VM -3. Install vstf python package inside VM - -VM preparation --------------- -Install python2.7 version and git - -:: - - sudo apt-get install python2.7 - sudo apt-get install git - -Download Bottlenecks package - -:: - - sudo cd /home/ - sudo git clone https://gerrit.opnfv.org/gerrit/bottlenecks - -Install the dependency - -:: - - sudo apt-get install python-pip - sudo pip install --upgrade pip - sudo dpkg-reconfigure dash - sudo apt-get install libjpeg-dev - sudo apt-get install libpng-dev - sudo apt-get install python-dev - sudo apt-get install python-testrepository - sudo apt-get install git - sudo apt-get install python-pika - sudo apt-get install python-oslo.config - sudo pip install -r /home/bottlenecks/vstf/requirements.txt - -Install vstf package - -:: - - sudo mkdir -p /var/log/vstf/ - sudo cp -r /home/bottlenecks/vstf/etc/vstf/ /etc/ - sudo mkdir -p /opt/vstf/ - sudo cd /home/bottlenecks;sudo rm -rf build/ - sudo python setup.py install - -Image on the Cloud ------------------- -+-----------+-------------------------------------------------------------+ -| Name | vstf-image | -+===========+=============================================================+ -| URL | http://artifacts.opnfv.org/bottlenecks/vstf-manager-new.img | -+-----------+-------------------------------------------------------------+ -| Format | QCOW2 | -+-----------+-------------------------------------------------------------+ -| Size | 5G | -+-----------+-------------------------------------------------------------+ -| User | root | -+-----------+-------------------------------------------------------------+ -| Passwd | root | -+-----------+-------------------------------------------------------------+ -There is a complete vstf image on the cloud ,you could download it and use it to -deploy and run cases ,but do not need VM preparation steps. - - -How is VSTF Integrated into Installers -======================================== -VM requirements ---------------- -+------------------+----------+--------------------+-----------------------------------------------------+ -| Name | FLAVOR | IMAGE_NAME | NETWORK | -+==================+==========+====================+=====================================================+ -| vstf-manager | m1.large | vstf-image | control-plane=XX.XX.XX.XX | -+------------------+----------+--------------------+-----------------------------------------------------+ -| vstf-tester | m1.large | vstf-image | control-plane(eth0)=XX.XX.XX.XX | -| | | | test-plane(eth1)=XX.XX.XX.XX | -+------------------+----------+--------------------+-----------------------------------------------------+ -| vstf-target | m1.large | vstf-image | control-plane(eth0)=XX.XX.XX.XX | -| | | | test-plane(eth1)=XX.XX.XX.XX | -+------------------+----------+--------------------+-----------------------------------------------------+ -m1.large means 4U4G for the target image Size 5GB -For the network used by VMs,network need two plane ,one plane is control plane and the other plane is test plane. - -OPNFV community Usage in the CI system --------------------------------------- -+---------------------------------------+---------------------------------------+ -| Project Name | Project Categoty | -+=======================================+=======================================+ -| bottlenecks-daily-fuel-vstf-lf-master | bottlenecks | -+---------------------------------------+---------------------------------------+ -OPNFV community jenkins Project info - -Main Entrance for the ci test: - -:: - - cd /home/bottlenecks/ci; - bash -x vstf_run.sh - -Test on local(Openstack Environment) ------------------------------------- -download the image file - -:: - - curl --connect-timeout 10 -o /tmp/vstf-manager.img \ - http://artifacts.opnfv.org/bottlenecks/vstf-manager-new.img -v - -create the image file by the glance - -:: - - glance image-create --name $MANAGER_IMAGE_NAME \ - --disk-format qcow2 \ - --container-format bare \ - --file /tmp/vstf-manager.img - -create the keypair for the image(anyone will be ok) - -:: - - cd /home/bottlenecks/utils/infra_setup/bottlenecks_key - nova keypair-add --pub_key $KEY_PATH/bottlenecks_key.pub $KEY_NAME - -create the vstf three VMs in the openstack by heat - -:: - - cd /home/bottlenecks/utils/infra_setup/heat_template/vstf_heat_template - heat stack-create vstf -f bottleneck_vstf.yaml - -launch the vstf process inside the vstf-manager vstf-tester vstf-target VMs - -:: - - cd /home/bottlenecks/utils/infra_setup/heat_template/vstf_heat_template - bash -x launch_vstf.sh - -edit the test scenario and test packet list in the vstf_test.sh, now support the Tu-1/2/3 - -:: - - function fn_testing_scenario(){ - ... - local test_length_list="64 128 256 512 1024" - local test_scenario_list="Tu-1 Tu-3" - ... - } - -launch the vstf script - -:: - - cd /home/bottlenecks/utils/infra_setup/heat_template/vstf_heat_template - bash -x vstf_test.sh - -Test Result Description -======================= -Result Format -------------- -For example after the test, The result will display as the following format - -:: - - { u'64': { u'AverageLatency': 0.063, - u'Bandwidth': 0.239, - u'CPU': 0.0, - u'Duration': 20, - u'MaximumLatency': 0.063, - u'MinimumLatency': 0.063, - u'MppspGhz': 0, - u'OfferedLoad': 100.0, - u'PercentLoss': 22.42, - u'RxFrameCount': 4309750.0, - u'RxMbps': 198.28, - u'TxFrameCount': 5555436.0, - u'TxMbps': 230.03}} - -Option Description ------------------- -+---------------------+---------------------------------------------------+ -| Option Name | Description | -+=====================+===================================================+ -| AverageLatency | The average latency data during the packet | -| | transmission (Unit:microsecond) | -+---------------------+---------------------------------------------------+ -| Bandwidth | Network bandwidth(Unit:Million packets per second)| -+---------------------+---------------------------------------------------+ -| CPU | Total Resource Cpu usage(Unit: Ghz) | -+---------------------+---------------------------------------------------+ -| Duration | Test time(Unit: second) | -+---------------------+---------------------------------------------------+ -| MaximumLatency | The maximum packet latency during the packet | -| | transmission (Unit:microsecond) | -+---------------------+---------------------------------------------------+ -| MinimumLatency | The maximum packet latency during the packet | -| | transmission (Unit:microsecond) | -+---------------------+---------------------------------------------------+ -| MppspGhz | Million Packets per second with per CPU | -| | resource Ghz(Unit: Mpps/Ghz) | -+---------------------+---------------------------------------------------+ -| OfferedLoad | The load of network offered | -+---------------------+---------------------------------------------------+ -| PercentLoss | The percent of frame loss rate | -+---------------------+---------------------------------------------------+ -| RxFrameCount | The total frame on Nic rx | -+---------------------+---------------------------------------------------+ -| RxMbps | The received bandwidth per second | -+---------------------+---------------------------------------------------+ -| TxFrameCount | The total frame on Nic rx | -+---------------------+---------------------------------------------------+ -| TxMbps | The send bandwidth per second | -+---------------------+---------------------------------------------------+ |