R5.0-micro-services provision - config api container keeps restarting because of zk connections.
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
Trunk |
Invalid
|
Critical
|
Ritam Gangopadhyay |
Bug Description
Setup:-
On nodec7 -- /root/contrail-
config api container keeps restarting due to unavailable zk connections on 2181 and reports collector connection down:-
03/19/2018 09:09:08 AM [contrail-api]: SANDESH: [DROP: WrongClientSMState] SandeshModuleCl
03/19/2018 09:09:08 AM [contrail-api]: SANDESH: [DROP: WrongClientSMState] NodeStatusUVE: data = << name = nodec7 process_status = [ << module_id = contrail-api instance_id = 0 state = Non-Functional connection_infos = [ << type = Zookeeper name = Zookeeper server_addrs = [ 192.168.192.6:2181, 192.168.192.5:2181, 192.168.192.7:2181, ] status = Up description = >>, << type = Collector name = server_addrs = [ , ] status = Down description = none to Idle on EvStart >>, ] description = Collector connection down >>, ] >>
The docker log for config api produces this traceback:-
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/usr/bin/
6
7 if __name__ == '__main__':
8 sys.exit(
9 load_entry_
10 )
load_entry_point = <function load_entry_point>
/usr/lib/
4323 vnc_cgitb.
4324
4325 main(args_str, VncApiServer(
4326 #server_main
4327
global main = <function main>
args_str = None
global VncApiServer = <class 'vnc_cfg_
/usr/lib/
1701 else:
1702 self._db_
1703 self._db_
1704
1705 # ZK quota counter initialization
self = <vnc_cfg_
self._db_
/usr/lib/
3014 # create singleton defaults if they don't exist already in db
3015 gsc = self.create_
3016 autonomous_
3017 gvc = self.create_
3018 parent_obj=gsc))
autonomous_system undefined
config_version undefined
global CONFIG_VERSION = '1.0'
/usr/lib/
3291 # for singleton START
3292 try:
3293 cass_uuid = self._db_
3294 try:
3295 zk_uuid = self._db_
cass_uuid undefined
self = <vnc_cfg_
self._db_conn = <vnc_cfg_
self._db_
self._db_
obj_type = 'global_
fq_name = [u'default-
/usr/lib/
512
513 self.start_time = datetime.
514 return func(*args, **kwargs)
515 except (AllServersUnav
516 if self._conn_state != ConnectionStatu
func = <bound method VncServerCassan
args = ('global_
kwargs = {}
/usr/lib/
1424 raise NoIdError('%s %s' % (obj_type, fq_name_str))
1425 if len(col_infos) > 1:
1426 raise VncError('Multi match %s for %s' % (fq_name_str, obj_type))
1427 fq_name_uuid = col_infos.
1428 if obj_type != 'route_target' and fq_name_uuid[:-1] != fq_name:
global VncError = <class 'vnc_api.
fq_name_str = u'default-
obj_type = 'global_
<class 'vnc_api.
__class__ = <class 'vnc_api.
__delattr__ = <method-wrapper '__delattr__' of VncError object>
__dict__ = {}
__doc__ = None
__format__ = <built-in method __format__ of VncError object>
__getattrib
__getitem__ = <method-wrapper '__getitem__' of VncError object>
__getslice__ = <method-wrapper '__getslice__' of VncError object>
__hash__ = <method-wrapper '__hash__' of VncError object>
__init__ = <method-wrapper '__init__' of VncError object>
__module__ = 'vnc_api.
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of VncError object>
__reduce_ex__ = <built-in method __reduce_ex__ of VncError object>
__repr__ = <method-wrapper '__repr__' of VncError object>
__setattr__ = <method-wrapper '__setattr__' of VncError object>
__setstate__ = <built-in method __setstate__ of VncError object>
__sizeof__ = <built-in method __sizeof__ of VncError object>
__str__ = <method-wrapper '__str__' of VncError object>
__subclassh
__unicode__ = <built-in method __unicode__ of VncError object>
__weakref__ = None
args = (u'Multi match default-
message = u'Multi match default-
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/usr/bin/
load_
File "/usr/lib/
main(args_str, VncApiServer(
File "/usr/lib/
self.
File "/usr/lib/
autonomous_
File "/usr/lib/
cass_uuid = self._db_
File "/usr/lib/
return func(*args, **kwargs)
File "/usr/lib/
raise VncError('Multi match %s for %s' % (fq_name_str, obj_type))
VncError: Multi match default-
Changed in juniperopenstack: | |
assignee: | Abhay Gupte (abhay) → Abhay Joshi (abhayj) |
tags: | added: config provisioning |
tags: | added: sanityblocker |
Re-assigning to config team to take a look. Configs look Ok to me.