Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
Tacker in Kolla
===============
"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].
Overview
--------
As of the Pike release, tacker requires the following services
to be enabled to operate correctly.
* Core compute stack (nova, neutron, glance, etc)
* Heat
* Mistral + Redis
* Barbican (Required only for multinode)
Optionally tacker supports the following services and features.
* Aodh
* Ceilometer
* Networking-sfc
* Opendaylight
Compatibility
-------------
Tacker is supported by the following distros and install_types.
* Centos, Redhat and Oraclelinux.
* Source and binary images.
* Debian and Ubuntu.
* Only source images.
Preparation and Deployment
--------------------------
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
Verify
------
Generate the credentials file.
::
$ kolla-ansible post-deploy
Source credentials file.
::
$ . /etc/kolla/admin-openrc.sh
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
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 <https://github.com/openstack/kolla-ansible/tree/master/contrib/demos/tacker>`_
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
[1] https://docs.openstack.org/tacker/latest/