Jump to: navigation, search

Difference between revisions of "Tacker"

(TOSCA for NFV)
(25 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
  
'''Title:''' Tacker <br />
+
= Tacker - OpenStack NFV Orchestration =
  
'''Aim:''' <tt style="color: blue">To develop a fully functional ETSI MANO based general purpose VNF Manager for OpenStack</tt><br />
+
Tacker is an official OpenStack project building a Generic VNF Manager (VNFM) and a NFV Orchestrator (NFVO) to deploy and operate Network Services and Virtual Network Functions (VNFs) on an NFV infrastructure platform like OpenStack. It is based on ETSI MANO Architectural Framework and provides a functional stack to Orchestrate Network Services end-to-end using VNFs.
  
'''Repo:''' http://git.openstack.org/cgit/stackforge/tacker/<br />
+
[[File:Tacker_Architecture.png]]
 +
 
 +
= High Level Architecture =
  
'''IRC Channel:''' <code><nowiki>#tacker</nowiki></code>
 
  
'''Meetings:''' Thursdays 1600 UTC [On-Demand]  @ <code><nowiki>#openstack-meeting</nowiki></code>
+
== NFV Catalog ==
  
'''Tags:''' [NFV] [Tacker]<br />
+
# VNF Descriptors  
 +
# Network Services Decriptors
 +
# VNF Forwarding Graph Descriptors
  
 +
== VNFM ==
  
__TOC__
+
# Basic life-cycle of VNF (create/update/delete)
 +
# Enhanced platform-aware (EPA) placement of high-performance NFV workloads
 +
# Health monitoring of deployed VNFs
 +
# Auto Healing / Auto Scaling VNFs based on Policy
 +
# Facilitate initial configuration of VNF
  
 +
== NFVO ==
  
= Mission & Scope =
+
# Templatized end-to-end Network Service deployment using decomposed VNFs
+
# VNF placement policy – ensure efficient placement of VNFs
Tacker is an OpenStack based VNF Manager service and a framework used to deploy and operate Virtual Network Functions (VNFs) on an OpenStack based NFV Platform. It is based on ETSI MANO Architectural Framework and provides full functional stack to Orchestrate VNFs end-to-end.
+
# VNFs connected using an SFC - described in a VNF Forwarding Graph Descriptor
 +
# VIM Resource Checks and Resource Allocation
 +
# Ability to orchestrate VNFs across Multiple VIMs and Multiple Sites (POPs)
  
[[File:Etsi-mano-vnfm.png]]
+
[[File:Tacker-Architecture.jpg]]
  
= High Level Functionality =
 
  
# VNF Catalog
+
= Documentation =
# Basic life-cycle of VNF (define/start/stop/undefine)
 
# Performance and Health monitoring of deployed VNFs
 
# Auto Healing VNFs based on Policy
 
# Facilitate initial configuration of VNF
 
  
 +
http://docs.openstack.org/developer/tacker/
  
'''Relation to Nova, Glance, Heat''' :
+
== Install Guide ==
  
Tacker makes use of Nova and Glance for VM and image management.  
+
http://docs.openstack.org/developer/tacker/#installation
Tacker makes use of Heat as a subsystem to manage virtual devices.
 
  
 
= Use Cases =
 
= Use Cases =
Line 41: Line 47:
 
=== vCE ===
 
=== vCE ===
  
Tacker API can be used by SP's OSS / BSS or a NFV Orchestrator to deploy VNFs in SP's network to deliver agile network services for remote Customer networks
+
Tacker API can be used by SP's OSS / BSS or an NFV Orchestrator to deploy VNFs in SP's network to deliver agile network services for remote Customer networks
  
 
=== vCPE ===
 
=== vCPE ===
  
Tacker API can be used by SP's OSS / BSS or a NFV Orchestrator to manage OpenStack enabled remote CPE devices to deploy VNFs to locally provide network services at customer site.
+
Tacker API can be used by SP's OSS / BSS or an NFV Orchestrator to manage OpenStack enabled remote CPE devices to deploy VNFs to provide locally network services at the customer site.
  
 
=== vPE ===
 
=== vPE ===
  
Tacker API can be used by SP's OSS / BSS or a NFV Orchestrator to deploy VNFs within SP's network to virtualize existing network services into a Virtual Function.
+
Tacker API can be used by SP's OSS / BSS or an NFV Orchestrator to deploy VNFs within SP's network to virtualize existing network services into a Virtual Function.
 +
 
 +
= ETSI NFV SPECS =
 +
[http://www.etsi.org/standards-search#page=1&search=&title=1&etsiNumber=1&content=0&version=0&onApproval=1&published=1&historical=0&startDate=1988-01-15&endDate=2017-02-03&harmonized=0&keyword=&TB=789,,832,,831,,795,,796,,800,,798,,799,,797&stdType=&frequency=&mandate=&sort=1 ETSI NFV SPECS]
 +
 
 +
= TOSCA for NFV =
 +
 
 +
Tacker uses TOSCA for VNF meta-data definition. Within TOSCA Tacker used NFV profile schema.
 +
* TOSCA YAML
 +
** YAML Simple Profile: http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.1/csprd02/TOSCA-Simple-Profile-YAML-v1.1-csprd02.html
 +
* TOSCA NFV Profile:
 +
** Latest spec is available here: https://www.oasis-open.org/committees/document.php?document_id=56577&wg_abbrev=tosca
 +
** Current latest (as of Oct 2015) is: https://www.oasis-open.org/committees/download.php/56577/tosca-nfv-v1.0-wd02-rev03.doc
 +
 
 +
=  Tacker + SFC (Service Function Chaining)  =
 +
 
 +
The proposal to enable SFC for Tacker is captured in these slides,
 +
 
 +
https://docs.google.com/presentation/d/18AGaiysVgHOd_fIHVpObMO7zUkMjJGOQ98CUwkxU1xo/edit?usp=sharing
 +
 
 +
=  Weekly Meetings and Mailing List =
  
= Installation =
 
  
[[ Tacker/Installation ]]
+
'''IRC Channel:''' <code><nowiki>#tacker</nowiki></code>
 +
 
 +
'''Meetings:''' Wednesday 0530 UTC [Weekly]  @ <code><nowiki>#openstack-meeting</nowiki></code>
  
= TOSCA for NFV =
+
'''Tags:'''  [NFV] [Tacker]<br />
  
Tacker uses TOSCA for VNF meda-data definition. Within TOSCA Tacker used NFV profile schema,
+
=  Meeting Minutes =
  
* TOSCA NFV Profile (working draft): https://www.oasis-open.org/committees/download.php/55662/tosca-nfv-v1.0-wd01-rev04.doc
+
http://eavesdrop.openstack.org/meetings/tacker/
  
 
=  Repos =
 
=  Repos =
Line 66: Line 93:
 
! colspan="2"|  Git  
 
! colspan="2"|  Git  
 
|-
 
|-
| Tacker || http://git.openstack.org/cgit/stackforge/tacker/
+
| Tacker || http://git.openstack.org/cgit/openstack/tacker/
 
|-
 
|-
| Tacker Specs || http://git.openstack.org/cgit/stackforge/tacker-specs/
+
| Tacker Specs || http://specs.openstack.org/openstack/tacker-specs/
 
|-
 
|-
| Tacker Python Client  || http://git.openstack.org/cgit/stackforge/python-tackerclient/
+
| Tacker Python Client  || http://git.openstack.org/cgit/openstack/python-tackerclient/
 
|-
 
|-
 
! colspan="2" |  Gerrit
 
! colspan="2" |  Gerrit
 
|-
 
|-
| Tacker || https://review.openstack.org/#/q/status:open+project:stackforge/tacker,n,z
+
| Tacker || https://review.openstack.org/#/q/status:open+project:openstack/tacker,n,z
 
|-
 
|-
| Tacker Specs || https://review.openstack.org/#/q/status:open+project:stackforge/tacker-specs,n,z
+
| Tacker Specs || https://review.openstack.org/#/q/status:open+project:openstack/tacker-specs,n,z
 
|-
 
|-
| Tacker Python client || https://review.openstack.org/#/q/status:open+project:stackforge/python-tackerclient,n,z
+
| Tacker Python client || https://review.openstack.org/#/q/status:open+project:openstack/python-tackerclient,n,z
 
|-
 
|-
 
|}
 
|}
  
 +
