“Tacker is an OpenStack service for NFV Orchestration with a general purpose VNF Manager to deploy and operate Virtual Network Functions (VNFs) and Network Services on an NFV Platform. It is based on ETSI MANO Architectural Framework.” [1].
As of the Pike release, tacker requires the following services to be enabled to operate correctly.
Optionally tacker supports the following services and features.
Tacker is supported by the following distros and install_types.
By default tacker and required services are disabled in
the group_vars/all.yml
file.
In order to enable them, you need to edit the file
/etc/kolla/globals.yml
and set the following variables:
Note
Heat is enabled by default, ensure it is not disabled.
enable_tacker: "yes"
enable_barbican: "yes"
enable_mistral: "yes"
enable_redis: "yes"
Warning
Barbican is required in multinode deployments to share VIM fernet_keys.
If not enabled, only one tacker-server host will have the keys on it
and any request made to a different tacker-server will fail with a
similar error as No such file or directory /etc/tacker/vim/fernet_keys
Deploy tacker and related services.
$ kolla-ansible deploy
Generate the credentials file.
$ kolla-ansible post-deploy
Source credentials file.
$ . /etc/kolla/admin-openrc.sh
Create base neutron networks and glance images.
$ sh tools/init-runonce
Note
init-runonce
file is located in $PYTHON_PATH/kolla-ansible
folder in kolla-ansible installation from pip.
In kolla-ansible git repository a tacker demo
is present in kolla-ansible/contrib/demos/tacker/
that will
create a very basic VNF from a cirros image in demo-net
network.
Install python-tackerclient.
Note
Barbican, heat and mistral python clients are in tacker’s requirements and will be installed as dependency.
$ pip install python-tackerclient
Execute deploy-tacker-demo
script to initialize the VNF creation.
$ sh deploy-tacker-demo
Tacker demo script will create sample VNF Descriptor (VNFD) file, then register a default VIM, create a tacker VNFD and finally deploy a VNF from the previously created VNFD.
After a few minutes, the tacker VNF is ACTIVE with a cirros instance running in nova and with its corresponding heat stack CREATION_COMPLETE.
Verify tacker VNF status is ACTIVE.
$ tacker vnf-list
+--------------------------------------+------------------+-----------------------+--------+--------------------------------------+--------------------------------------+
| id | name | mgmt_url | status | vim_id | vnfd_id |
+--------------------------------------+------------------+-----------------------+--------+--------------------------------------+--------------------------------------+
| c52fcf99-101d-427b-8a2d-c9ef54af8b1d | kolla-sample-vnf | {"VDU1": "10.0.0.10"} | ACTIVE | eb3aa497-192c-4557-a9d7-1dff6874a8e6 | 27e8ea98-f1ff-4a40-a45c-e829e53b3c41 |
+--------------------------------------+------------------+-----------------------+--------+--------------------------------------+--------------------------------------+
Verify nova instance status is ACTIVE.
$ openstack server list
+--------------------------------------+-------------------------------------------------------+--------+--------------------+--------+-----------------------------------------------------------------------------------------------------------------------+
| ID | Name | Status | Networks | Image | Flavor |
+--------------------------------------+-------------------------------------------------------+--------+--------------------+--------+-----------------------------------------------------------------------------------------------------------------------+
| d2d59eeb-8526-4826-8f1b-c50b571395e2 | ta-cf99-101d-427b-8a2d-c9ef54af8b1d-VDU1-fchiv6saay7p | ACTIVE | demo-net=10.0.0.10 | cirros | tacker.vnfm.infra_drivers.openstack.openstack_OpenStack-c52fcf99-101d-427b-8a2d-c9ef54af8b1d-VDU1_flavor-yl4bzskwxdkn |
+--------------------------------------+-------------------------------------------------------+--------+--------------------+--------+-----------------------------------------------------------------------------------------------------------------------+
Verify Heat stack status is CREATE_COMPLETE.
$ openstack stack list
+--------------------------------------+----------------------------------------------------------------------------------------------+----------------------------------+-----------------+----------------------+--------------+
| ID | Stack Name | Project | Stack Status | Creation Time | Updated Time |
+--------------------------------------+----------------------------------------------------------------------------------------------+----------------------------------+-----------------+----------------------+--------------+
| 289a6686-70f6-4db7-aa10-ed169fe547a6 | tacker.vnfm.infra_drivers.openstack.openstack_OpenStack-c52fcf99-101d-427b-8a2d-c9ef54af8b1d | 1243948e59054aab83dbf2803e109b3f | CREATE_COMPLETE | 2017-08-23T09:49:50Z | None |
+--------------------------------------+----------------------------------------------------------------------------------------------+----------------------------------+-----------------+----------------------+--------------+
After the correct functionality of tacker is verified, tacker demo
can be cleaned up executing cleanup-tacker
script.
$ sh cleanup-tacker
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.