Update committers for KVM4NFV
[kvmfornfv.git] / docs / release / scenarios / os-nosdn-kvm_ovs_dpdk_bar-ha / os-nosdn-kvm_ovs_dpdk_bar-ha.description.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2
3 .. http://creativecommons.org/licenses/by/4.0
4
5 ============================================
6 os-nosdn-kvm_ovs_dpdk_bar-ha Description
7 ============================================
8
9 Introduction
10 ------------
11
12 .. In this section explain the purpose of the scenario and the
13    types of capabilities provided
14
15 The purpose of os-nosdn-kvm_ovs_dpdk_bar-ha scenario testing is to test the
16 High Availability deployment and configuration of OPNFV software suite
17 with OpenStack and without SDN software. This OPNFV software suite
18 includes OPNFV KVM4NFV latest software packages for Linux Kernel and
19 QEMU patches for achieving low latency. High Availability feature is achieved
20 by deploying OpenStack multi-node setup with 3 controllers and 2 computes nodes.
21
22 OPNFV Barometer packages is used for traffic,performance and platform monitoring.
23 KVM4NFV packages will be installed on compute nodes as part of deployment.
24 This scenario testcase deployment is happening on multi-node by using OPNFV Fuel deployer.
25
26 Scenario Components and Composition
27 -----------------------------------
28 .. In this section describe the unique components that make up the scenario,
29 .. what each component provides and why it has been included in order
30 .. to communicate to the user the capabilities available in this scenario.
31
32 This scenario deploys the High Availability OPNFV Cloud based on the
33 configurations provided in ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml.
34 This yaml file contains following configurations and is passed as an
35 argument to deploy.py script
36
37 * ``scenario.yaml:`` This configuration file defines translation between a
38   short deployment scenario name(os-nosdn-kvm_ovs_dpdk_bar-ha) and an actual deployment
39   scenario configuration file(ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml)
40
41 * ``deployment-scenario-metadata:`` Contains the configuration metadata like
42   title,version,created,comment.
43
44 .. code:: bash
45
46    deployment-scenario-metadata:
47       title: NFV KVM and OVS-DPDK HA deployment
48       version: 0.0.1
49       created: Dec 20 2016
50       comment: NFV KVM and OVS-DPDK
51
52 * ``stack-extensions:`` Stack extentions are opnfv added value features in form
53   of a fuel-plugin.Plugins listed in stack extensions are enabled and
54   configured. os-nosdn-kvm_ovs_dpdk_bar-ha scenario currently uses KVM-1.0.0 plugin and barometer plugin.
55
56 .. code:: bash
57
58   stack-extensions:
59      - module: fuel-plugin-kvm
60        module-config-name: fuel-nfvkvm
61        module-config-version: 1.0.0
62        module-config-override:
63         # Module config overrides
64      - module: fuel-plugin-collectd-ceilometer
65        module-config-name: fuel-barometer
66        module-config-version: 1.0.0
67        module-config-override:
68          # Module config overrides
69
70
71 * ``dea-override-config:`` Used to configure the HA mode,network segmentation
72   types and role to node assignments.These configurations overrides
73   corresponding keys in the dea_base.yaml and dea_pod_override.yaml.
74   These keys are used to deploy multiple nodes(``3 controllers,2 computes``)
75   as mention below.
76
77   * **Node 1**:
78      - This node has MongoDB and Controller roles
79      - The controller node runs the Identity service, Image Service, management portions of
80        Compute and Networking, Networking plug-in and the dashboard
81      - Uses VLAN as an interface
82
83   * **Node 2**:
84      - This node has Ceph-osd and Controller roles
85      - The controller node runs the Identity service, Image Service, management portions of
86        Compute and Networking, Networking plug-in and the dashboard
87      - Ceph is a massively scalable, open source, distributed storage system
88      - Uses VLAN as an interface
89
90   * **Node 3**:
91      - This node has Controller role in order to achieve high availability.
92      - Uses VLAN as an interface
93
94   * **Node 4**:
95      - This node has compute and Ceph-osd roles
96      - Ceph is a massively scalable, open source, distributed storage system
97      - By default, Compute uses KVM as the hypervisor
98      - Uses DPDK as an interface
99
100   * **Node 5**:
101      - This node has compute and Ceph-osd roles
102      - Ceph is a massively scalable, open source, distributed storage system
103      - By default, Compute uses KVM as the hypervisor
104      - Uses DPDK as an interface
105
106   The below is the ``dea-override-config`` of the ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml file.
107
108 .. code:: bash
109
110    dea-override-config:
111      fuel:
112        FEATURE_GROUPS:
113        - experimental
114      nodes:
115      - id: 1
116        interfaces: interfaces_1
117        role: controller
118      - id: 2
119        interfaces: interfaces_1
120        role: mongo,controller
121      - id: 3
122        interfaces: interfaces_1
123        role: ceph-osd,controller
124      - id: 4
125        interfaces: interfaces_dpdk
126        role: ceph-osd,compute
127        attributes: attributes_1
128      - id: 5
129        interfaces: interfaces_dpdk
130        role: ceph-osd,compute
131        attributes: attributes_1
132
133      attributes_1:
134        hugepages:
135          dpdk:
136            value: 1024
137          nova:
138            value:
139              '2048': 1024
140
141      settings:
142        editable:
143          storage:
144            ephemeral_ceph:
145              description: Configures Nova to store ephemeral volumes in RBD. This works best if Ceph
146              is enabled for volumes and images, too. Enables live migration of all types of Ceph
147              backed VMs (without this option, live migration will only work with VMs launched from
148              Cinder volumes).
149              label: Ceph RBD for ephemeral volumes (Nova)
150              type: checkbox
151              value: true
152              weight: 75
153            images_ceph:
154              description: Configures Glance to use the Ceph RBD backend to store images. If enabled,
155              this option will prevent Swift from installing.
156              label: Ceph RBD for images (Glance)
157              restrictions:
158              - settings:storage.images_vcenter.value == true: Only one Glance backend could be selected.
159              type: checkbox
160              value: true
161              weight: 30
162
163 * ``dha-override-config:`` Provides information about the VM definition and
164   Network config for virtual deployment.These configurations overrides
165   the pod dha definition and points to the controller,compute and
166   fuel definition files.
167
168   The below is the ``dha-override-config`` of the ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml file.
169
170 .. code:: bash
171
172    dha-override-config:
173      nodes:
174      - id: 1
175        libvirtName: controller1
176        libvirtTemplate: templates/virtual_environment/vms/controller.xml
177      - id: 2
178        libvirtName: controller2
179        libvirtTemplate: templates/virtual_environment/vms/controller.xml
180      - id: 3
181        libvirtName: controller3
182        libvirtTemplate: templates/virtual_environment/vms/controller.xml
183      - id: 4
184        libvirtName: compute1
185        libvirtTemplate: templates/virtual_environment/vms/compute.xml
186      - id: 5
187        libvirtName: compute2
188        libvirtTemplate: templates/virtual_environment/vms/compute.xml
189      - id: 6
190        libvirtName: fuel-master
191        libvirtTemplate: templates/virtual_environment/vms/fuel.xml
192        isFuel: yes
193        username: root
194        password: r00tme
195
196
197 * os-nosdn-kvm_ovs_dpdk_bar-ha scenario is successful when all the 5 Nodes are accessible, up and running.
198
199
200 **Note:**
201
202 * In os-nosdn-kvm_ovs_dpdk_bar-ha scenario, OVS is installed on the compute nodes with DPDK configured
203
204 * Baraometer plugin is also implemented along with KVM plugin
205
206 * Hugepages for DPDK are configured in the attributes_1 section of the
207 no-ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
208
209 * Hugepages are only configured for compute nodes
210
211 * This results in faster communication and data transfer among the compute nodes
212
213
214 Scenario Usage Overview
215 ------------------------
216 .. Provide a brief overview on how to use the scenario and the features available to the
217 .. user.  This should be an "introduction" to the userguide document, and explicitly link to it,
218 .. where the specifics of the features are covered including examples and API's
219
220 * The high availability feature can be acheived by executing deploy.py with
221   ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml as an argument.
222 * Install Fuel Master and deploy OPNFV Cloud from scratch on Hardware
223   Environment:
224
225
226 Command to deploy the os-nosdn-kvm_ovs_dpdk_bar-ha scenario:
227
228 .. code:: bash
229
230         $ cd ~/fuel/ci/
231         $ sudo ./deploy.sh -f -b file:///tmp/opnfv-fuel/deploy/config -l devel-pipeline -p default \
232         -s ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml -i file:///tmp/opnfv.iso
233
234 where,
235     -b is used to specify the configuration directory
236
237     -i is used to specify the image downloaded from artifacts.
238
239 **Note:**
240
241 .. code:: bash
242
243          Check $ sudo ./deploy.sh -h for further information.
244
245 * os-nosdn-kvm_ovs_dpdk_bar-ha scenario can be executed from the jenkins project
246   "fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-master"
247 * This scenario provides the High Availability feature by deploying
248   3 controller,2 compute nodes and checking if all the 5 nodes
249   are accessible(IP,up & running).
250 * Test Scenario is passed if deployment is successful and all 5 nodes have
251   accessibility (IP , up & running).
252
253 Known Limitations, Issues and Workarounds
254 -----------------------------------------
255 .. Explain any known limitations here.
256
257 * Test scenario os-nosdn-kvm_ovs_dpdk_bar-ha result is not stable.
258
259 References
260 ----------
261
262 For more information on the OPNFV Euphrates release, please visit
263 http://www.opnfv.org/Euphrates