= Reviews =
 +
 +
[https://review.openstack.org/#/q/project:openstack/tacker+OR+project:openstack/python-tackerclient+OR+project:openstack/tacker-horizon+OR+project:openstack/tacker-specs+AND+status:open,n,z Tacker Code and Spec Reviews ]
  
= Reviews =
+
[https://review.openstack.org/#/q/(project:openstack/tacker+OR+project:openstack/python-tackerclient+OR+project:openstack/tacker-horizon+OR+project:openstack/tacker-specs)+AND+status:open,n,z Tacker Open Code and Spec Reviews]
 +
 
 +
= Bugs =
  
[https://review.openstack.org/#/q/project:stackforge/tacker+OR+project:stackforge/python-tackerclient+OR+project:stackforge/tacker-horizon+OR+project:stackforge/tacker-specs+AND+status:open,n,z Tacker Code and Spec reviews ]
+
https://bugs.launchpad.net/tacker
  
 +
[https://bugs.launchpad.net/tacker/+bugs?field.searchtext=&orderby=-importance&field.status%3Alist=NEW&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=FIXCOMMITTED&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&assignee_option=none&field.assignee=&field.bug_reporter=&field.bug_commenter=&field.subscriber=&field.structural_subscriber=&field.tag=&field.tags_combinator=ANY&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on&field.has_blueprints.used=&field.has_blueprints=on&field.has_no_blueprints.used=&field.has_no_blueprints=on&search=Search Unassigned Bugs]
 
= Points of contact =
 
= Points of contact =
  
Line 109: Line 142:
 
|  Spec/Patch Tracking  ||  [https://wiki.openstack.org/wiki/Tracking_ServiceVM_Reviews Spec & Patch Tracking ]
 
|  Spec/Patch Tracking  ||  [https://wiki.openstack.org/wiki/Tracking_ServiceVM_Reviews Spec & Patch Tracking ]
 
|-
 
|-
| Liberty Tacker Talk  || [http://sched.co/2qik Sched Link]
+
| Liberty Summit Tacker Talk  || [http://sched.co/2qik Sched Link]
 
|-
 
|-
 
| Juno Design Summit || [[Tacker/JunoSummit]]
 
| Juno Design Summit || [[Tacker/JunoSummit]]
 
|-
 
|-
 
|  Team  ||  [https://wiki.openstack.org/wiki/Tacker/Incubation#Team_Members Team Members ]
 
|  Team  ||  [https://wiki.openstack.org/wiki/Tacker/Incubation#Team_Members Team Members ]
 +
|-
 +
|  Tacker API doc  ||  http://developer.openstack.org/api-ref/nfv-orchestration/
 +
|-
 +
|  Tacker Client doc  ||  http://docs.openstack.org/cli-reference/tacker.html
 
|}
 
|}
 
  
 
= Wiki Pages =
 
= Wiki Pages =
 
{{Special:PrefixIndex/ServiceVM}}
 
{{Special:PrefixIndex/ServiceVM}}

Revision as of 03:26, 15 February 2017


Tacker - OpenStack NFV Orchestration

Tacker is an official OpenStack project building a Generic VNF Manager (VNFM) and a NFV Orchestrator (NFVO) to deploy and operate Network Services and Virtual Network Functions (VNFs) on an NFV infrastructure platform like OpenStack. It is based on ETSI MANO Architectural Framework and provides a functional stack to Orchestrate Network Services end-to-end using VNFs.

Tacker Architecture.png

High Level Architecture

NFV Catalog

  1. VNF Descriptors
  2. Network Services Decriptors
  3. VNF Forwarding Graph Descriptors

VNFM

  1. Basic life-cycle of VNF (create/update/delete)
  2. Enhanced platform-aware (EPA) placement of high-performance NFV workloads
  3. Health monitoring of deployed VNFs
  4. Auto Healing / Auto Scaling VNFs based on Policy
  5. Facilitate initial configuration of VNF

NFVO

  1. Templatized end-to-end Network Service deployment using decomposed VNFs
  2. VNF placement policy – ensure efficient placement of VNFs
  3. VNFs connected using an SFC - described in a VNF Forwarding Graph Descriptor
  4. VIM Resource Checks and Resource Allocation
  5. Ability to orchestrate VNFs across Multiple VIMs and Multiple Sites (POPs)

Tacker-Architecture.jpg


Documentation

http://docs.openstack.org/developer/tacker/

Install Guide

http://docs.openstack.org/developer/tacker/#installation

Use Cases

vCE

Tacker API can be used by SP's OSS / BSS or an NFV Orchestrator to deploy VNFs in SP's network to deliver agile network services for remote Customer networks

vCPE

Tacker API can be used by SP's OSS / BSS or an NFV Orchestrator to manage OpenStack enabled remote CPE devices to deploy VNFs to provide locally network services at the customer site.

vPE

Tacker API can be used by SP's OSS / BSS or an NFV Orchestrator to deploy VNFs within SP's network to virtualize existing network services into a Virtual Function.

ETSI NFV SPECS

ETSI NFV SPECS

TOSCA for NFV

Tacker uses TOSCA for VNF meta-data definition. Within TOSCA Tacker used NFV profile schema.

Tacker + SFC (Service Function Chaining)

The proposal to enable SFC for Tacker is captured in these slides,

https://docs.google.com/presentation/d/18AGaiysVgHOd_fIHVpObMO7zUkMjJGOQ98CUwkxU1xo/edit?usp=sharing

Weekly Meetings and Mailing List

IRC Channel: #tacker

Meetings: Wednesday 0530 UTC [Weekly] @ #openstack-meeting

Tags: [NFV] [Tacker]

Meeting Minutes

http://eavesdrop.openstack.org/meetings/tacker/

Repos

Git
Tacker http://git.openstack.org/cgit/openstack/tacker/
Tacker Specs http://specs.openstack.org/openstack/tacker-specs/
Tacker Python Client http://git.openstack.org/cgit/openstack/python-tackerclient/
Gerrit
Tacker https://review.openstack.org/#/q/status:open+project:openstack/tacker,n,z
Tacker Specs https://review.openstack.org/#/q/status:open+project:openstack/tacker-specs,n,z
Tacker Python client https://review.openstack.org/#/q/status:open+project:openstack/python-tackerclient,n,z

Reviews

Tacker Code and Spec Reviews

Tacker Open Code and Spec Reviews

Bugs

https://bugs.launchpad.net/tacker

Unassigned Bugs

Points of contact


Quick Links

Design & Documentation Tacker/Design
Resources Tacker/Resources
Action Items Tacker/ActionItems
Dependencies & Wish List Tacker/Dependencies
Spec/Patch Tracking Spec & Patch Tracking
Liberty Summit Tacker Talk Sched Link
Juno Design Summit Tacker/JunoSummit
Team Team Members
Tacker API doc http://developer.openstack.org/api-ref/nfv-orchestration/
Tacker Client doc http://docs.openstack.org/cli-reference/tacker.html

Wiki Pages