summaryrefslogtreecommitdiffstats
path: root/docs/userguide/yardstick.rst
diff options
context:
space:
mode:
authorMartin Klozik <martinx.klozik@intel.com>2016-11-10 15:29:45 +0000
committerMartin Klozik <martinx.klozik@intel.com>2016-11-30 15:46:40 +0000
commit32a2593e6b7735bcbd0e6e28cd57e93fb7dccb34 (patch)
tree125212e88155d55e83b56233901d7607ff0cb09f /docs/userguide/yardstick.rst
parentefdc282f4b08e96f3e09d43f94ba0508e4f26090 (diff)
yardstick: CLI params support for yardstick TCs
Vswitchperf specific class in yardstick was updated to reflect new functionality of --test-params. These changes have impact on vsperf documentation and yardstick samples. As part of this fix following changes were made: * trafficgen mode can be executed with default configuration * yardstick specific TC samples were updated * dummy traffic generator was enhanced to support back2back * dummy traffic generator was enhanced to accept traffic results from configuration JIRA: VSPERF-422 JIRA: VSPERF-205 Change-Id: Ibeaa6ef46bde453e3ca5dee6e4568fc8c3853521 Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Bill Michalowski <bmichalo@redhat.com> Reviewed-by: Antonio Fischetti <antonio.fischetti@intel.com> Reviewed-by: <sridhar.rao@spirent.com>
Diffstat (limited to 'docs/userguide/yardstick.rst')
-rwxr-xr-xdocs/userguide/yardstick.rst149
1 files changed, 93 insertions, 56 deletions
diff --git a/docs/userguide/yardstick.rst b/docs/userguide/yardstick.rst
index 18adbdbe..f118373b 100755
--- a/docs/userguide/yardstick.rst
+++ b/docs/userguide/yardstick.rst
@@ -34,16 +34,42 @@ Please note, that yardstick uses OpenStack for execution of testcases.
OpenStack must be installed with Heat and Neutron services. Otherwise
vswitchperf testcases cannot be executed.
-Vswitchperf VM image preparation
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+VM image with vswitchperf
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+A special VM image is required for execution of vswitchperf specific testcases
+by yardstick. It is possible to use a sample VM image available at OPNFV
+artifactory or to build customized image.
+
+Sample VM image with vswitchperf
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Sample VM image is available at vswitchperf section of OPNFV artifactory
+for free download:
+
+.. code-block:: console
+
+ $ wget http://artifacts.opnfv.org/vswitchperf/vnf/vsperf-yardstick-image.qcow2
+
+This image can be used for execution of sample testcases with dummy traffic
+generator.
+
+**NOTE:** Traffic generators might require an installation of client software.
+This software is not included in the sample image and must be installed by user.
+
+**NOTE:** This image will be updated only in case, that new features related
+to yardstick integration will be added to the vswitchperf.
+
+Preparation of custom VM image
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In general, any Linux distribution supported by vswitchperf can be used as
a base image for vswitchperf. One of the possibilities is to modify vloop-vnf
-image, which can be downloaded from `<http://artifacts.opnfv.org/>`__.
+image, which can be downloaded from `<http://artifacts.opnfv.org/vswitchperf.html/>`__.
.. code-block:: console
- $ wget http://artifacts.opnfv.org/vswitchperf/vloop-vnf-ubuntu-14.04_20151216.qcow2
+ $ wget http://artifacts.opnfv.org/vswitchperf/vnf/vloop-vnf-ubuntu-14.04_20160823.qcow2
Please follow the `installation instructions
<http://artifacts.opnfv.org/vswitchperf/docs/configguide/installation.html>`__ to
@@ -55,17 +81,52 @@ In case, that selected traffic generator requires installation of additional
client software, please follow appropriate documentation. For example in case
of IXIA, you would need to install IxOS and IxNetowrk TCL API.
-Final image with vswitchperf must be uploaded into the glance service and
+VM image usage
+~~~~~~~~~~~~~~
+
+Image with vswitchperf must be uploaded into the glance service and
vswitchperf specific flavor configured, e.g.:
.. code-block:: console
- $ glance --os-username admin --os-image-api-version 1 image-create --name
- vsperf --is-public true --disk-format qcow2 --container-format bare --file
- image.qcow2
+ $ glance --os-username admin --os-image-api-version 1 image-create --name \
+ vsperf --is-public true --disk-format qcow2 --container-format bare --file \
+ vsperf-yardstick-image.qcow2
$ nova --os-username admin flavor-create vsperf-flavor 100 2048 25 1
+Testcase execution
+^^^^^^^^^^^^^^^^^^
+
+After installation, yardstick is available as python package within yardstick
+specific virtual environment. It means, that yardstick environment must be
+enabled before the test execution, e.g.:
+
+.. code-block:: console
+
+ source ~/yardstick_venv/bin/activate
+
+
+Next step is configuration of OpenStack environment, e.g. in case of devstack:
+
+.. code-block:: console
+
+ source /opt/openstack/devstack/openrc
+ export EXTERNAL_NETWORK=public
+
+Vswitchperf testcases executable by yardstick are located at vswitchperf
+repository inside ``yardstick/tests`` directory. Example of their download
+and execution follows:
+
+.. code-block:: console
+
+ git clone https://gerrit.opnfv.org/gerrit/vswitchperf
+ cd vswitchperf
+
+ yardstick -d task start yardstick/tests/rfc2544_throughput_dummy.yaml
+
+**NOTE:** Optional argument ``-d`` shows debug output.
+
Testcase customization
^^^^^^^^^^^^^^^^^^^^^^
@@ -84,22 +145,22 @@ Example of yaml file:
-
type: Vsperf
options:
- testname: 'rfc2544_p2p_tput'
+ testname: 'p2p_rfc2544_throughput'
traffic_type: 'rfc2544'
- pkt_sizes: '64'
+ frame_size '64'
bidirectional: 'True'
iload: 100
- duration: 30
trafficgen_port1: 'eth1'
trafficgen_port2: 'eth3'
external_bridge: 'br-ex'
- conf-file: '~/vsperf-yardstick.conf'
+ test_params: 'TRAFFICGEN_DURATION=30;'
+ conf_file: '~/vsperf-yardstick.conf'
host: vsperf.demo
runner:
type: Sequence
- scenario_option_name: pkt_sizes
+ scenario_option_name: frame_size
sequence:
- 64
- 128
@@ -123,22 +184,19 @@ argument. Following options are supported:
- **traffic_type** - specifies the type of traffic executed by traffic generator;
valid values are "rfc2544", "continuous" and "back2back"; Default: 'rfc2544'
-- **pkt_sizes** - a packet size for which test should be executed;
+- **frame_size** - a packet size for which test should be executed;
Multiple packet sizes can be tested by modification of Sequence runner
section inside YAML definition. Default: '64'
-- **duration** - sets duration for which traffic will be generated; Default: 30
- **bidirectional** - specifies if traffic will be uni (False) or bi-directional
(True); Default: False
- **iload** - specifies frame rate; Default: 100
-- **rfc2544_tests** - specifies the number of tests performed for each packet
- size
- **multistream** - specifies the number of simulated streams; Default: 0 (i.e.
multistream feature is disabled)
- **stream_type** - specifies network layer used for multistream simulation
the valid values are "L4", "L3" and "L2"; Default: 'L4'
-- **conf-file** - sets path to the vswitchperf configuration file, which will be
+- **conf_file** - sets path to the vswitchperf configuration file, which will be
uploaded to VM; Default: '~/vsperf-yardstick.conf'
-- **setup-script** - sets path to the setup script, which will be executed
+- **setup_script** - sets path to the setup script, which will be executed
during setup and teardown phases
- **trafficgen_port1** - specifies device name of 1st interface connected to
the trafficgen
@@ -146,16 +204,27 @@ argument. Following options are supported:
the trafficgen
- **external_bridge** - specifies name of external bridge configured in OVS;
Default: 'br-ex'
+- **test_params** - specifies a string with a list of vsperf configuration
+ parameters, which will be passed to the ``--test-params`` CLI argument;
+ Parameters should be stated in the form of ``param=value`` and separated
+ by a semicolon. Please check VSPERF documentation for details about
+ available configuration parameters and their data types.
+ In case that both **test_params** and **conf_file** are specified,
+ then values from **test_params** will override values defined
+ in the configuration file.
In case that **trafficgen_port1** and/or **trafficgen_port2** are defined, then
these interfaces will be inserted into the **external_bridge** of OVS. It is
expected, that OVS runs at the same node, where the testcase is executed. In case
of more complex OpenStack installation or a need of additional OVS configuration,
-**setup-script** can be used.
+**setup_script** can be used.
-Note: It is essential to prepare customized configuration file for the vsperf
-and to specify its name by **conf-file** option. Config file must specify, which
-traffic generator will be used and configure traffic generator specific options.
+Note: It is essential to specify a configuration for selected traffic generator.
+In case, that standalone testcase is created, then traffic generator can be
+selected and configured directly in YAML file by **test_params**. On the other
+hand, if multiple testcases should be executed with the same traffic generator
+settings, then a customized configuration file should be prepared and its name
+passed by **conf_file** option.
Section runner
~~~~~~~~~~~~~~
@@ -163,7 +232,7 @@ Section runner
Yardstick supports several `runner types
<http://artifacts.opnfv.org/yardstick/docs/userguide/architecture.html#runner-types>`__.
In case of vswitchperf specific TCs, **Sequence** runner type can be used to
-execute the testcase for given list of packet sizes.
+execute the testcase for given list of frame sizes.
Section sla
@@ -189,35 +258,3 @@ In case that any of defined metrics will be lower than defined value, then
testcase will be marked as failed. Based on ``action`` policy, yardstick
will either stop test execution (value ``assert``) or it will run next test
(value ``monitor``).
-
-Testcase execution
-^^^^^^^^^^^^^^^^^^
-
-After installation, yardstick is available as python package within yardstick
-specific virtual environment. It means, that before test execution yardstick
-environment must be enabled, e.g.:
-
-.. code-block:: console
-
- source ~/yardstick_venv/bin/activate
-
-
-Next step is configuration of OpenStack environment, e.g. in case of devstack:
-
-.. code-block:: console
-
- source /opt/openstack/devstack/openrc
- export EXTERNAL_NETWORK=public
-
-Vswitchperf testcases executable by yardstick are located at vswitchperf
-repository inside ``yardstick/tests`` directory. Example of their download
-and execution follows:
-
-.. code-block:: console
-
- git clone https://gerrit.opnfv.org/gerrit/vswitchperf
- cd vswitchperf
-
- yardstick -d task start yardstick/tests/p2p_cont.yaml
-
-Note: Optional argument ``-d`` shows debug output.