48 Commits

Author SHA1 Message Date
Jangwon Lee
df0ba6b7e0 Implementation Fenix plugin in Tacker
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
2020-09-24 04:20:06 +00:00
tpatil
298d089bff Remove extensions from vnf package wsgi app
Vnf package wsgi app doesn't require extensions
so this patch removes it from composite:vnfpkgmapi_v1.

Change-Id: I724937cd5febc3fd83d8b76a922fae4ed5f5f939
2020-04-23 07:46:09 +00:00
Ajay Parja
dcbeac526b Add vnflcm support base framework
Added vnflcm controller and router Rest API code.

Change-Id: I237f263df7eb41c0ca768869a8e5ce25637f13ca
Blueprint: support-etsi-nfv-specs
2020-04-14 00:38:42 +00:00
Niraj Singh
4fa204b370 Add vnf packages RestFul APIs
Implemented following APIs:-

* GET    /vnf_packages
* POST   /vnf_packages/
* GET    /vnf_packages/{vnfPkgId}
* DELETE /vnf_packages/{vnfPkgId}
* PUT    /vnf_packages/{vnfPkgId}/package_content
* POST   /vnf_packages/{vnfPkgId}/package_content/upload_from_uri

Partial-Implements: blueprint tosca-csar-mgmt-driver

Depends-On: If8155399df12a96cb86631dfa22eaca7a5a8d398

Co-Author: Neha Alhat <neha.alhat@nttdata.com>
Change-Id: Id3b4812e24a1ed84fe94429e074f96ae11530517
2019-09-20 06:48:28 +00:00
Niraj Singh
202e2594a2 Add vnf package conf options and sample config file to docs
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
2019-09-19 08:49:08 +00:00
Niraj Singh
34b661ad08 Implement policy in code
* Added policy in code as per community goals [1] for vnf packages.
* Modified tox to generate policy sample json file.

[1]: https://governance.openstack.org/tc/goals/queens/policy-in-code.html

Partial-Implements: blueprint tosca-csar-mgmt-driver

Co-Author: Neha Alhat <neha.alhat@nttdata.com>
Co-Author: Bhagyashri Shewale <bhagyashri.shewale@nttdata.com>
Change-Id: I7cedbca4abe41223e3f8d6211a74b4347299e9e5
2019-09-19 06:30:04 +00:00
Niraj Singh
2e461e1223 Add vnfpkgm api support
Added base framework for vnf packages.

Partial-Implements: blueprint tosca-csar-mgmt-driver

Co-Author: Neha Alhat <neha.alhat@nttdata.com>
Change-Id: I7efdc03ed2b7ef15bf3006523dbc09894366779c
2019-09-18 09:33:57 +00:00
liuyuanyuan
eab8c1b71f Fix the warning when generate tacker.conf.sample
Fix the warning when execute ./tools/generate_config_file_sample.sh
to generate the configuration file tacker.conf.sample

Closes-Bug: #1807863
Change-Id: I45e60410a92d14936a5dab061469c17348f55ca5
2018-12-11 17:30:33 +08:00
dharmendra kushwaha
faeea96d26 Revert "Add log file to tacker-server systemctl daemon script"
Due this patch there are some issue with logging:

1: No Tacker logs generating on gate.
2: No logs in journalctl
3: unable to set log location with config file.

So here reverting this patch.

Closes-Bug: #1782718

This reverts commit 7f60e64bd3cdca461e1e3b507a1b557fd3240a89.

Change-Id: I8dd56d049459037a0f5ea5fd11aaa4449fc55f0f
2018-07-23 08:12:49 +00:00
Yan Xing'an
7f60e64bd3 Add log file to tacker-server systemctl daemon script
In devstack tacker script, create /var/log/tacker dir,
then add --log-file parameter to systemctl srcipt.

Closes-bug: #1777622
Change-Id: I6ddec836159ed84d6ffad1a19384cca28c0b7c2d
2018-06-20 11:19:06 +08:00
Li Jiale
136a001ad2 tacker conductor service doesn't start after manual installation
The installation instructions for tacker conductor are not
included in the installation manual.

Close-Bug: #1777566
Change-Id: I47b2f76fe7df9b4de229d3bdc95700ad9dc1f99a
2018-06-19 13:50:36 +08:00
dharmendra
c6b758477c Permission issue with heat.
While deploying a vnf with autoscaling, heat translator failed with
premission denied error. This issue occured because [1] opening file
in root dir (i.e. '/'), due to which it giving permission denied.
Fixing it by setting current working dir as '/temp'

[1]: https://github.com/openstack/heat-translator/blob/master/translator/hot/tosca_translator.py#L69

Change-Id: Ib2b0fd6c4c32a523b9fb25f47eae19225b84439f
Closes-bug: #1749394
2018-02-26 13:04:23 +00:00
Cong Phuoc Hoang
18ac452c38 Implementation containerized VNF in Kubernetes type
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
2018-02-02 16:43:46 +09:00
Yan Xing'an
c772bedcac Fix could not load modules when devstack installing
These modules have no config OPTS, so we remove them:
tacker.tacker.policy_actions.log.log,
tacker.tacker.policy_actions.respawn.respawn,
tacker.tacker.policy_actions.autoscaling.autoscaling

