diff options
Diffstat (limited to 'docs/configguide/upgrade.rst')
-rw-r--r-- | docs/configguide/upgrade.rst | 183 |
1 files changed, 183 insertions, 0 deletions
diff --git a/docs/configguide/upgrade.rst b/docs/configguide/upgrade.rst new file mode 100644 index 00000000..cf92572c --- /dev/null +++ b/docs/configguide/upgrade.rst @@ -0,0 +1,183 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. (c) OPNFV, Intel Corporation, AT&T and others. + +===================== +Upgrading vswitchperf +===================== + +Generic +------- + +In case, that VSPERF is cloned from git repository, then it is easy to +upgrade it to the newest stable version or to the development version. + +You could get a list of stable releases by ``git`` command. It is necessary +to update local git repository first. + +**NOTE:** Git commands must be executed from directory, where VSPERF repository +was cloned, e.g. ``vswitchperf``. + +Update of local git repository: + +.. code:: bash + + $ git pull + +List of stable releases: + +.. code:: bash + + $ git tag + + brahmaputra.1.0 + colorado.1.0 + colorado.2.0 + colorado.3.0 + danube.1.0 + +You could select which stable release should be used. For example, select ``danube.1.0``: + +.. code:: bash + + $ git checkout danube.1.0 + + +Development version of VSPERF can be selected by: + +.. code:: bash + + $ git checkout master + +Colorado to Danube upgrade notes +-------------------------------- + +Obsoleted features +~~~~~~~~~~~~~~~~~~ + +Support of vHost Cuse interface has been removed in Danube release. It means, +that it is not possible to select ``QemuDpdkVhostCuse`` as a VNF anymore. Option +``QemuDpdkVhostUser`` should be used instead. Please check you configuration files +and definition of your testcases for any occurrence of: + +.. code:: python + + VNF = "QemuDpdkVhostCuse" + +or + +.. code:: python + + "VNF" : "QemuDpdkVhostCuse" + +In case that ``QemuDpdkVhostCuse`` is found, it must be modified to ``QemuDpdkVhostUser``. + +**NOTE:** In case that execution of VSPERF is automated by scripts (e.g. for +CI purposes), then these scripts must be checked and updated too. It means, +that any occurrence of: + +.. code:: bash + + ./vsperf --vnf QemuDpdkVhostCuse + +must be updated to: + +.. code:: bash + + ./vsperf --vnf QemuDpdkVhostUser + +Configuration +~~~~~~~~~~~~~ + +Several configuration changes were introduced during Danube release. The most +important changes are discussed below. + +Paths to DPDK, OVS and QEMU +=========================== + +VSPERF uses external tools for proper testcase execution. Thus it is important +to properly configure paths to these tools. In case that tools are installed +by installation scripts and are located inside ``./src`` directory inside +VSPERF home, then no changes are needed. On the other hand, if path settings +was changed by custom configuration file, then it is required to update configuration +accordingly. Please check your configuration files for following configuration +options: + +.. code:: bash + + OVS_DIR + OVS_DIR_VANILLA + OVS_DIR_USER + OVS_DIR_CUSE + + RTE_SDK_USER + RTE_SDK_CUSE + + QEMU_DIR + QEMU_DIR_USER + QEMU_DIR_CUSE + QEMU_BIN + +In case that any of these options is defined, then configuration must be updated. +All paths to the tools are now stored inside ``PATHS`` dictionary. Please +refer to the :ref:`paths-documentation` and update your configuration where necessary. + +Configuration change via CLI +============================ + +In previous releases it was possible to modify selected configuration options +(mostly VNF specific) via command line interface, i.e. by ``--test-params`` +argument. This concept has been generalized in Danube release and it is +possible to modify any configuration parameter via CLI or via **Parameters** +section of the testcase definition. Old configuration options were obsoleted +and it is required to specify configuration parameter name in the same form +as it is defined inside configuration file, i.e. in uppercase. Please +refer to the :ref:`overriding-parameters-documentation` for additional details. + +**NOTE:** In case that execution of VSPERF is automated by scripts (e.g. for +CI purposes), then these scripts must be checked and updated too. It means, +that any occurrence of + +.. code:: bash + + guest_loopback + vanilla_tgen_port1_ip + vanilla_tgen_port1_mac + vanilla_tgen_port2_ip + vanilla_tgen_port2_mac + tunnel_type + +shall be changed to the uppercase form and data type of entered values must +match to data types of original values from configuration files. + +In case that ``guest_nic1_name`` or ``guest_nic2_name`` is changed, +then new dictionary ``GUEST_NICS`` must be modified accordingly. +Please see :ref:`configuration-of-guest-options` and ``conf/04_vnf.conf`` for additional +details. + +Traffic configuration via CLI +============================= + +In previous releases it was possible to modify selected attributes of generated +traffic via command line interface. This concept has been enhanced in Danube +release and it is now possible to modify all traffic specific options via +CLI or by ``TRAFFIC`` dictionary in configuration file. Detailed description +is available at :ref:`configuration-of-traffic-dictionary` section of documentation. + +Please check your automated scripts for VSPERF execution for following CLI +parameters and update them according to the documentation: + +.. code:: bash + + bidir + duration + frame_rate + iload + lossrate + multistream + pkt_sizes + pre-installed_flows + rfc2544_tests + stream_type + traffic_type + |