76b7dd04c0
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 |
||
---|---|---|
api-ref/source | ||
devstack | ||
doc | ||
etc/masakari | ||
masakari | ||
releasenotes | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.testr.conf | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
MANIFEST.in | ||
README.rst | ||
babel.cfg | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
Masakari
Virtual Machine High Availability (VMHA) service for OpenStack
Masakari provides Virtual Machine High Availability (VMHA) service for OpenStack clouds by automatically recovering the KVM-based Virtual Machine(VM)s from failure events such as VM process down, provisioning process down, and nova-compute host failure. It also provides API service for manage and control the automated rescue mechanism.
NOTE: Use masakari only if instance path is configured on shared storage system i.e, 'instances_path' config option of nova has a path of shared directory otherwise instance data will be lost after the evacuation of instance from failed host if, * instance is booted from image * flavor using ephemeral disks is used
Original version of Masakari: https://github.com/ntt-sic/masakari
Tokyo Summit Session: https://www.youtube.com/watch?v=BmjNKceW_9A
Masakari is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.
- Free software: Apache license 2.0
- Documentation: https://docs.openstack.org/developer/masakari
- Source: https://git.openstack.org/cgit/openstack/masakari
- Bugs: https://bugs.launchpad.net/masakari
Configure masakari-api
1. Create masakari user: $ openstack user create --password-prompt masakari (give password as masakari)
2. Add admin role to masakari user: $ openstack role add --project service --user masakari admin
3. Create new service: $ openstack service create --name masakari --description "masakari high availability" masakari
4. Create endpoint for masakari service: $ openstack endpoint create --region RegionOne masakari --publicurl http://<ip-address>:<port>/v1/%(tenant_id)s --adminurl http://<ip-address>:<port>/v1/%(tenant_id)s --internalurl http://<ip-address>:<port>/v1/%(tenant_id)s
5. Clone masakari using $ git clone https://github.com/openstack/masakari.git
6. Run setup.py from masakari $ sudo python setup.py install
- Create masakari directory in /etc/
- Copy masakari.conf, api-paste.ini and policy.json file from masakari/etc/ to /etc/masakari folder
9. To run masakari-api simply use following binary: $ masakari-api
Configure masakari database
- Create 'masakari' database
- After running setup.py for masakari '$ sudo python setup.py install'
-
run 'masakari-manage' command to sync the database $ masakari-manage db sync
Features
- TODO