Update committers for KVM4NFV
[kvmfornfv.git] / docs / release / scenarios / os-nosdn-kvm_nfv_ovs_dpdk_bar-ha / os-nosdn-kvm_nfv_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_nfv_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 is enabled for volumes and images, too. Enables live migration of all types of Ceph backed VMs (without this option, live migration will only work with VMs launched from Cinder volumes).
146              label: Ceph RBD for ephemeral volumes (Nova)
147              type: checkbox
148              value: true
149              weight: 75
150            images_ceph:
151              description: Configures Glance to use the Ceph RBD backend to store images. If enabled, this option will prevent Swift from installing.
152              label: Ceph RBD for images (Glance)
153              restrictions:
154              - settings:storage.images_vcenter.value == true: Only one Glance backend could be selected.
155              type: checkbox
156              value: true
157              weight: 30
158
159 * ``dha-override-config:`` Provides information about the VM definition and
160   Network config for virtual deployment.These configurations overrides
161   the pod dha definition and points to the controller,compute and
162   fuel definition files.
163
164   The below is the ``dha-override-config`` of the ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml file.
165
166 .. code:: bash
167
168    dha-override-config:
169      nodes:
170      - id: 1
171        libvirtName: controller1
172        libvirtTemplate: templates/virtual_environment/vms/controller.xml
173      - id: 2
174        libvirtName: controller2
175        libvirtTemplate: templates/virtual_environment/vms/controller.xml
176      - id: 3
177        libvirtName: controller3
178        libvirtTemplate: templates/virtual_environment/vms/controller.xml
179      - id: 4
180        libvirtName: compute1
181        libvirtTemplate: templates/virtual_environment/vms/compute.xml
182      - id: 5
183        libvirtName: compute2
184        libvirtTemplate: templates/virtual_environment/vms/compute.xml
185      - id: 6
186        libvirtName: fuel-master
187        libvirtTemplate: templates/virtual_environment/vms/fuel.xml
188        isFuel: yes
189        username: root
190        password: r00tme
191
192
193 * os-nosdn-kvm_ovs_dpdk_bar-ha scenario is successful when all the 5 Nodes are accessible, up and running.
194
195
196 **Note:**
197
198 * In os-nosdn-kvm_ovs_dpdk_bar-ha scenario, OVS is installed on the compute nodes with DPDK configured
199
200 * Baraometer plugin is also implemented along with KVM plugin
201
202 * Hugepages for DPDK are configured in the attributes_1 section of the no-ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
203
204 * Hugepages are only configured for compute nodes
205
206 * This results in faster communication and data transfer among the compute nodes
207
208
209 Scenario Usage Overview
210 ------------------------
211 .. Provide a brief overview on how to use the scenario and the features available to the
212 .. user.  This should be an "introduction" to the userguide document, and explicitly link to it,
213 .. where the specifics of the features are covered including examples and API's
214
215 * The high availability feature can be acheived by executing deploy.py with
216   ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml as an argument.
217 * Install Fuel Master and deploy OPNFV Cloud from scratch on Hardware
218   Environment:
219
220
221 Command to deploy the os-nosdn-kvm_ovs_dpdk_bar-ha scenario:
222
223 .. code:: bash
224
225         $ cd ~/fuel/ci/
226         $ sudo ./deploy.sh -f -b file:///tmp/opnfv-fuel/deploy/config -l devel-pipeline -p default -s ha_nfv-kvm_nfv-ovs-dpdk-bar_heat_ceilometer_scenario.yaml -i file:///tmp/opnfv.iso
227
228 where,
229     -b is used to specify the configuration directory
230
231     -i is used to specify the image downloaded from artifacts.
232
233 **Note:**
234
235 .. code:: bash
236
237          Check $ sudo ./deploy.sh -h for further information.
238
239 * os-nosdn-kvm_ovs_dpdk_bar-ha scenario can be executed from the jenkins project
240   "fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-master"
241 * This scenario provides the High Availability feature by deploying
242   3 controller,2 compute nodes and checking if all the 5 nodes
243   are accessible(IP,up & running).
244 * Test Scenario is passed if deployment is successful and all 5 nodes have
245   accessibility (IP , up & running).
246
247 Known Limitations, Issues and Workarounds
248 -----------------------------------------
249 .. Explain any known limitations here.
250
251 * Test scenario os-nosdn-kvm_ovs_dpdk_bar-ha result is not stable.
252
253 References
254 ----------
255
256 For more information on the OPNFV Danube release, please visit
257 http://www.opnfv.org/Danube