aboutsummaryrefslogtreecommitdiffstats
path: root/docs/testing/user/userguide/13-nsb-installation.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/testing/user/userguide/13-nsb-installation.rst')
-rw-r--r--docs/testing/user/userguide/13-nsb-installation.rst220
1 files changed, 134 insertions, 86 deletions
diff --git a/docs/testing/user/userguide/13-nsb-installation.rst b/docs/testing/user/userguide/13-nsb-installation.rst
index 694521d2b..35f67b92f 100644
--- a/docs/testing/user/userguide/13-nsb-installation.rst
+++ b/docs/testing/user/userguide/13-nsb-installation.rst
@@ -1,7 +1,7 @@
.. This work is licensed under a Creative Commons Attribution 4.0 International
.. License.
.. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, 2016-2018 Intel Corporation.
+.. (c) OPNFV, 2016-2019 Intel Corporation.
..
Convention for heading levels in Yardstick documentation:
@@ -108,17 +108,19 @@ The ``nsb_setup.sh`` allows to:
Firstly, configure the network proxy, either using the environment variables or
setting the global environment file.
-Set environment::
+Set environment in the file::
http_proxy='http://proxy.company.com:port'
https_proxy='http://proxy.company.com:port'
+Set environment variables:
+
.. code-block:: console
export http_proxy='http://proxy.company.com:port'
export https_proxy='http://proxy.company.com:port'
-Download the source code and check out the latest stable branch
+Download the source code and check out the latest stable branch:
.. code-block:: console
@@ -127,7 +129,9 @@ Download the source code and check out the latest stable branch
# Switch to latest stable branch
git checkout stable/gambia
-Modify the Yardstick installation inventory used by Ansible::
+Modify the Yardstick installation inventory used by Ansible:
+
+.. code-block:: ini
cat ./ansible/install-inventory.ini
[jumphost]
@@ -161,7 +165,7 @@ Modify the Yardstick installation inventory used by Ansible::
.. warning::
Before running ``nsb_setup.sh`` make sure python is installed on servers
- added to ``yardstick-standalone`` or ``yardstick-baremetal`` groups.
+ added to ``yardstick-standalone`` and ``yardstick-baremetal`` groups.
.. note::
@@ -239,9 +243,8 @@ execute::
stty size rows 58 cols 234
It will also automatically download all the packages needed for NSB Testing
-setup. Refer chapter :doc:`04-installation` for more on Docker.
-
-**Install Yardstick using Docker (recommended)**
+setup. Refer chapter :doc:`04-installation` for more on Docker:
+:ref:`Install Yardstick using Docker`
Bare Metal context example
^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -329,7 +332,9 @@ container)::
vi /etc/yardstick/yardstick.conf
Add ``trex_path``, ``trex_client_lib`` and ``bin_path`` to the ``nsb``
-section::
+section:
+
+.. code-block:: ini
[DEFAULT]
debug = True
@@ -360,9 +365,10 @@ Connect to the Yardstick container::
docker exec -it yardstick /bin/bash
If you're running ``heat`` testcases and ``nsb_setup.sh`` was not used::
+
source /etc/yardstick/openstack.creds
-In addition to the above, you need to se the ``EXTERNAL_NETWORK`` for
+In addition to the above, you need to set the ``EXTERNAL_NETWORK`` for
OpenStack::
export EXTERNAL_NETWORK="<openstack public network>"
@@ -410,7 +416,7 @@ Bare-Metal Config pod.yaml
Before executing Yardstick test cases, make sure that ``pod.yaml`` reflects the
topology and update all the required fields.::
- cp /etc/yardstick/nodes/pod.yaml.nsb.sample /etc/yardstick/nodes/pod.yaml
+ cp <yardstick>/etc/yardstick/nodes/pod.yaml.nsb.sample /etc/yardstick/nodes/pod.yaml
.. code-block:: YAML
@@ -435,7 +441,7 @@ topology and update all the required fields.::
dpdk_port_num: 1
local_ip: "152.16.40.20"
netmask: "255.255.255.0"
- local_mac: "00:00.00:00:00:02"
+ local_mac: "00:00:00:00:00:02"
-
name: vnf
@@ -483,6 +489,15 @@ topology and update all the required fields.::
Standalone Virtualization
-------------------------
+VM can be deployed manually or by Yardstick. If parameter *vm_deploy* is set
+to `True` VM will be deployed by Yardstick. Otherwise VM should be deployed
+manually. Test case example, context section::
+
+ contexts:
+ ...
+ vm_deploy: True
+
+
SR-IOV
^^^^^^
@@ -490,7 +505,7 @@ SR-IOV Pre-requisites
+++++++++++++++++++++
On Host, where VM is created:
- a) Create and configure a bridge named ``br-int`` for VM to connect to
+ 1. Create and configure a bridge named ``br-int`` for VM to connect to
external network. Currently this can be done using VXLAN tunnel.
Execute the following on host, where VM is created::
@@ -519,7 +534,7 @@ On Host, where VM is created:
.. note:: Host and jump host are different baremetal servers.
- b) Modify test case management CIDR.
+ 2. Modify test case management CIDR.
IP addresses IP#1, IP#2 and CIDR must be in the same network.
.. code-block:: YAML
@@ -530,7 +545,7 @@ On Host, where VM is created:
mgmt:
cidr: '1.1.1.7/24'
- c) Build guest image for VNF to run.
+ 3. Build guest image for VNF to run.
Most of the sample test cases in Yardstick are using a guest image called
``yardstick-nsb-image`` which deviates from an Ubuntu Cloud Server image
Yardstick has a tool for building this custom image with SampleVNF.
@@ -550,8 +565,6 @@ On Host, where VM is created:
For instructions on generating a cloud image using Ansible, refer to
:doc:`04-installation`.
- for more details refer to chapter :doc:`04-installation`
-
.. note:: VM should be build with static IP and be accessible from the
Yardstick host.
@@ -650,7 +663,7 @@ SR-IOV Config pod_trex.yaml
dpdk_port_num: 1
local_ip: "152.16.40.20"
netmask: "255.255.255.0"
- local_mac: "00:00.00:00:00:02"
+ local_mac: "00:00:00:00:00:02"
SR-IOV Config host_sriov.yaml
+++++++++++++++++++++++++++++
@@ -712,6 +725,93 @@ Update contexts section
gateway_ip: '152.16.100.20'
+SRIOV configuration options
++++++++++++++++++++++++++++
+
+The only configuration option available for SRIOV is *vpci*. It is used as base
+address for VFs that are created during SRIOV test case execution.
+
+ .. code-block:: yaml+jinja
+
+ networks:
+ uplink_0:
+ phy_port: "0000:05:00.0"
+ vpci: "0000:00:07.0"
+ cidr: '152.16.100.10/24'
+ gateway_ip: '152.16.100.20'
+ downlink_0:
+ phy_port: "0000:05:00.1"
+ vpci: "0000:00:08.0"
+ cidr: '152.16.40.10/24'
+ gateway_ip: '152.16.100.20'
+
+.. _`VM image properties label`:
+
+VM image properties
+'''''''''''''''''''
+
+VM image properties example under *flavor* section:
+
+ .. code-block:: console
+
+ flavor:
+ images: <path>
+ ram: 8192
+ extra_specs:
+ machine_type: 'pc-i440fx-xenial'
+ hw:cpu_sockets: 1
+ hw:cpu_cores: 6
+ hw:cpu_threads: 2
+ hw_socket: 0
+ cputune: |
+ <cputune>
+ <vcpupin vcpu="0" cpuset="7"/>
+ <vcpupin vcpu="1" cpuset="8"/>
+ ...
+ <vcpupin vcpu="11" cpuset="18"/>
+ <emulatorpin cpuset="11"/>
+ </cputune>
+ user: ""
+ password: ""
+
+VM image properties description:
+
+ +-------------------------+-------------------------------------------------+
+ | Parameters | Detail |
+ +=========================+=================================================+
+ | images || Path to the VM image generated by |
+ | | ``nsb_setup.sh`` |
+ | || Default path is ``/var/lib/libvirt/images/`` |
+ | || Default file name ``yardstick-nsb-image.img`` |
+ | | or ``yardstick-image.img`` |
+ +-------------------------+-------------------------------------------------+
+ | ram || Amount of RAM to be used for VM |
+ | || Default is 4096 MB |
+ +-------------------------+-------------------------------------------------+
+ | hw:cpu_sockets || Number of sockets provided to the guest VM |
+ | || Default is 1 |
+ +-------------------------+-------------------------------------------------+
+ | hw:cpu_cores || Number of cores provided to the guest VM |
+ | || Default is 2 |
+ +-------------------------+-------------------------------------------------+
+ | hw:cpu_threads || Number of threads provided to the guest VM |
+ | || Default is 2 |
+ +-------------------------+-------------------------------------------------+
+ | hw_socket || Generate vcpu cpuset from given HW socket |
+ | || Default is 0 |
+ +-------------------------+-------------------------------------------------+
+ | cputune || Maps virtual cpu with logical cpu |
+ +-------------------------+-------------------------------------------------+
+ | machine_type || Machine type to be emulated in VM |
+ | || Default is 'pc-i440fx-xenial' |
+ +-------------------------+-------------------------------------------------+
+ | user || User name to access the VM |
+ | || Default value is 'root' |
+ +-------------------------+-------------------------------------------------+
+ | password || Password to access the VM |
+ +-------------------------+-------------------------------------------------+
+
+
OVS-DPDK
^^^^^^^^
@@ -719,7 +819,7 @@ OVS-DPDK Pre-requisites
+++++++++++++++++++++++
On Host, where VM is created:
- a) Create and configure a bridge named ``br-int`` for VM to connect to
+ 1. Create and configure a bridge named ``br-int`` for VM to connect to
external network. Currently this can be done using VXLAN tunnel.
Execute the following on host, where VM is created:
@@ -750,7 +850,7 @@ On Host, where VM is created:
.. note:: Host and jump host are different baremetal servers.
- b) Modify test case management CIDR.
+ 2. Modify test case management CIDR.
IP addresses IP#1, IP#2 and CIDR must be in the same network.
.. code-block:: YAML
@@ -761,7 +861,7 @@ On Host, where VM is created:
mgmt:
cidr: '1.1.1.7/24'
- c) Build guest image for VNF to run.
+ 3. Build guest image for VNF to run.
Most of the sample test cases in Yardstick are using a guest image called
``yardstick-nsb-image`` which deviates from an Ubuntu Cloud Server image
Yardstick has a tool for building this custom image with SampleVNF.
@@ -784,11 +884,11 @@ On Host, where VM is created:
.. note:: VM should be build with static IP and should be accessible from
yardstick host.
-3. OVS & DPDK version.
- * OVS 2.7 and DPDK 16.11.1 above version is supported
+4. OVS & DPDK version:
-4. Setup `OVS-DPDK`_ on host.
+ * OVS 2.7 and DPDK 16.11.1 above version is supported
+Refer setup instructions at `OVS-DPDK`_ on host.
OVS-DPDK Config pod.yaml describing Topology
++++++++++++++++++++++++++++++++++++++++++++
@@ -887,7 +987,7 @@ OVS-DPDK Config pod_trex.yaml
dpdk_port_num: 1
local_ip: "152.16.40.20"
netmask: "255.255.255.0"
- local_mac: "00:00.00:00:00:02"
+ local_mac: "00:00:00:00:00:02"
OVS-DPDK Config host_ovs.yaml
+++++++++++++++++++++++++++++
@@ -1043,59 +1143,7 @@ OVS-DPDK properties description:
VM image properties
'''''''''''''''''''
-VM image properties example under *flavor* section:
-
- .. code-block:: console
-
- flavor:
- images: <path>
- ram: 8192
- extra_specs:
- machine_type: 'pc-i440fx-xenial'
- hw:cpu_sockets: 1
- hw:cpu_cores: 6
- hw:cpu_threads: 2
- hw_socket: 0
- cputune: |
- <cputune>
- <vcpupin vcpu="0" cpuset="7"/>
- <vcpupin vcpu="1" cpuset="8"/>
- ...
- <vcpupin vcpu="11" cpuset="18"/>
- <emulatorpin cpuset="11"/>
- </cputune>
-
-VM image properties description:
-
- +-------------------------+-------------------------------------------------+
- | Parameters | Detail |
- +=========================+=================================================+
- | images || Path to the VM image generated by |
- | | ``nsb_setup.sh`` |
- | || Default path is ``/var/lib/libvirt/images/`` |
- | || Default file name ``yardstick-nsb-image.img`` |
- | | or ``yardstick-image.img`` |
- +-------------------------+-------------------------------------------------+
- | ram || Amount of RAM to be used for VM |
- | || Default is 4096 MB |
- +-------------------------+-------------------------------------------------+
- | hw:cpu_sockets || Number of sockets provided to the guest VM |
- | || Default is 1 |
- +-------------------------+-------------------------------------------------+
- | hw:cpu_cores || Number of cores provided to the guest VM |
- | || Default is 2 |
- +-------------------------+-------------------------------------------------+
- | hw:cpu_threads || Number of threads provided to the guest VM |
- | || Default is 2 |
- +-------------------------+-------------------------------------------------+
- | hw_socket || Generate vcpu cpuset from given HW socket |
- | || Default is 0 |
- +-------------------------+-------------------------------------------------+
- | cputune || Maps virtual cpu with logical cpu |
- +-------------------------+-------------------------------------------------+
- | machine_type || Machine type to be emulated in VM |
- | || Default is 'pc-i440fx-xenial' |
- +-------------------------+-------------------------------------------------+
+VM image properties are same as for SRIOV :ref:`VM image properties label`.
OpenStack with SR-IOV support
@@ -1237,7 +1285,7 @@ DevStack installation
If you want to try out NSB, but don't have OpenStack set-up, you can use
`Devstack`_ to install OpenStack on a host. Please note, that the
``stable/pike`` branch of devstack repo should be used during the installation.
-The required ``local.conf`` configuration file are described below.
+The required ``local.conf`` configuration file is described below.
DevStack configuration file:
@@ -1248,7 +1296,7 @@ DevStack configuration file:
commands to get device and vendor id of the virtual function (VF).
.. literalinclude:: code/single-devstack-local.conf
- :language: console
+ :language: ini
Start the devstack installation on a host.
@@ -1265,7 +1313,7 @@ Run the Sample VNF test case
There is an example of Sample VNF test case ready to be executed in an
OpenStack environment with SR-IOV support: ``samples/vnf_samples/nsut/vfw/
-tc_heat_sriov_external_rfc2544_ipv4_1rule_1flow_64B_trex.yaml``.
+tc_heat_sriov_external_rfc2544_ipv4_1rule_1flow_trex.yaml``.
Install Yardstick using `Install Yardstick (NSB Testing)`_ steps for OpenStack
context.
@@ -1278,7 +1326,7 @@ container:
command to get the PF PCI address for ``vpci`` field.
.. literalinclude:: code/single-yardstick-pod.conf
- :language: console
+ :language: ini
Run the Sample vFW RFC2544 SR-IOV TC (``samples/vnf_samples/nsut/vfw/
tc_heat_sriov_external_rfc2544_ipv4_1rule_1flow_64B_trex.yaml``) in the heat
@@ -1338,12 +1386,12 @@ devstack repo should be used during the installation.
DevStack configuration file for controller host:
.. literalinclude:: code/multi-devstack-controller-local.conf
- :language: console
+ :language: ini
DevStack configuration file for compute host:
.. literalinclude:: code/multi-devstack-compute-local.conf
- :language: console
+ :language: ini
Start the devstack installation on the controller and compute hosts.
@@ -1391,7 +1439,7 @@ IxLoad
Config ``pod_ixia.yaml``
.. literalinclude:: code/pod_ixia.yaml
- :language: console
+ :language: yaml
for sriov/ovs_dpdk pod files, please refer to `Standalone Virtualization`_
for ovs-dpdk/sriov configuration
@@ -1427,7 +1475,7 @@ installed as part of the requirements of the project.
Configure ``pod_ixia.yaml``
.. literalinclude:: code/pod_ixia.yaml
- :language: console
+ :language: yaml
for sriov/ovs_dpdk pod files, please refer to above
`Standalone Virtualization`_ for ovs-dpdk/sriov configuration