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