Change-Id: I553449ad1ef4e0182531ecb0c19938630a977bd1
Closes-Bug: #1734031
2017-11-23 14:46:55 +08:00
Yan Xing'an
07428d4985 Support to use barbican to encode vim password
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
2017-06-26 07:23:10 -07:00
doantungbk
829f50e915 Refactor: separating backend actions out from monitor
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
2017-05-17 05:53:31 -07:00
dharmendra
701a977b06 Misc correction in README
TrivialFix

Change-Id: I42c7d5b669890449076f8afedc5ec5345effc0de
2017-01-22 13:41:37 +00:00
gong yong sheng
10462bc1e2 Remove deprecated heat infra_driver
Change-Id: I8d708c996825155e6c5af0f978438ae685771c65
Closes-bug: 1634013
2017-01-06 03:09:16 +00:00
Jenkins
2b4a5aadba Merge "Updates config generator conf" 2016-11-10 19:24:39 +00:00
gong yong sheng
921afb13fa Remove deprecated default_vim config item
Change-Id: I4ff6a65777e379c6b4b5604eda3844f8fb6935ac
Closes-bug: 1633997
2016-10-24 11:13:22 +08:00
Kanagaraj Manickam
0a631c7a06 Updates config generator conf
oslo.xxx and keystone middleware configurations
are added now to the config generator

Closes-Bug: #1633974

Change-Id: Ief0d106f45248af0ab21de4815ea6e361165df48
2016-10-17 09:30:20 +05:30
doantungbk
2d8baa76bd Implement Alarm monitor
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
2016-09-22 15:31:47 +09:00
Sripriya
a8e0aa35eb Derive infra driver using VIM type
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
2016-09-16 00:26:12 -07:00
gong yong sheng
3c422ddc3e Device refactor Part3: Rename device in codes
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
2016-08-26 16:26:57 +08:00
Kanagaraj Manickam
e575760d3c Sample tacker.conf generator
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
2016-07-21 12:11:42 +05:30
Sridhar Ramaswamy
0d9f84c451 oslo: remove usage of oslo.log verbose option
The option was deprecated a long time ago, and will be removed in one of
the next library releases, which will render tacker broken if we keep
using the option.

More details:
http://lists.openstack.org/pipermail/openstack-dev/2016-May/095166.html

Change-Id: Iebd08194a600d3537df7a5ee7ab735e8f0a38899
Closes-Bug: #1586066
2016-06-07 00:22:05 +00:00
gong yong sheng
68b2fcb028 Change default port into 9890
Previous 8888 is mostly used as alternative port for 8080, 80.
This patch changes tacker port into 9890 to avoid conflict.

Ranged 9890-9897 is unassinged according to
https://www.ietf.org/assignments/service-names-port-numbers/service-names-port-numbers.txt

Change-Id: Idbbb74bb15ec1310aff0393636a4952d6eb7b877
Closes-bug: 1588065
2016-06-03 11:56:56 +08:00
Sripriya
5e71d14f9a Deprecate infra driver nova for Mitaka
Infra driver nova is deprecated as of Mitaka and will be removed
for Netwon release

Change-Id: Iaf1dba67bda5c6e77b719d04cc86d1295b7ca56b
Partial-Bug: #1544332
2016-04-11 16:25:17 -07:00
Sripriya
0fdd5a4717 Implement multisite VIM feature
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
2016-03-28 15:32:54 -07:00
gong yong sheng
a3c44eb089 Unify the driver config opts
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
2016-02-16 14:53:10 +08:00
an.abdulrehman
3132ca51be Renamed 'servicevm' 'advsvc' in tacker install file
Initially the service name was 'servicevm' and 'advsvc' in install file.
Now it's been renamed to 'tacker' and 'nfv-role'. Change in install file
(tacker/devstack/lib/tacker) was necessary to show the updated names
in horizon/dashboard for tacker service.

Change-Id: I740f3bfe04525d616c8f7df2847cee8a8d2b1cab
Depends-on: I919d77276af72586a20f50239166325adbf9fb11
Depends-on: I097ccbfb7ae192410400b06bd8796e81e62ee65e
Closes-Bug: #1524224
2016-01-21 05:57:03 +00:00
gong yong sheng
5c7d475eb3 Remove Service instance, context resources
These resources are out of the scope of tacker

Change-Id: Ib585e44e629908ca97c5ab67cdb8ed4375b61fe7
Closes-bug: 1519968
2015-12-10 04:09:01 -05:00
Sripriya Seetharam
e876c5b06b Increase the heat stack wait time out
This fix handles the usecase where Tacker falsely sets the VNF to
ERROR state after waiting for 50 seconds even though the actual
stack is succesfully completed whose creation time is greater than
50 seconds.

