summaryrefslogtreecommitdiffstats
path: root/docs/release/configurationguide
diff options
context:
space:
mode:
Diffstat (limited to 'docs/release/configurationguide')
-rw-r--r--docs/release/configurationguide/abstract.rst16
-rw-r--r--docs/release/configurationguide/configuration.options.render.rst26
-rw-r--r--docs/release/configurationguide/images/brahmaputrafeaturematrix.jpgbin0 -> 62966 bytes
-rw-r--r--docs/release/configurationguide/images/brahmaputrascenariomatrix.jpgbin0 -> 51071 bytes
-rw-r--r--docs/release/configurationguide/images/idle-idle-test.pngbin0 -> 14901 bytes
-rw-r--r--docs/release/configurationguide/images/stress-idle-test.pngbin0 -> 19033 bytes
-rw-r--r--docs/release/configurationguide/images/weather-clear.jpgbin0 -> 1286 bytes
-rw-r--r--docs/release/configurationguide/images/weather-dash.jpgbin0 -> 1010 bytes
-rw-r--r--docs/release/configurationguide/images/weather-few-clouds.jpgbin0 -> 1348 bytes
-rw-r--r--docs/release/configurationguide/images/weather-overcast.jpgbin0 -> 1215 bytes
-rw-r--r--docs/release/configurationguide/index.rst19
-rw-r--r--docs/release/configurationguide/low-latency.feature.configuration.description.rst151
-rw-r--r--docs/release/configurationguide/scenariomatrix.rst129
13 files changed, 341 insertions, 0 deletions
diff --git a/docs/release/configurationguide/abstract.rst b/docs/release/configurationguide/abstract.rst
new file mode 100644
index 000000000..3693bcab7
--- /dev/null
+++ b/docs/release/configurationguide/abstract.rst
@@ -0,0 +1,16 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+======================
+Configuration Abstract
+======================
+
+This document provides guidance for the configurations available in the
+Danube release of OPNFV
+
+The release includes four installer tools leveraging different technologies;
+Apex, Compass4nfv, Fuel and JOID, which deploy components of the platform.
+
+This document also includes the selection of tools and components including
+guidelines for how to deploy and configure the platform to an operational
+state.
diff --git a/docs/release/configurationguide/configuration.options.render.rst b/docs/release/configurationguide/configuration.options.render.rst
new file mode 100644
index 000000000..71a78af2b
--- /dev/null
+++ b/docs/release/configurationguide/configuration.options.render.rst
@@ -0,0 +1,26 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+======================
+Configuration Options
+======================
+
+OPNFV provides a variety of virtual infrastructure deployments called scenarios
+designed to host virtualised network functions (VNF's). KVM4NFV scenarios
+provide specific capabilities and/or components aimed to solve specific
+problems for the deployment of VNF's. KVM4NFV scenario includes components
+such as OpenStack,KVM etc. which includes different source components or
+configurations.
+
+.. note::
+
+ * Each KVM4NFV `scenario`_ provides unique features and capabilities, it is
+ important to understand your target platform capabilities before installing
+ and configuring. This configuration guide outlines how to configure components
+ in order to enable the features required.
+
+ * More deatils of kvm4nfv scenarios installation and description can be found in the `scenario guide`_ of kvm4nfv docs
+
+.. _scenario: http://artifacts.opnfv.org/kvmfornfv/docs/index.html#document-scenarios/kvmfornfv.scenarios.description
+
+.. _scenario guide: http://artifacts.opnfv.org/kvmfornfv/docs/index.html#document-scenarios/abstract
diff --git a/docs/release/configurationguide/images/brahmaputrafeaturematrix.jpg b/docs/release/configurationguide/images/brahmaputrafeaturematrix.jpg
new file mode 100644
index 000000000..0d2a12279
--- /dev/null
+++ b/docs/release/configurationguide/images/brahmaputrafeaturematrix.jpg
Binary files differ
diff --git a/docs/release/configurationguide/images/brahmaputrascenariomatrix.jpg b/docs/release/configurationguide/images/brahmaputrascenariomatrix.jpg
new file mode 100644
index 000000000..84fc87a76
--- /dev/null
+++ b/docs/release/configurationguide/images/brahmaputrascenariomatrix.jpg
Binary files differ
diff --git a/docs/release/configurationguide/images/idle-idle-test.png b/docs/release/configurationguide/images/idle-idle-test.png
new file mode 100644
index 000000000..c9831df1d
--- /dev/null
+++ b/docs/release/configurationguide/images/idle-idle-test.png
Binary files differ
diff --git a/docs/release/configurationguide/images/stress-idle-test.png b/docs/release/configurationguide/images/stress-idle-test.png
new file mode 100644
index 000000000..111c2a7d2
--- /dev/null
+++ b/docs/release/configurationguide/images/stress-idle-test.png
Binary files differ
diff --git a/docs/release/configurationguide/images/weather-clear.jpg b/docs/release/configurationguide/images/weather-clear.jpg
new file mode 100644
index 000000000..011ad52e9
--- /dev/null
+++ b/docs/release/configurationguide/images/weather-clear.jpg
Binary files differ
diff --git a/docs/release/configurationguide/images/weather-dash.jpg b/docs/release/configurationguide/images/weather-dash.jpg
new file mode 100644
index 000000000..3bf98dd27
--- /dev/null
+++ b/docs/release/configurationguide/images/weather-dash.jpg
Binary files differ
diff --git a/docs/release/configurationguide/images/weather-few-clouds.jpg b/docs/release/configurationguide/images/weather-few-clouds.jpg
new file mode 100644
index 000000000..51994ee84
--- /dev/null
+++ b/docs/release/configurationguide/images/weather-few-clouds.jpg
Binary files differ
diff --git a/docs/release/configurationguide/images/weather-overcast.jpg b/docs/release/configurationguide/images/weather-overcast.jpg
new file mode 100644
index 000000000..bdc1e0487
--- /dev/null
+++ b/docs/release/configurationguide/images/weather-overcast.jpg
Binary files differ
diff --git a/docs/release/configurationguide/index.rst b/docs/release/configurationguide/index.rst
new file mode 100644
index 000000000..fa205f55a
--- /dev/null
+++ b/docs/release/configurationguide/index.rst
@@ -0,0 +1,19 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+.. _kvmfornfv-configguide:
+
+***************************
+Kvm4nfv Configuration Guide
+***************************
+
+Danube 1.0
+------------
+
+.. toctree::
+ :maxdepth: 2
+
+ ./abstract.rst
+ ./configuration.options.render.rst
+ ./low-latency.feature.configuration.description.rst
+ ./os-nosdn-kvm-ha.description.rst
diff --git a/docs/release/configurationguide/low-latency.feature.configuration.description.rst b/docs/release/configurationguide/low-latency.feature.configuration.description.rst
new file mode 100644
index 000000000..c53aa52f4
--- /dev/null
+++ b/docs/release/configurationguide/low-latency.feature.configuration.description.rst
@@ -0,0 +1,151 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+=============================================
+Low Latency Feature Configuration Description
+=============================================
+
+Introduction
+------------
+In KVM4NFV project, we focus on the KVM hypervisor to enhance it for NFV, by
+looking at the following areas initially
+
+* Minimal Interrupt latency variation for data plane VNFs:
+ * Minimal Timing Variation for Timing correctness of real-time VNFs
+ * Minimal packet latency variation for data-plane VNFs
+* Inter-VM communication,
+* Fast live migration
+
+Configuration of Cyclictest
+---------------------------
+
+Cyclictest measures Latency of response to a stimulus. Achieving low latency
+with the KVM4NFV project requires setting up a special test environment.
+This environment includes the BIOS settings, kernel configuration, kernel
+parameters and the run-time environment.
+
+* For more information regarding the test environment, please visit
+ https://wiki.opnfv.org/display/kvm/KVM4NFV+Test++Environment
+ https://wiki.opnfv.org/display/kvm/Nfv-kvm-tuning
+
+Pre-configuration activities
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Intel POD10 is currently used as OPNFV-KVM4NFV test environment. The rpm
+packages from the latest build are downloaded onto Intel-Pod10 jump server
+from artifact repository. Yardstick running in a ubuntu docker container
+on Intel Pod10-jump server will configure the host(intel pod10 node1/node2
+based on job type), the guest and triggers the cyclictest on the guest using
+below sample yaml file.
+
+
+.. code:: bash
+
+ For IDLE-IDLE test,
+
+ host_setup_seqs:
+ - "host-setup0.sh"
+ - "reboot"
+ - "host-setup1.sh"
+ - "host-run-qemu.sh"
+
+ guest_setup_seqs:
+ - "guest-setup0.sh"
+ - "reboot"
+ - "guest-setup1.sh"
+
+.. figure:: images/idle-idle-test.png
+ :name: idle-idle-test
+ :width: 100%
+ :align: center
+
+.. code:: bash
+
+ For [CPU/Memory/IO]Stress-IDLE tests,
+
+ host_setup_seqs:
+ - "host-setup0.sh"
+ - "reboot"
+ - "host-setup1.sh"
+ - "stress_daily.sh" [cpustress/memory/io]
+ - "host-run-qemu.sh"
+
+ guest_setup_seqs:
+ - "guest-setup0.sh"
+ - "reboot"
+ - "guest-setup1.sh"
+
+.. figure:: images/stress-idle-test.png
+ :name: stress-idle-test
+ :width: 100%
+ :align: center
+
+The following scripts are used for configuring host and guest to create a
+special test environment and achieve low latency.
+
+Note: host-setup0.sh, host-setup1.sh and host-run-qemu.sh are run on the host,
+followed by guest-setup0.sh and guest-setup1.sh scripts on the guest VM.
+
+**host-setup0.sh**: Running this script will install the latest kernel rpm
+on host and will make necessary changes as following to create special test
+environment.
+
+ * Isolates CPUs from the general scheduler
+ * Stops timer ticks on isolated CPUs whenever possible
+ * Stops RCU callbacks on isolated CPUs
+ * Enables intel iommu driver and disables DMA translation for devices
+ * Sets HugeTLB pages to 1GB
+ * Disables machine check
+ * Disables clocksource verification at runtime
+
+**host-setup1.sh**: Running this script will make the following test
+environment changes.
+
+ * Disabling watchdogs to reduce overhead
+ * Disabling RT throttling
+ * Reroute interrupts bound to isolated CPUs to CPU 0
+ * Change the iptable so that we can ssh to the guest remotely
+
+**stress_daily.sh**: Scripts gets triggered only for stress-idle tests. Running this script
+make the following environment changes.
+
+ * Triggers stress_script.sh, which runs the stress command with necessary options
+ * CPU,Memory or IO stress can be applied based on the test type
+ * Applying stress only on the Host is handled in D-Release
+ * For Idle-Idle test the stress script is not triggered
+ * Stress is applied only on the free cores to prevent load on qemu process
+
+ **Note:**
+ - On Numa Node 1: 22,23 cores are allocated for QEMU process
+ - 24-43 are used for applying stress
+
+**host-run-qemu.sh**: Running this script will launch a guest vm on the host.
+ Note: download guest disk image from artifactory.
+
+**guest-setup0.sh**: Running this scrcipt on the guest vm will install the
+latest build kernel rpm, cyclictest and make the following configuration on
+guest vm.
+
+ * Isolates CPUs from the general scheduler
+ * Stops timer ticks on isolated CPUs whenever possible
+ * Uses polling idle loop to improve performance
+ * Disables clocksource verification at runtime
+
+**guest-setup1.sh**: Running this script on guest vm will do the following
+configurations.
+
+ * Disable watchdogs to reduce overhead
+ * Routes device interrupts to non-RT CPU
+ * Disables RT throttling
+
+Hardware configuration
+~~~~~~~~~~~~~~~~~~~~~~
+
+Currently Intel POD10 is used as test environment for kvm4nfv to execute
+cyclictest. As part of this test environment Intel pod10-jump is configured as
+jenkins slave and all the latest build artifacts are downloaded on to it.
+
+* For more information regarding hardware configuration, please visit
+ https://wiki.opnfv.org/display/pharos/Intel+Pod10
+ https://build.opnfv.org/ci/computer/intel-pod10/
+ http://artifacts.opnfv.org/octopus/brahmaputra/docs/octopus_docs/opnfv-jenkins-slave-connection.html
diff --git a/docs/release/configurationguide/scenariomatrix.rst b/docs/release/configurationguide/scenariomatrix.rst
new file mode 100644
index 000000000..3da38ed60
--- /dev/null
+++ b/docs/release/configurationguide/scenariomatrix.rst
@@ -0,0 +1,129 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+
+.. http://creativecommons.org/licenses/by/4.0
+
+==============
+Scenariomatrix
+==============
+
+Scenarios are implemented as deployable compositions through integration with an installation tool.
+OPNFV supports multiple installation tools and for any given release not all tools will support all
+scenarios. While our target is to establish parity across the installation tools to ensure they
+can provide all scenarios, the practical challenge of achieving that goal for any given feature and
+release results in some disparity.
+
+Danube scenario overeview
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The following table provides an overview of the installation tools and available scenario's
+in the Danube release of OPNFV.
+
+Scenario status is indicated by a weather pattern icon. All scenarios listed with
+a weather pattern are possible to deploy and run in your environment or a Pharos lab,
+however they may have known limitations or issues as indicated by the icon.
+
+Weather pattern icon legend:
+
++---------------------------------------------+----------------------------------------------------------+
+| Weather Icon | Scenario Status |
++=============================================+==========================================================+
+| .. image:: images/weather-clear.jpg | Stable, no known issues |
++---------------------------------------------+----------------------------------------------------------+
+| .. image:: images/weather-few-clouds.jpg | Stable, documented limitations |
++---------------------------------------------+----------------------------------------------------------+
+| .. image:: images/weather-overcast.jpg | Deployable, stability or feature limitations |
++---------------------------------------------+----------------------------------------------------------+
+| .. image:: images/weather-dash.jpg | Not deployed with this installer |
++---------------------------------------------+----------------------------------------------------------+
+
+Scenarios that are not yet in a state of "Stable, no known issues" will continue to be stabilised
+and updates will be made on the stable/danube branch. While we intend that all Danube
+scenarios should be stable it is worth checking regularly to see the current status. Due to
+our dependency on upstream communities and code some issues may not be resolved prior to the D release.
+
+Scenario Naming
+^^^^^^^^^^^^^^^
+
+In OPNFV scenarios are identified by short scenario names, these names follow a scheme that
+identifies the key components and behaviours of the scenario. The rules for scenario naming are as follows:
+
+.. code:: bash
+
+ os-[controller]-[feature]-[mode]-[option]
+
+Details of the fields are
+
+ * **[os]:** mandatory
+
+ * Refers to the platform type used
+ * possible value: os (OpenStack)
+
+ * **[controller]:** mandatory
+
+ * Refers to the SDN controller integrated in the platform
+ * example values: nosdn, ocl, odl, onos
+
+ * **[feature]:** mandatory
+
+ * Refers to the feature projects supported by the scenario
+ * example values: nofeature, kvm, ovs, sfc
+
+ * **[mode]:** mandatory
+
+ * Refers to the deployment type, which may include for instance high availability
+ * possible values: ha, noha
+
+ * **[option]:** optional
+
+ * Used for the scenarios those do not fit into naming scheme.
+ * The optional field in the short scenario name should not be included if there is no optional scenario.
+
+Some examples of supported scenario names are:
+
+ * **os-nosdn-kvm-noha**
+
+ * This is an OpenStack based deployment using neutron including the OPNFV enhanced KVM hypervisor
+
+ * **os-onos-nofeature-ha**
+
+ * This is an OpenStack deployment in high availability mode including ONOS as the SDN controller
+
+ * **os-odl_l2-sfc**
+
+ * This is an OpenStack deployment using OpenDaylight and OVS enabled with SFC features
+
+ * **os-nosdn-kvm_nfv_ovs_dpdk-ha**
+
+ * This is an Openstack deployment with high availability using OVS, DPDK including the OPNFV enhanced KVM hypervisor
+ * This deployment has ``3-Contoller and 2-Compute nodes``
+
+ * **os-nosdn-kvm_nfv_ovs_dpdk-noha**
+
+ * This is an Openstack deployment without high availability using OVS, DPDK including the OPNFV enhanced KVM hypervisor
+ * This deployment has ``1-Contoller and 3-Compute nodes``
+
+ * **os-nosdn-kvm_nfv_ovs_dpdk_bar-ha**
+
+ * This is an Openstack deployment with high availability using OVS, DPDK including the OPNFV enhanced KVM hypervisor
+ and Barometer
+ * This deployment has ``3-Contoller and 2-Compute nodes``
+
+ * **os-nosdn-kvm_nfv_ovs_dpdk_bar-noha**
+
+ * This is an Openstack deployment without high availability using OVS, DPDK including the OPNFV enhanced KVM hypervisor
+ and Barometer
+ * This deployment has ``1-Contoller and 3-Compute nodes``
+
+Installing your scenario
+^^^^^^^^^^^^^^^^^^^^^^^^
+
+There are two main methods of deploying your target scenario, one method is to follow this guide which will
+walk you through the process of deploying to your hardware using scripts or ISO images, the other method is
+to set up a Jenkins slave and connect your infrastructure to the OPNFV Jenkins master.
+
+For the purposes of evaluation and development a number of Danube scenarios are able to be deployed
+virtually to mitigate the requirements on physical infrastructure. Details and instructions on performing
+virtual deployments can be found in the installer specific installation instructions.
+
+To set up a Jenkins slave for automated deployment to your lab, refer to the `Jenkins slave connect guide.
+<http://artifacts.opnfv.org/brahmaputra.1.0/docs/opnfv-jenkins-slave-connection.brahmaputra.1.0.html>`_