Fixed the problem that "vnflcm_mgmt_driver = vnflcm_noop" does not exist
in /etc/tacker/tacker.conf after installing the tacker.
In setup.cfg, change vnflcm_drivers to vnflcm_driver.
In etc/config-generator.conf, add "namespace = tacker.vnflcm.vnflcm_driver".
Closes-Bug: #1918232
Change-Id: I50ffb4c96837599dcb0d04dd673e0c4681ffedfa
These translation sections are not needed anymore,
* extract_messages
* compile_catalog
* update_catalog
As Babel can generate translation files without them.
Change-Id: I2ec08d6b9c26795f77226e324d642662412fe0de
* Enable VNF vendors to customize configuration methods
for applications via MgmtDriver
* Load LCM interface from vnfd file
* Call LCM methods from vnflcm_driver
* Fix unitentional mgmt_calls in vnflcm_driver._scale_vnf_pre
Note:
* For UT, sqlalchemy is used, which calls functions in pymysql.py,
so the dependency module PyMySQL needs to be added.
* The previous implementation of ``cfg.CONF.tacker.infra_driver``
depends on the default config in legacy ``VNFMPlugin`` class in
tacker/vnfm/plugin.py, so we need to fix this here.
* Due to drop unitentional mgmt_calls, it makes compatibility breakage
for some scale actions calls and third party driver support. This
backward incompatibility was decided to keep since it is not long
time since last change(Victoria release)
Change-Id: Ib4ad3eb9e0a84d1a5e807d2e6004e6b2c02bf3cf
Add fenix plugin for host maintenance.
This feature creates plugin for fenix, create_vnf_maintenance() in VNFM and
VNFMaintenanceAlarmMonitor to create alarm for Fenix. And the feature modifies
alarm_receiver and CRUD in VNFM.
After this feature, all VNF has ALL_MAINTENANCE resource to interacts
with Fenix plugin and [VDU_NAME]_MAINTENANCE if VDU has maintenance property.
[VDU_NAME]_MAINTENANCE will use to perform VNF software modification.
Currently, the plugin can perform CRUD constraints for maintenance,
scale in/out and migration for MIGRATE and LIVE_MIGRATE. The feature has
functions for OWN_ACTION with modified healing, but it not works based on
default vnf workflow in Fenix. And The feature doesn't support server_group
and related with HA like switch over because of unsupported in Tacker.
So these features will be enhance after adding required.
Co-Authored-By: Hyunsik Yang <yangun@dcn.ssu.ac.kr>
Implements: blueprint vnf-rolling-upgrade
Change-Id: I34b82fd40830dd74d0f5ef24a60b3ff465cd4819
Now that we are running the Victoria tests that include a
voting py38, we can now add the Python 3.8 metadata to the
package information to reflect that support.
Change-Id: Id7f6c8710dd1c1278c54b42d5fda03591b03aaaa
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
OpenStack is dropping the py2.7 support in ussuri cycle.
Make a few cleanups:
- Remove python 2.7 stanza from setup.py
- Add requires on python >= 3.6 to setup.cfg so that pypi and pip
know about the requirement
- Remove section from setup.cfg: Wheel is not needed for python
3 only repo
- Remove ancient sections from setup.cfg
- Update requirements
- Update api-ref/source/conf.py for current openstackdocstheme
- Don't test for broken po files, this is done in the infra scripts
since a long time
- Change shebang lines to use python3
Change-Id: If5276a47b8822c5c19d045fbc5c41394f4a9dd2d
1. Added new config options for vnf packages.
2. This will generate a new sample config each time build
sphinx is run. This is then used on a new docs page
where you can either view the file in its entirety,
or download the file.
Partial-Implements: blueprint tosca-csar-mgmt-driver
Co-Author: Bhagyashri Shewale <bhagyashri.shewale@nttdata.com>
Co-Author: Neha Alhat <neha.alhat@nttdata.com>
Change-Id: I900af00af7f939e6069411104caa714f396dc509
This patch adds below functionality:
- New policy action ``vdu_autoheal`` for recovering failed VDUs
as reported by the respective monitoring driver configured in
the monitoring policy of the VNFD template.
- Add unit/functional tests.
- Added oslo_versioned library to implement HealVnfRequest object.
Note: The implementation of vdu_autoheal policy action will support
HealVnfRequest interface as mentioned in the ETSI standard [1]
[1]: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/02.05.01_60/gs_NFV-SOL003v020501p.pdf
Implements: blueprint vdu-auto-healing
Change-Id: If62acbdac41c92842de0ae3b7dedcda9fd1f86e6
This commit adds the functionality of tacker-status CLI for performing
upgrade checks as part of the Stein cycle upgrade-checkers goal.
It only includes a sample check which must be replaced by real checks in
future.
Change-Id: I7bb127fa10dd168ab24dd8c42013576f84eadfbb
Story: 2003657
Task: 26158
This spec proposes implementing containerized VNF. We choose
to use Kubernetes resources (ConfigMap, Deployment, Horizontal
Pod Autoscaler, Service, etc) to define a containerized VNF.
1. Add "configurable_properties" type in VDU node.
2. Support translate TOSCA to Kubernetes templates.
3. Add kubernetes infra driver to support CRUD containerized
VNF.
Implements: blueprint containerised-vnfs
Change-Id: I706f1f325ca8c2b33debd7e6a13e81535245a5ad
Develop a Zabbix plugin in Tacker VNF manager to monitor application level
parameters that can't be supported by current Tacker monitoring driver
Change-Id: I25e871b8e8ddfb49a1f3f22e78c1ea8ba9835d74
Implements: blueprint zabbix-plugin
This patch add kubernetes_driver in vim nfvo and kubernetes_utils to support
CRUD Kubernetes cluster VIM (register, deregister, delete and update).
Partially Implements: blueprint kubernetes-as-vim
Change-Id: Ib1bf4d78ca4796c4e0297bca6fc7e9f004078242
1. scaling and monitoring policy nodes got failed
From tosca-parser 0.8.0, tosca nodes required to be validated.
Unfortunately, the scaling and monitoring policies are not fully
leveraged tosca-parser. This patch will fix this issue.
2. Multiple alarm actions support
Closes-bug: #1682098
Change-Id: I29cb35edfe2447628fa93c64583e5cb4f7bee2f8
1. Add new option 'use_barbican' in config file [vim_keys] section,
default value is False for Pike.
2. Use fernet to encrypt vim password, and save the fernet key into
barbican as a secret.
3. Add new fields 'key_type', 'secret_uuid' into VimAuth.auth_cred
json string. secret_uuid is masked in vim-show or vim-list response.
4. Set the vim's default 'shared' value to False,
vim can only be used by who created it.
5. Add a devref to show how to test.
6. Add a release note.
Implements: blueprint encryption-with-barbican
Partial-bug: #1667652
Change-Id: I5c779041df5a08a361b9aaefac7d241369732551
This patch sets up the rpc queue named KILL_ACTION.<vim_id>
in mistral action class. When vim is deleted, the tacker server
will send(cast) kill message to the mistral task, which will exit.
To test it:
1. python setup.py develop
2. mistral-db-manage --config-file /etc/mistral/mistral.conf
populate
3. restart mistral related service and tacker service
4. tacker vim-register to register a vim
5. mistral workflow-list to check if the monitor workflow is
started
6. tacker vim-delete to check if the workflow and task is deleted
DocImpact
Implements: blueprint refactor-vim-monitor
Change-Id: I078917af65e57305c06b4605835c9d0d3dc1cf68
This patch enables the message rpc framework which tacker conductor
will use. After started via tacker_conductor script, it will listen
on tacker_conductor, tacker_conductor.<host> and one fanout queues.
These three queues are intialized in oslo service module. And topic
queue tacker_conductor will be used by mistral actions.
How to test it:
document will be written after the whole vim monitor is ready.
To test this patch, after 'python setup.py develop', run
'tacker-conductor --config-file /etc/tacker/tacker.conf', and then
use 'rabbitmqctl list_queues' which will list three queues starting
with 'tacker_conductor'.
DocImpact
Implements: blueprint refactor-vim-monitor
Change-Id: Ide80674099d384aed1a98b22928e9fc6bcfa3ff9
Currently, backend actions are tightly coupled with monitor module.
This is like a barrier when we have a various actions in the future.
Also, it will be good for separating monitoring-related features out
from tacker-server. This patch also proposes a policy action framework so
that VNF operators can easily add their own actions.
Change-Id: I6ad163f7435c3b778810f96c506c77298be0c53d
Closes-bug: #1582446
The gating on python 3.4 is restricted to <= Mitaka. This is due to
the change from Ubuntu Trusty to Xenial, where only python3.5 is
available. There is no need to continue to keep these settings.
Change-Id: Ib94f0f269173072b5a4c77d46b43852e78092487
Add definition of alarm monitor in VNFD TOSCA template definition,
support it in VNFM plugin. It can integrate with scaling feature.
An WSGI filter is used to receive ceilometer action URL call and
translate the call into inner action, such as scalling.
The configuration group alarm_auth in tacker.conf is used as the
credentials for ceilometer action URL call. they must have 'admin'
role to query all related stuff for the action.
Implements blueprint: #alarm-based-monitoring-driver
Co-Authored-By: dharmendra kushwaha <dharmendra.kushwaha@nectechnologies.in>
Co-Authored-By: gong yong sheng <gong.yongsheng@99cloud.net>
Change-Id: I7f1dbae361a5dfb97a86e8532bfd09813ce535e2
Currently, infra driver name is derived from VNFD API attribute
infra_driver during VNFD template onboarding. This limits the catalog
to be used for a specific VIM type. VNFD template should be generic
enough to be deployed on any VIM and should not contain infra driver
specific information.
This patch is a follow on for infra driver deprecation [1]
infra_driver value in VNFD request is silently ignored. The infra driver
derivation is now handled during VNF deployment workflow based on user
provied vim_id and corresponding vim_type.
[1] https://review.openstack.org/#/c/363455/
Partial-bug: #1618724
Partially Implements: blueprint infra-driver-refactor
Change-Id: I44cfd18ab75e32872776952560d1f716e99301d5
Previous patch https://review.openstack.org/#/c/349776/
has renamed the DB part.
tacker/vm/plugin.py and tacker/db/vm/vm_db.py are not renamed
in this patch due to the git problem. (It is always be done by
'delete/add' instead of 'rename').
They will be renamed in later patch with unit tests.
Change-Id: I334e0e79c8bdba4a10d97ab691b1e6b242a0f1c5
Partial-bug: #1589018
This commit enables the event model/db, common services plugin
and extenstions for audit support of Tacker resources.
Implements: blueprint: audit-support
Change-Id: I8fe824d335917c07d4b51dd63effae5f33bf0c32
Co-Authored-By: Kanagaraj Manickam <mkr1481@gmail.com>
Sample tacker.conf is no longer included in the source
tree, instead the installer is expected to generate it.
Hence reference to etc/tacker/tacker.conf in setup.cfg
needs to be removed.
Closes-Bug: #1609739
Change-Id: I5abd6c95e93ed02740a061e1d9347774a3ce8c73
Since there are so many components in openstack,
by describing the URL info in the configuration file,
it is more convenient to find the developer documentation
than from the unified portal
Change-Id: I6ac79b9c573d5d551c789c8fa3ad7ff5d14cbf2c
It also make required keystone config changes as part
of devstack plugin, which helps the functional test cases
to successfully complete and it makes inline with existing
tacker conf.
Closes-bug: #1592247
Change-Id: I545ceb2c9e61c22dbd8a0e1ee39a6e4fa24f8e88
Added support for multisite OpenStack VIM feature through a new
'nfvo' extension. This also enables remote VNF life cycle manage-
ment through the VIM Id parameter.
Implements: blueprint multi-site-vim
Depends-On: I3c08945f24343288c2c5614ab4b472d68a1e1d47
Change-Id: I7dd19a0c1ce948474bb3069073b3608ce265beb4
mgmt_driver, monitor_driver and infra_driver are configuration
items. Some of them are multistropt, some are listopt.
This patch uses the listopt for all of them.
In addition, rename drivers dir into infra_drivers.
Change-Id: I5bbc7b6a52d97dae8bbca7dd2e804b7c50c8f7a4
Closes-bug: 1524255