Add cleanup of local domain list during VM check
This commit is contained in:
parent
bf5aa71381
commit
d39f41980b
|
@ -203,7 +203,8 @@ class NodeInstance():
|
||||||
# Toggle state management of dead VMs to restart them
|
# Toggle state management of dead VMs to restart them
|
||||||
for domain, instance in self.s_domain.items():
|
for domain, instance in self.s_domain.items():
|
||||||
if instance.inshutdown == False and domain in self.domain_list:
|
if instance.inshutdown == False and domain in self.domain_list:
|
||||||
if instance.getstate() == 'start' and instance.gethypervisor() == self.name:
|
if instance.gethypervisor() == self.name:
|
||||||
|
if instance.getstate() == 'start':
|
||||||
if instance.getdom() != None:
|
if instance.getdom() != None:
|
||||||
try:
|
try:
|
||||||
if instance.getdom().state()[0] != libvirt.VIR_DOMAIN_RUNNING:
|
if instance.getdom().state()[0] != libvirt.VIR_DOMAIN_RUNNING:
|
||||||
|
@ -211,6 +212,11 @@ class NodeInstance():
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
# Toggle a state "change"
|
# Toggle a state "change"
|
||||||
self.zk_conn.set('/domains/{}/state'.format(domain), instance.getstate().encode('ascii'))
|
self.zk_conn.set('/domains/{}/state'.format(domain), instance.getstate().encode('ascii'))
|
||||||
|
else:
|
||||||
|
self.domain_list.remove(domain)
|
||||||
|
else:
|
||||||
|
self.domain_list.remove(domain)
|
||||||
|
|
||||||
|
|
||||||
# Set our information in zookeeper
|
# Set our information in zookeeper
|
||||||
self.name = lv_conn.getHostname()
|
self.name = lv_conn.getHostname()
|
||||||
|
|
Loading…
Reference in New Issue