Contrail :: 14.04 71 mitaka :: analytics api fails to come up as vnc api is not up.

Bug #1722163 reported by Ritam Gangopadhyay
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R4.1
Fix Committed
Critical
Édouard Thuleau
Trunk
Fix Committed
Critical
Édouard Thuleau

Bug Description

Setup:-

nodem14 10.204.216.103 openstack, contrail-controller, contrail-analytics, contrail-analyticsdb
nodem6 10.204.216.95 openstack, contrail-controller, contrail-analytics, contrail-analyticsdb
nodem7 10.204.216.96 openstack, contrail-controller, contrail-analytics, contrail-analyticsdb
nodem8 10.204.216.97 contrail-compute
nodem9 10.204.216.98 contrail-compute
nodem10 10.204.216.99 contrail-compute
nodec35 10.204.216.160 contrail-lb

********************************************************************************
********************************************************************************
Analytics Api status:-

root@nodem14(analytics):/# contrail-status
== Contrail Analytics ==
contrail-alarm-gen active
contrail-analytics-api initializing (ApiServer connection down)
contrail-analytics-nodemgr active
contrail-collector active
contrail-query-engine active
contrail-snmp-collector initializing (Database:RabbitMQ[] connection down)
contrail-topology initializing (Database:RabbitMQ[] connection down)

root@nodem14(analytics):/#

********************************************************************************
********************************************************************************
Analytics API failure log:-

10/09/2017 11:48:06 AM [contrail-analytics-api]: usr res are None
10/09/2017 11:48:15 AM [contrail-analytics-api]: before res list is bgp-peer
10/09/2017 11:48:15 AM [contrail-analytics-api]: VNC Config API Client NOT FOUND
10/09/2017 11:48:15 AM [contrail-analytics-api]: Token info for 096eccf9ce5f49bf8f62a20995c98d93 NOT FOUND
10/09/2017 11:48:15 AM [contrail-analytics-api]: before res list is bgp-peer
10/09/2017 11:48:15 AM [contrail-analytics-api]: VNC Config API Client NOT FOUND
10/09/2017 11:48:15 AM [contrail-analytics-api]: Token info for 7b715198ba7f4591947856f5df0ae57d NOT FOUND
10/09/2017 11:48:16 AM [contrail-analytics-api]: before res list is bgp-peer
10/09/2017 11:48:16 AM [contrail-analytics-api]: VNC Config API Client NOT FOUND
10/09/2017 11:48:16 AM [contrail-analytics-api]: Token info for 764879c312aa49d0babc4b900e93c9f0 NOT FOUND
10/09/2017 11:48:16 AM [contrail-analytics-api]: before res list is bgp-peer
10/09/2017 11:48:16 AM [contrail-analytics-api]: VNC Config API Client NOT FOUND

********************************************************************************
********************************************************************************
Reason of failure to connect to vnc api
No Vnc API running on controller.

root@nodem14(controller):/# ps -aux | grep vnc
root 9904 0.0 0.0 8868 776 ? S+ 12:06 0:00 grep --color=auto vnc
499 22674 0.0 0.0 252644 76248 ? S Oct07 1:14 /usr/bin/python /usr/bin/nova-novncproxy --config-file=/etc/nova/nova.conf
root@nodem14(controller):/#

Traceback seen in contrail-api log while bringing up vnc

10/09/2017 12:06:46 PM [contrail-api]: __default__ [SYS_ERR]: VncApiError: <pre>Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_api_server.py", line 1570, in handler_trap_exception
    (ok, status) = self._rbac.validate_request(get_request())
  File "/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_rbac.py", line 243, in validate_request
    if request.json is not None:
  File "/usr/lib/python2.7/dist-packages/bottle.py", line 163, in __get__
    if key not in storage: storage[key] = self.getter(obj)
  File "/usr/lib/python2.7/dist-packages/bottle.py", line 1113, in json
    return json_loads(self._get_body_string())
  File "/usr/lib/python2.7/dist-packages/simplejson/__init__.py", line 488, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.7/dist-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/lib/python2.7/dist-packages/simplejson/decoder.py", line 389, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
JSONDecodeError: Expecting value: line 1 column 1 (char 0)
</pre>

tags: added: contrail-config sanityblocker
removed: contrail-control
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/36403
Submitter: ?douard Thuleau (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R4.1

Review in progress for https://review.opencontrail.org/36565
Submitter: Édouard Thuleau (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/36403
Committed: http://github.com/Juniper/contrail-controller/commit/0e1a5abdc2aa39872e0dff2b87429b60730b6d3f
Submitter: Zuul (<email address hidden>)
Branch: master

commit 0e1a5abdc2aa39872e0dff2b87429b60730b6d3f
Author: Édouard Thuleau <email address hidden>
Date: Tue Oct 10 19:09:53 2017 +0200

[Config] Ignore failing decoding JSON request body

It seems with older python stdlib, code fails to decode JSON body with
certain character encoding. The patch ignores that decoding error and
consider the body as empty.

TODO: remove that catch and raise legitimate JSON decoding exceptions.

Change-Id: I3ed1b930991f859222ed5935bf5db5b29dd3e335
Closes-Bug: #1722163

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote :

Reviewed: https://review.opencontrail.org/36565
Committed: http://github.com/Juniper/contrail-controller/commit/a8091e8b26a6253caadef20a5ad0c0e8332bef55
Submitter: Zuul (<email address hidden>)
Branch: R4.1

commit a8091e8b26a6253caadef20a5ad0c0e8332bef55
Author: Édouard Thuleau <email address hidden>
Date: Tue Oct 10 19:09:53 2017 +0200

[Config] Ignore failing decoding JSON request body

It seems with older python stdlib, code fails to decode JSON body with
certain character encoding. The patch ignores that decoding error and
consider the body as empty.

TODO: remove that catch and raise legitimate JSON decoding exceptions.

Change-Id: I3ed1b930991f859222ed5935bf5db5b29dd3e335
Closes-Bug: #1722163

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.