From 76b7dd04c08c057d82d12e527481b62e08acdbdb Mon Sep 17 00:00:00 2001 From: Louie KWAN Date: Wed, 21 Feb 2018 18:32:44 +0000 Subject: [PATCH] Introspective Instance Monitoring through QEMU Guest Agent https://blueprints.launchpad.net/masakari/+spec/introspective-instance-monitoring Currently, Masakari instance monitoring is strictly black-box type monitoring through qemu and libvirt. There are however a number of internal instance/VM faults, that if monitored and detected by Masakari, could be recovered by existing Masakari auto-recovery mechanisms; increasing the overall availability of the instance/VM. This blueprint introduces the capability of performing introspective instance monitoring of VMs, in order to detect, report and optionally recover VMs from internal VM faults. Specifically, VM Heartbeating Monitoring via the QEMU Guest Agent. Discussed at openstack-dev@lists.openstack.org, SamP and others, from Masakari point of view, iim notification is an instance event. Because there is something wrong within the VM, Masakari can reuse the same recovery workflow for instance failures by stop and start etc. To integrate the notification to masakari engine, one option is to add a new event within the INSTANCE_EVENTS defined at masakari/engine/instance_events.py. Change-Id: I9efc6afc8d476003d3aa7fee8c31bcaa65438674 Implements: blueprint introspective-instance-monitoring --- masakari/engine/instance_events.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/masakari/engine/instance_events.py b/masakari/engine/instance_events.py index 3affdc9b..bb5ccb06 100644 --- a/masakari/engine/instance_events.py +++ b/masakari/engine/instance_events.py @@ -20,6 +20,8 @@ instance recovery failure. """ INSTANCE_EVENTS = { + # Add QEMU guest agent events here. + 'QEMU_GUEST_AGENT_ERROR': ['STOPPED_FAILED'], # Add more events and vir_domain_events here. 'LIFECYCLE': ['STOPPED_FAILED'], 'IO_ERROR': ['IO_ERROR_REPORT']