Virtual Machine High Availability (VMHA) service for OpenStack.
Go to file
Corey Bryant 4d5c7693cf Monkey patch original current_thread _active
Monkey patch the original current_thread to use the up-to-date _active
global variable. This solution is based on that documented at:
https://github.com/eventlet/eventlet/issues/592

Change-Id: I4929bfd4dc60f97b27459a4c6e7ed649c5e7f645
Closes-Bug: #1863021
2020-05-14 14:42:43 +00:00
api-ref/source Merge "update segment api doc" 2020-02-25 04:40:29 +00:00
devstack Replace git.openstack.org URLs with opendev.org URLs 2019-08-11 15:00:14 +00:00
doc Merge "Correct indentation for spaces for doc files" 2020-03-30 06:21:01 +00:00
etc/masakari Support noauth2 auth_strategy 2019-10-03 04:42:03 +00:00
masakari Monkey patch original current_thread _active 2020-05-14 14:42:43 +00:00
playbooks/devstack Add functional CI job and tests for segments 2019-03-05 12:22:07 +05:30
releasenotes [ussuri][goal] Drop python 2.7 support and testing 2019-11-16 14:24:16 +00:00
roles/devstack-config/tasks Add functional CI job and tests for segments 2019-03-05 12:22:07 +05:30
.coveragerc Initial Cookiecutter Commit. 2016-06-28 13:28:27 +09:00
.gitignore Reorganize masakari documentation 2019-10-11 01:32:08 +00:00
.gitreview Update .gitreview for stable/ussuri 2020-04-23 15:43:33 +00:00
.mailmap Initial Cookiecutter Commit. 2016-06-28 13:28:27 +09:00
.stestr.conf Switch to using stestr 2018-07-03 12:02:08 -04:00
.zuul.yaml Fix the functional test devstack job 2020-04-17 04:46:54 +00:00
CONTRIBUTING.rst Optimize the link address 2017-06-08 18:37:08 +07:00
HACKING.rst Register and Document policy in code 2018-07-27 12:15:14 +05:30
LICENSE Initial Cookiecutter Commit. 2016-06-28 13:28:27 +09:00
MANIFEST.in Drop MANIFEST.in - it's not needed by pbr 2016-10-13 16:55:15 +05:30
README.rst Replace git.openstack.org URLs with opendev.org URLs 2019-08-11 15:00:14 +00:00
babel.cfg Initial Cookiecutter Commit. 2016-06-28 13:28:27 +09:00
bindep.txt add libpq-dev and python-dev to build psycopg2 2019-08-26 13:36:36 +05:30
lower-constraints.txt Fix the functional test devstack job 2020-04-17 04:46:54 +00:00
requirements.txt Fix the functional test devstack job 2020-04-17 04:46:54 +00:00
setup.cfg [ussuri][goal] Drop python 2.7 support and testing 2019-11-16 14:24:16 +00:00
setup.py Updated from global requirements 2017-04-02 01:04:58 +00:00
test-requirements.txt Fix the functional test devstack job 2020-04-17 04:46:54 +00:00
tox.ini Update TOX_CONSTRAINTS_FILE for stable/ussuri 2020-04-23 15:43:39 +00:00

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.

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" instance-ha
  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
  7. Create directory /etc/masakari

  8. 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

  1. Create 'masakari' database

  2. 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