Symptoms
Examples provided in Contrail Configuration API server documentation at
assume no authentication of the incoming API connection. However recent versions of Contrail (such as 2.21) require authentication of API requests by default.
Diagnosis
By default, API calls require authentication. For the sake of lab testing, it is possible to disable this authentication.
root@openstack:~# cat /etc/contrail/contrail-api.conf | grep auth
auth = keystone
Solution
Replace "keystone" with "none" and restart.
Here is an example Python session that no longer requires authentication:
root@openstack:~# python
Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from vnc_api import vnc_api
>>> vnc_lib = vnc_api.VncApi()
>>> print(vnc_lib.virtual_networks_list())
{u'virtual-networks': [{u'href': u'http://127.0.0.1:8082/virtual-network/a3169c4b-ebb9-4b45-8452-9ad6a4de3c9f', u'fq_name': [u'default-domain', u'default-project', u'__link_local__'], u'uuid': u'a3169c4b-ebb9-4b45-8452-9ad6a4de3c9f'}, {u'href': u'http://127.0.0.1:8082/virtual-network/ab93c42b-f24d-4b1f-9cd9-5306b5bda0bd', u'fq_name': [u'default-domain', u'demo', u'VN-B'], u'uuid': u'ab93c42b-f24d-4b1f-9cd9-5306b5bda0bd'}, {u'href': u'http://127.0.0.1:8082/virtual-network/0719a959-c0a2-4264-a67d-8a30a9eb8628', u'fq_name': [u'default-domain', u'demo', u'svc-vn-left'], u'uuid': u'0719a959-c0a2-4264-a67d-8a30a9eb8628'}, {u'href': u'http://127.0.0.1:8082/virtual-network/ce2439e9-9aca-4de0-b1e0-088bd42dbec1', u'fq_name': [u'default-domain', u'default-project', u'ip-fabric'], u'uuid': u'ce2439e9-9aca-4de0-b1e0-088bd42dbec1'}, {u'href': u'http://127.0.0.1:8082/virtual-network/00105e7a-8b23-4333-afb4-d83d508cf5cd', u'fq_name': [u'default-domain', u'demo', u'VN-A'], u'uuid': u'00105e7a-8b23-4333-afb4-d83d508cf5cd'}, {u'href': u'http://127.0.0.1:8082/virtual-network/bf5d86d4-12dd-49e4-bee2-3cb906b9c942', u'fq_name': [u'default-domain', u'default-project', u'default-virtual-network'], u'uuid': u'bf5d86d4-12dd-49e4-bee2-3cb906b9c942'}, {u'href': u'http://127.0.0.1:8082/virtual-network/f63f3f86-8d41-4d08-9892-bb4dfca85c29', u'fq_name': [u'default-domain', u'demo', u'Ext'], u'uuid': u'f63f3f86-8d41-4d08-9892-bb4dfca85c29'}]}