Project: Bootstrap/Get started!
Proposed name for the project: Bootstrap/Get-started (BGS)
Proposed name for the repository: genesis
Project Categories: Integration & Testing
Project description
Project “Bootstrap/Get started” assembles and tests a base set of infrastructure components for OPNFV to run a few example VNFs like LBs, FWs. It puts together a single deployment type that can both be used by developers and run in continuous integration. The goals of the GetStarted Project is to stand up quickly one or more stacks of components, learn from their differences and commonality of deployment experience, and feed that back into producing a more flexible framework. Initially the project will focus on a single combination of components. The project will be complete, and hand off to the wider scope “Octopus” project, when CI demonstrably runs and the project can be seen to perform the tasks required of a basic VIM layer.
The project targets an installation on a virtual environment based on Linux Ubuntu 14.04/Centos 7 as base operating system and distribution. “Bootstrap/Get started” provides a solution to automatically install and configure the required components using existing installer and configuration tools and perform a set of basic system level tests (i.e. test whether OpenStack, OpenDaylight/SDN Controler, OVS components are operational, tests whether a set of VNFs can be deployed/removed on the Compute Node). The project is intended to serve as both an initial development framework and a framework for CI. It is important that developers work on realistic deployments which (‘works on devstack &/or packstack" as Compute Node VNFs) and future projects will work on development tooling.
The picture outlines the main setup of “bootstrap/get started”.
Scope
“Bootstrap/Get started” intends to deliver a framework to automatically install and test a set of base infrastructure for OPNFV - applicable to both: developers as well as for continuous integration. To prove the functionality of the framework, example VNFs will be deployed on top of the base infrastructure.
The project comprises the following setup:
running OpenStack
with a standard, lightly tuned configuration that suits NFV applications
On Linux Centos 7
with redundant control nodes (Openstack HA)
running OpenDaylight Controller (ODL) / SDN Controller
one or more compute nodes
hosting a set of example VNFs to allow for system level testing of the infrastructure
with deployment to VMs for on-laptop testing
with deployment to bare metal for physical environment testing
with a set of integration tests to demonstrate correct OpenStack/ODL/SDN Controller base operation
with a set of system tests to demonstrate correct operation of the sample VNFs like LBs, FWs
designed for easy substitution of components
using KVM as hypervisor
using Open vSwitch (OVS) as virtual switch/virtual forwarder
leverage example VNFs: OpenWRT, SNORT
(as bonus) demonstrate service function chaining as a typical NFV example
The following elements are explicitly excluded from the initial scope; the aim here is to have a single reachable goal of an operational system, and branching out into other divergent configurations should happen after the initial goal is demonstrated:
other combinations of components (different OSes, network controllers, NFV components, etc.)
other configurations (e.g. different Openstack options)
packaging, unless absolutely necessary (e.g. taking an Openstack branch with patches and packaging it for deployment in place of stock distribution packages)
version variation (packages will be stock stable versions, not development branches)
Use-cases served by “bootstrap/get started”:
Targeted test cases (automated via Robot/Jenkins):
Automated test of installation completeness and component health check: Ensure that all required components are installed and are healthy (OpenStack, OpenDaylight Controller/SDN Controller, OVS, Example VNFs (OpenWRT, Snort, End-system/host VMs). This includes:
OpenStack health check (Verify Nova, Neutron, Keystone, Horizon, MySQL, Rabbit MQ, etc.. services are up and running)
OpenDaylight/SDN Controller health check (Verify MDSAL, RESTCONF, OVSDB, SFC, etc. services are up and running)
Automated system-level testing: bring up / tear down multiple instances of VNFs (OpenWRT, Snort), check idempotent system behavior.
Automated system service-level testing (bonus effort - in case there is time available): Bring up instances of OpenWRT and Snort, configure a service chain, test whether the service chain is functioning (e.g. two hosts can communicate via the service chain - and the configured packet processing behavior is in place).
Dependencies
Committers and Contributors
Committers
Dan Radez (dradez@redhat.com)
Frank Brockners (fbrockne@cisco.com)
Ian Wells (iawells@cisco.com)
Jonas Bjurel (jonas.bjurel@ericsson.com)
Kumari, Sudha (NFV BU) sudha.kumari@hp.com
M R (Chengappa cm-r@hp.com)
Palani Chinnakannan (pals@cisco.com)
Peter Hladky (peter.hladky@pantheon.sk)
Reinaldo Penno (rapenno@gmail.com)
Stefan Berg K (stefan.k.berg@ericsson.com)
Prakash Ramchandran (prakash.ramchandran@huawei.com)
Wes Hayutin (whayutin@redhat.com)
Xiong Zhang (zhangxiong7@huawei.com )
Contributors
Alan Pevec (apevec@redhat.com)
Chris Price (christopher.price@ericsson.com)
Dave Neary (dneary@redhat.com)
Frank Brockners (fbrockne@cisco.com)
Ian Wells (iawells@cisco.com)
Jonas Bjurel (jonas.bjurel@ericsson.com)
Jun Li (matthew.lijun@huawei.com)
Kumari, Sudha (NFV BU) sudha.kumari@hp.com
M R (Chengappa cm-r@hp.com)
Marika Rytkonen (marika.rytkonen@nsn.com)
Markus Berglund (markus.berglund@nsn.com)
Palani Chinnakannan (pals@cisco.com)
Paul Quinn (paulq@cisco.com)
Peter Hladky (peter.hladky@pantheon.sk)
Ashlee Young (ashlee@onosfw.com)
Qiqi Hu (huqiqi@huawei.com)
Reinaldo Penno (rapenno@gmail.com)
Stefan Berg K (stefan.k.berg@ericsson.com)
Vasile Radoaka (radoaca.vasile@huawei.com)
Deepak Unnikrishnan (deepak.cu@gmail.com)
Carlos Goncalves (carlos.goncalves@neclab.eu)
Dirk Kutscher (dirk.kutscher@neclab.eu)
Xiong Zhang (zhangxiong7@huawei.com )
Jia He (hejia1@huawei.com)
Dongren Zhao (zhaodongren@huawei.com )
Yu Zhang (zhangyu11@huawei.com )
Julien (zhang.jun3g@zte.com.cn)
Jiang zhifeng(jiang.zhifeng@zte.com.cn)
Vagish Shanmukh (vagishs@gmail.com)
Planned deliverables
Project deliverables:
“Bootstrap/Get started” install scripts for automated deployment of the test setup to a virtual environment and bare metal environment
Test scripts to allow for automated system level testing (Component health check (OpenStack, OVS, OpenDaylight / SDN Controller, lifecycle manage VNFs, create services using example VNFs).
Comprehensive source-to-tested-deployment script for running the entire system start to end for either use in development (deployed system is interesting), performance testing (performance results are interesting) or CI (test passes and failures are interesting).
Proposed Release Schedule
The project initial deliverable (“Bootstrap/Get started” install scripts for virtual environment, test scripts for automated system level testing) is expected to be available in time for OPNFV release #1.