Tacker: ETSI MANO NFV Orchestrator / VNF Manager. See https://wiki.openstack.org/wiki/Tacker
Go to file
Koichiro Den c1b2c362f0 Fix two-stage process launcher in tacker-server
tacker-server has got two-stage process launcher since a long time ago.
While it doesn't matter if {api_workers} is set to one or unset, which
is the case by default on installation via devstack, it should have
resulted in an odd situation in other cases as follows:

1). surprisingly the number of workers was not {api_workers} but
    {api_workers}*{api_workers}. Notice that the launcher processes are
    also present so the resulting number of tacker-server processes was
    1+{api_workers}*({api_workers}+1).

    E.g., when {api_workers}=100, the number of tacker-server processes
    is 10101.

2). GreenPool is per the second stage launcher. That means {api_workers}
    number of workers, each of which is a green thread on a seperate
    process (spawned by ProcessLauncher), share the same pool. It means
    that the second stage launcher does not only fail to provide
    performance scaling, but also more likely to unnecessarily keep some
    workers starved due to a process which starts sleeping before
    yielding.

This patch fixes it so that there is just a one-stage launcher.

    [Before this patch]
        master
          ├── worker#0 # second-stage launcher
          │   ├── worker#0-0 (*1)
          │   ├── worker#0-1 (*1)
          │   :
          │   └── worker#0-{api_workers-1} (*1)
          ├── worker#1 # second-stage launcher
          :
          └── worker#{api_workers-1}
              :
              └── worker#{api_workers-1}-{api_workers-1} (*1)

    [After this patch]
        master
          ├── worker#0 (*1)
          ├── worker#1 (*1)
          :
          └── worker#{api_workers-1} (*1)

    (*1) spawns one green thread at the start.

Closes-Bug: #1923528
Change-Id: I2bf567a0367659c170af0b618374a51d0f13eece
2021-04-23 09:33:49 +09:00
api-ref/source Add response information for Individual Subscription 2021-03-26 11:24:44 +00:00
contrib/tacker-config Add support SFC encapsulation from networking-sfc 2019-01-28 17:16:33 +09:00
devstack Enable neutron plugin for Octavia 2021-03-17 06:36:07 +00:00
doc Fix some bugs related legacy cnf operations 2021-03-29 10:16:59 +00:00
etc Fix typo and missing configure for mgmtdriver 2021-03-10 09:21:54 +00:00
playbooks/devstack Restore Ceilometer installation 2021-01-14 15:05:24 +09:00
releasenotes Support Placement Constraints for Grant 2021-04-01 08:42:52 +00:00
roles Add a k8s cluster for the k8s related FT in zuul 2021-02-08 13:11:16 +00:00
samples Merge "Fix exception not raised while install script failed" 2021-04-08 12:58:15 +00:00
tacker Fix two-stage process launcher in tacker-server 2021-04-23 09:33:49 +09:00
tools include mariadb, mariadb-server in bindep, for tests 2021-03-02 07:26:09 +00:00
.coveragerc Cleanup and fix Tacker coverage 2016-04-21 06:08:06 +00:00
.gitignore Add vnf package conf options and sample config file to docs 2019-09-19 08:49:08 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:36:08 +00:00
.mailmap import neutron master of cba140daccd7c4f715263cda422d5cec27af069d 2014-07-01 17:11:09 +09:00
.pylintrc import neutron master of cba140daccd7c4f715263cda422d5cec27af069d 2014-07-01 17:11:09 +09:00
.stestr.conf Switch to using stestr 2018-06-14 04:49:05 +00:00
.zuul.yaml Add Python3 xena unit tests 2021-04-01 08:44:55 +00:00
bindep.txt include mariadb, mariadb-server in bindep, for tests 2021-03-02 07:26:09 +00:00
CONTRIBUTING.rst [ussuri][goal] Update contributor documentation 2020-05-04 08:37:57 +00:00
HACKING.rst Trivial: Add running tests section to HACKING.rst 2018-07-25 10:46:43 +09:00
LICENSE import neutron master of cba140daccd7c4f715263cda422d5cec27af069d 2014-07-01 17:11:09 +09:00
lower-constraints.txt Fix UT and FT VNFD yaml because lack of properties 2021-04-01 13:32:28 +09:00
README.rst Start README.rst with a better title 2019-11-28 09:36:59 +08:00
requirements-extra.txt Temporary revert to install ht and tp with pip 2021-03-10 05:44:28 +00:00
requirements.txt Fix UT and FT VNFD yaml because lack of properties 2021-04-01 13:32:28 +09:00
setup.cfg Fix typo and missing configure for mgmtdriver 2021-03-10 09:21:54 +00:00
setup.py Cleanup Python 2.7 support 2020-03-29 20:23:26 +00:00
test-requirements.txt Implement SOL001 features to MgmtDriver 2021-02-18 17:29:39 +09:00
TESTING.rst Trivial: Update HACKING.rst with stestr 2018-08-07 16:20:40 +09:00
tox.ini Temporary revert to install ht and tp with pip 2021-03-10 05:44:28 +00:00
upper-constraints.txt Update upper-constraints.txt 2021-03-08 14:58:28 +00:00

Tacker

image

Welcome!

Tacker is an OpenStack based NFV Orchestrator service with built-in general purpose VNF Manager to deploy and operate Virtual Network Functions (VNFs) on an OpenStack based NFV Platform. It is based on ETSI MANO Architectural Framework and provides a fully functional stack to orchestrate VNFs end-to-end.

Installation:

Installation instructions and user guides can be found at: https://docs.openstack.org/tacker/

Tacker code base supports OpenStack master and other releases. Please follow the instructions in the above address for a successful installation of corresponding release.

Code:

Tacker code is available in following repositories:

Bugs:

Please report bugs at: https://bugs.launchpad.net/tacker

External Resources: