summaryrefslogtreecommitdiffstats
path: root/docs/release/scenarios/os-odl-bgpvpn/scenario.description.rst
blob: 2641d820c9c15631b74f937c069d1b80d35c3bca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
.. (c) Tim Irnich (tim.irnich@ericsson.com) and Nikolas Hermanns (nikolas.hermanns@ericsson.com)

Introduction
============
.. In this section explain the purpose of the scenario and the types of capabilities provided

Many Telecom network functions are relying on layer-3 infrastructure
services, within a VNF between components, or towards existing external
networks. In many cases, these external networks are implemented in
MPLS/BGP technology in existing service provider wide-area-networks
(WAN). This proven technology provides a good mechanism for
inter-operation of a NFV Infrastructure (NFVI) and wide-area networks
(WAN) and is the main capability provided by the OPNFV SDNVPN project.

.. should we explain here what a deployment scenario is?

The OPNFV SDNVPN feature is made available through additional OPNFV
deployment scenarios, which is derived from the baseline
os-odl-nofeature scenario.

The BGPVPN feature enables creation of BGP VPNs on the Neutron API
according to the OpenStack BGPVPN blueprint at
https://blueprints.launchpad.net/neutron/+spec/neutron-bgp-vpn. In a
nutshell, the blueprint defines a BGPVPN object and a number of ways how
to associate it with the existing Neutron object model, as well as a
unique definition of the related semantics. The BGPVPN framework
supports a backend driver model with currently available drivers for
Bagpipe, OpenContrail, Nuage and OpenDaylight. The OPNFV scenario makes
use of the OpenDaylight driver and backend implementation through the
ODL NetVirt project.



Scenario components and composition
===================================
.. In this section describe the unique components that make up the scenario,
.. what each component provides and why it has been included in order
.. to communicate to the user the capabilities available in this scenario.

The SDN VPN feature enhances OPNFV's baseline OpenStack deployment with
the possibility to configure BGP based VPNs using the Neutron API
extension and service plugin provided by the OpenStack Neutron Stadium
project BGPVPN. The BGPVPN project consists of a Neutron API extension
and a service plugin which has a driver framework similar to the ML2
plugin. BGPVPN today has a quite large number of backend drivers
(Bagpipe, OpenContrail, Nuage and OpenDaylight currently). In OPNFV,
currently only the OpenDaylight driver is supported.

The BGPVPN ODL driver maps the BGPVPN API onto the OpenDaylight NetVirt
service, which exposes the data center overlay like a virtual router to
which Neutron Networks and Routers (and in the future also Ports) are
connected. NetVirt has access to the state of the Neutron API through
the OpenDaylight Neutron Northbound Interface module, which has been
enhanced to support the BGPVPN API extension. It uses an internal mesh
of VxLAN tunnels to interconnect the vSwitches on the data center
compute nodes. For the purpose of BGP based route exchange with other
BGP speakers the ODL controller makes use of Quagga BGP as an external
BGP speaker.


Scenario usage overview
=======================
.. Provide a brief overview on how to use the scenario and the features available to the
.. user.  This should be an "introduction" to the user guide document, and explicitly link to it,
.. where the specifics of the features are covered including examples and API's

  When would I use this scenario, what value does it provide?  Refer to the user guide for details
  of configuration etc...

Configuring SDNVPN features
---------------------------

Each installer has specific procedures to deploy the OPNFV platform so that the SDNVPN feature is enabled.

Fuel installer configuration
^^^^^^^^^^^^^^^^^^^^^^^^^^^^

To install the SDNVPN feature using Fuel, follow the Fuel installation guide ensuring to select the SDNVPN
feature when prompted <add link to Fuel docs once artifact locations are known>.

This will trigger installation of the OpenStack BGPVPN API extension for
Neutron, set up for using the ODL driver, in addition to vanilla Neutron.
In addition, the required karaf features will be activated when ODL is installed and the compute nodes
will be configured including the VPN Service internal transport tunnel mesh.

No post-deploy configuration is necessary. The Fuel BGPVPN plugin and the ODL plugin
should set up the cluster ready for BGPVPNs being created.

APEX installer configuration
^^^^^^^^^^^^^^^^^^^^^^^^^^^^

To install the SDNVPN feature using the APEX installer, follow the APEX installation guide
(https://wiki.opnfv.org/display/apex/Integration+Guide) and activate the SDNVPN feature when prompted (step "# Now execute a deployment")
i.e. python3 deploy.py -v -n ../config/network/network_settings.yaml -d ../config/deploy/os-odl-bgpvpn-noha.yaml --deploy-dir ../build --lib-dir ../lib --image-dir ../.build --virtual-computes 2 --virtual-default-ram 16

Limitations, Issues and Workarounds
===================================
.. Explain scenario limitations here, this should be at a design level rather than discussing
.. faults or bugs.  If the system design only provide some expected functionality then provide
.. some insight at this point.

Currently, in OPNFV only ODL is supported as a backend for BGPVPN. API calls are
mapped onto the ODL NetVirt REST API through the BGPVPN ODL driver and the
ODL Neutron Northbound module.

No DPDK-enabled vhost user ports are supported.

Integration with data center gateway will not work due to missing OVS patches for MPLSoGRE.

References
==========

For more information on the OPNFV Danube release, please visit
https://www.opnfv.org/software