From af8ed5e1bc3e48ec476976c0846e2d928d5214ef Mon Sep 17 00:00:00 2001
From: kalyanreddy <reddyx.gundarapu@intel.com>
Date: Tue, 20 Dec 2016 15:05:09 +0530
Subject: KVMFORNFV: Implementing kvmfornfv Scenarios.

This patch contains implementation of kvmfornfv
os-nosdn-kvm_ovs_dpdk-ha and os-nosdn-kvm_ovs_dpdk-noha scenarios by
enabling DPDK.

Change-Id: I9a57d7fdc6282f5446240c3129f4cc390d124515
Co-Authored-By: Navya <b.navya4@tcs.com>
Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
---
 ...-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml | 163 +++++++++++++++++++++
 ...-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml | 141 ++++++++++++++++++
 deploy/scenario/scenario.yaml                      |   6 +
 3 files changed, 310 insertions(+)
 create mode 100644 deploy/scenario/ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
 create mode 100644 deploy/scenario/no-ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml

diff --git a/deploy/scenario/ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml b/deploy/scenario/ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
new file mode 100644
index 000000000..dcc743869
--- /dev/null
+++ b/deploy/scenario/ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
@@ -0,0 +1,163 @@
+##############################################################################
+# Copyright (c) 2015 Ericsson AB and others.
+# jonas.bjurel@ericsson.com
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+###############################################################################
+# Description:
+# This .yaml configuration file defines the configuration of the fuel
+# deployment and is passed as an argument to deploy.sh
+# eg. deploy.sh -c https://artifact.opnfv.org/fuel/config
+# This will make build.sh fetch this configuration file and configure the
+# deployment accordingly.
+# After the deployment, a copy of this file gets uploaded to fuel:
+# /root/deploy-config.yaml, as well as the sha-1 sum of this file:
+# /root/deploy-config.sha1
+##############################################################################
+
+##############################################################################
+# deployment configuration meta-data
+deployment-scenario-metadata:
+   title: NFV KVM and OVS-DPDK HA deployment
+   version: 0.0.1
+   created: Dec 20 2016
+   comment: NFV KVM and OVS-DPDK
+
+##############################################################################
+# Stack extentions are opnfv added value features in form of a fuel-plugin
+# plug-ins listed below will be enabled and configured according to the
+# <module-config-base-uri>/<module-config-name>_<module-config-version>.yaml
+# It does so by copying the config file to the local plugin config directory
+stack-extensions:
+   - module: fuel-plugin-kvm
+     module-config-name: fuel-nfvkvm
+     module-config-version: 1.0.0
+     module-config-override:
+       # Module config overrides
+
+##############################################################################
+# By editing the override-config sections below, you can override arbitrary
+# configuration name-space settings
+dea-override-config:
+  fuel:
+    FEATURE_GROUPS:
+    - experimental
+  environment:
+    net_segment_type: vlan
+  nodes:
+  - id: 1
+    interfaces: interfaces_vlan
+    role: controller
+  - id: 2
+    interfaces: interfaces_vlan
+    role: mongo,controller
+  - id: 3
+    interfaces: interfaces_vlan
+    role: ceph-osd,controller
+  - id: 4
+    interfaces: interfaces_dpdk
+    role: ceph-osd,compute
+    attributes: attributes_1
+  - id: 5
+    interfaces: interfaces_dpdk
+    role: ceph-osd,compute
+    attributes: attributes_1
+
+  attributes_1:
+    hugepages:
+      dpdk:
+        value: 128
+      nova:
+        value:
+          '2048': 1024
+
+  network:
+    networking_parameters:
+      segmentation_type: vlan
+      vlan_range:
+      - 1000
+      - 1030
+    networks:
+    - cidr: null
+      gateway: null
+      ip_ranges: []
+      meta:
+        configurable: false
+        map_priority: 2
+        name: private
+        neutron_vlan_range: true
+        notation: null
+        render_addr_mask: null
+        render_type: null
+        seg_type: vlan
+        use_gateway: false
+        vlan_start: null
+      name: private
+      vlan_start: null
+
+  settings:
+    editable:
+      storage:
+        ephemeral_ceph:
+          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).
+          label: Ceph RBD for ephemeral volumes (Nova)
+          type: checkbox
+          value: true
+          weight: 75
+        images_ceph:
+          description: Configures Glance to use the Ceph RBD backend to store images.
+            If enabled, this option will prevent Swift from installing.
+          label: Ceph RBD for images (Glance)
+          restrictions:
+          - settings:storage.images_vcenter.value == true: Only one Glance backend could
+              be selected.
+          type: checkbox
+          value: true
+          weight: 30
+        iser:
+          description: 'High performance block storage: Cinder volumes over iSER protocol (iSCSI over RDMA). This feature requires SR-IOV capabilities in the NIC, and will use a dedicated virtual function for the storage network.'
+          label: iSER protocol for volumes (Cinder)
+          restrictions:
+          - settings:storage.volumes_lvm.value != true or settings:common.libvirt_type.value != 'kvm'
+          - action: hide
+            condition: not ('experimental' in version:feature_groups)
+          type: checkbox
+          value: false
+          weight: 11
+
+dha-override-config:
+  nodes:
+  - id: 1
+    libvirtName: controller1
+    libvirtTemplate: templates/virtual_environment/vms/controller.xml
+  - id: 2
+    libvirtName: controller2
+    libvirtTemplate: templates/virtual_environment/vms/controller.xml
+  - id: 3
+    libvirtName: controller3
+    libvirtTemplate: templates/virtual_environment/vms/controller.xml
+  - id: 4
+    libvirtName: compute1
+    libvirtTemplate: templates/virtual_environment/vms/compute.xml
+  - id: 5
+    libvirtName: compute2
+    libvirtTemplate: templates/virtual_environment/vms/compute.xml
+  - id: 6
+    libvirtName: fuel-master
+    libvirtTemplate: templates/virtual_environment/vms/fuel.xml
+    isFuel: yes
+    username: root
+    password: r00tme
+
+##############################################################################
+# The verification pipeline may populate the section below with arbitrary
+# testing information, which post deploy can be retreived from the fuel master:
+# /root/deploy-config.yaml
+test:
diff --git a/deploy/scenario/no-ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml b/deploy/scenario/no-ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
new file mode 100644
index 000000000..c8f1f3f1c
--- /dev/null
+++ b/deploy/scenario/no-ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
@@ -0,0 +1,141 @@
+##############################################################################
+# Copyright (c) 2015 Ericsson AB and others.
+# jonas.bjurel@ericsson.com
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+###############################################################################
+# Description:
+# This .yaml configuration file defines the configuration of the fuel
+# deployment and is passed as an argument to deploy.sh
+# eg. deploy.sh -c https://artifact.opnfv.org/fuel/config
+# This will make build.sh fetch this configuration file and configure the
+# deployment accordingly.
+# After the deployment, a copy of this file gets uploaded to fuel:
+# /root/deploy-config.yaml, as well as the sha-1 sum of this file:
+# /root/deploy-config.sha1
+##############################################################################
+
+##############################################################################
+# deployment configuration meta-data
+deployment-scenario-metadata:
+   title: NFV KVM and OVS-DPDK No-HA deployment
+   version: 0.0.1
+   created: Dec 20 2016
+   comment: NFV KVM and OVS-DPDK
+
+##############################################################################
+# Stack extentions are opnfv added value features in form of a fuel-plugin
+# plug-ins listed below will be enabled and configured according to the
+# <module-config-base-uri>/<module-config-name>_<module-config-version>.yaml
+# It does so by copying the config file to the local plugin config directory
+stack-extensions:
+   - module: fuel-plugin-kvm
+     module-config-name: fuel-nfvkvm
+     module-config-version: 1.0.0
+     module-config-override:
+       # Module config overrides
+
+##############################################################################
+# By editing the override-config sections below, you can override arbitrary
+# configuration name-space settings
+dea-override-config:
+  fuel:
+    FEATURE_GROUPS:
+    - experimental
+  environment:
+    net_segment_type: vlan
+  nodes:
+  - id: 1
+    interfaces: interfaces_vlan
+    role: mongo,controller
+  - id: 2
+    interfaces: interfaces_dpdk
+    role: ceph-osd,compute
+    attributes: attributes_1
+  - id: 3
+    interfaces: interfaces_dpdk
+    role: ceph-osd,compute
+    attributes: attributes_1
+  - id: 4
+    interfaces: interfaces_dpdk
+    role: ceph-osd,compute
+    attributes: attributes_1
+
+  attributes_1:
+    hugepages:
+      dpdk:
+        value: 128
+      nova:
+        value:
+          '2048': 1024
+
+  network:
+    networking_parameters:
+      segmentation_type: vlan
+      vlan_range:
+      - 1000
+      - 1030
+    networks:
+    - cidr: null
+      gateway: null
+      ip_ranges: []
+      meta:
+        configurable: false
+        map_priority: 2
+        name: private
+        neutron_vlan_range: true
+        notation: null
+        render_addr_mask: null
+        render_type: null
+        seg_type: vlan
+        use_gateway: false
+        vlan_start: null
+      name: private
+      vlan_start: null
+
+  settings:
+    editable:
+      storage:
+        ephemeral_ceph:
+          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).
+          label: Ceph RBD for ephemeral volumes (Nova)
+          type: checkbox
+          value: true
+          weight: 75
+        images_ceph:
+          description: Configures Glance to use the Ceph RBD backend to store images.
+            If enabled, this option will prevent Swift from installing.
+          label: Ceph RBD for images (Glance)
+          restrictions:
+          - settings:storage.images_vcenter.value == true: Only one Glance backend could
+              be selected.
+          type: checkbox
+          value: true
+          weight: 30
+        iser:
+          description: 'High performance block storage: Cinder volumes over iSER protocol (iSCSI over RDMA). This feature requires SR-IOV capabilities in the NIC, and will use a dedicated virtual function for the storage network.'
+          label: iSER protocol for volumes (Cinder)
+          restrictions:
+          - settings:storage.volumes_lvm.value != true or settings:common.libvirt_type.value != 'kvm'
+          - action: hide
+            condition: not ('experimental' in version:feature_groups)
+          type: checkbox
+          value: false
+          weight: 11
+
+dha-override-config:
+#  disks:
+#    contrail: 500G
+
+##############################################################################
+# The verification pipeline may populate the section below with arbitrary
+# testing information, which post deploy can be retreived from the fuel master:
+# /root/deploy-config.yaml
+test:
diff --git a/deploy/scenario/scenario.yaml b/deploy/scenario/scenario.yaml
index 648ff22b3..a2fa19a4d 100644
--- a/deploy/scenario/scenario.yaml
+++ b/deploy/scenario/scenario.yaml
@@ -81,3 +81,9 @@ os-odl_l2-sfc-ha:
 
 os-odl_l2-sfc-noha:
   configfile: no-ha_odl-l2_sfc_heat_ceilometer_scenario.yaml
+
+os-nosdn-kvm_ovs_dpdk-ha:
+  configfile: ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
+
+os-nosdn-kvm_ovs_dpdk-noha:
+  configfile: no-ha_nfv-kvm_nfv-ovs-dpdk_heat_ceilometer_scenario.yaml
-- 
cgit