The current default wait time out of 50 seconds is bumped up to
300 seconds as a fair timeout, keeping the memory/cpu constrained
vms/systems in consideration.

Closes-Bug: #1521323
Change-Id: Ied1d904cc0dac2df91dee856100baeb988d65676
2015-12-07 18:22:06 -08:00
Sridhar Ramaswamy
0e863d0163 Fixup oslo middleware to use new package name
oslo has deprecated using oslo.x package name and moved to use
oslo_x [1]. This fix helps to resolve tacker-server error
due to old reference

[1] https://blueprints.launchpad.net/oslo-incubator/+spec/drop-namespace-packages

Change-Id: I62eb7cc7c68f5ff6bd7f0c4ec72d8be40e28b6b5
2015-11-24 15:46:15 -08:00
Bharath Thiruveedula
0e91cd11c8 HTTP ping monitor driver for Monitoring Framework
Change-Id: Iab2e0d92ffd52d6575a4372aeadc5285dab85277
Implements: blueprint monitoring
2015-10-14 14:04:35 +05:30
Bob HADDLETON
1afd26a13b Implement Monitoring Framework
* Changes the monitor function to use a loadable driver

 * Changes the monitoring thread to use a re-entrant lock
   (RLock()) to prevent it from blocking itself during
    recovery actions

Change-Id: Icf40ffd3123f3b804de16c88164d84077fbf28e2
Implements: blueprint health-monitoring
Closes-Bug: 1497474
2015-10-10 13:40:24 -05:00
Sripriya
f8bc9cc05c Implementation of Tacker NFV MANO API
Introduce new Tacker REST API endpoints 'vnfd' and 'vnf' based on NFV
MANO in 'vnfm' extension. Existing 'device' and'device_template'
endpoints will be retained for backward compatibility.

Change-Id: I9dffd4bee25b1f49aea7478f2bd779cf0f6dfb49
Implements: blueprint tacker-api-mano
2015-09-26 21:36:43 -07:00
Sridhar Ramaswamy
fd980b6e38 Remove unused code and docs
- remove unused agent-rpc entry points and filters in setup.cfg
- remove unused neutron specific exceptions and topics names
- remove neutron / quantum docs

Change-Id: I34d70317b35714eb995bda9b9e590c2ca155bba8
2015-09-16 11:13:23 -07:00
Sripriya Seetharam
c9d2408eee Refactor tacker.conf
Remove unsed options and sections from tacker.conf file

Change-Id: Ia220f5cfcb28bd2c22f5853eec350f60aa6c0f59
2015-06-15 20:46:55 -07:00
Isaku Yamahata
55ec101acd mgmt driver for openwrt
Change-Id: I0759e1ecb8524300c2007873585baf8122cad9d2
2015-05-13 21:53:48 -07:00
Isaku Yamahata
052ac3e0b6 heat infra driver
Change-Id: I7f2e985a64d2e7e8cc0ca265815df3ed498742f7
2015-04-28 18:32:21 -07:00
Isaku Yamahata
48981612af nova driver authentication
Change-Id: I321660750809128b9acf67341010d335a39e5eea
2015-04-13 23:44:44 -07:00
Isaku Yamahata
20b34424ae update: etc/tacker/tacker.conf
Change-Id: Iabbebe8b7e2c2dac418cecd1eaf282c3cc92dc74
2015-04-10 16:15:18 -07:00
Isaku Yamahata
6a63cb7e78 update tacker.conf for keystone
Change-Id: Ic642ad2e82b697d52f3657cdf4f0472beaf1691f
2015-04-10 11:33:41 -07:00
Isaku Yamahata
259e128dde api-paste.ini: use new keystone library
Change-Id: I3140cdfd6c1d033f5ad6691298ac66e7ce37a0d4
2015-04-10 11:33:19 -07:00
Isaku Yamahata
b73f7edc5a api update: device_driver -> infra_driver, mgmt_address -> mgmt_url
Change-Id: Ie113eab7e0d652ffb9274a0b9fb53cf85b854e6c
2015-04-10 11:28:20 -07:00
Isaku Yamahata
91ce4886a9 upate files under etc for tacker
Change-Id: Ic11cfd8786588d91cec7ba135c16da95d95ddffc
2014-07-04 18:20:50 +09:00
Isaku Yamahata
8aff29509f import neutron master of cba140daccd7c4f715263cda422d5cec27af069d
Merge Neutron master branch to tacker master branch with modification
of tox.ini and .gitreview.
This patch imports the following change set of Neutron.

  > commit cba140daccd7c4f715263cda422d5cec27af069d
  > Merge: 63d8237 6bed4a0
  > Author: Jenkins <jenkins@review.openstack.org>
  > Date:   Sun Jun 22 16:02:56 2014 +0000
  >
  >     Merge "Adding static routes data for members"

Change-Id: I5a0f522bc20530c46e35dc9e03fe72d72ad04577
2014-07-01 17:11:09 +09:00