Virtual Machine High Availability (VMHA) service for OpenStack.
Go to file
Stephen Finucane 72b3083999 Add job to test with SQLAlchemy master (2.x)
Change-Id: I26e49c2ea77d3eed852c30de3d8ff9122812cb48
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2023-12-24 07:14:37 +00:00
api-ref/source add api-ref for masakari vmoves 2023-02-02 17:10:33 +08:00
devstack Fix auth_url setting for devstack 2021-10-20 07:27:33 +02:00
doc add api-ref for masakari vmoves 2023-02-02 17:10:33 +08:00
etc/masakari Merge "Remove a sample file of masakari.conf" 2021-08-16 09:15:06 +00:00
masakari db: Don't rely on implicit autocommit 2023-12-24 03:36:11 +00:00
playbooks/devstack [CI] Let Masakari jobs be used from other projects 2021-08-28 11:54:23 +00:00
releasenotes db: Migrate to alembic 2023-12-22 07:31:12 +00:00
roles/devstack-config/tasks Fix files to pass linting 2020-09-11 17:24:16 +00:00
tools Enable database migration unit tests 2021-03-10 18:11:01 +00:00
.coveragerc Initial Cookiecutter Commit. 2016-06-28 13:28:27 +09:00
.gitignore db: Add initial alembic configuration 2023-12-21 15:57:33 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:36:34 +00:00
.mailmap Initial Cookiecutter Commit. 2016-06-28 13:28:27 +09:00
.pre-commit-config.yaml pre-commit: Update dependencies 2023-12-21 09:13:09 +00:00
.stestr.conf Switch to using stestr 2018-07-03 12:02:08 -04:00
.yamllint Use some better linting 2020-09-11 17:24:25 +00:00
.zuul.yaml Add job to test with SQLAlchemy master (2.x) 2023-12-24 07:14:37 +00:00
bindep.txt Fix bindep.txt for python 3.11 job(Debian Bookworm) 2023-09-06 16:52:41 -05:00
CONTRIBUTING.rst [community goal] Update contributor documentation 2021-05-31 20:33:51 +00:00
HACKING.rst add pre-commit 2023-05-30 19:55:03 +08:00
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 Merge "Simplify endpoints created by devstack plugin" 2021-02-27 20:11:57 +00:00
requirements.txt db: Add initial alembic configuration 2023-12-21 15:57:33 +00:00
setup.cfg db: Remove configurable backends 2023-12-21 11:06:20 +00:00
setup.py Cleanup py27 support 2022-08-13 08:52:35 +08:00
test-requirements.txt pre-commit: Update dependencies 2023-12-21 09:13:09 +00:00
tox.ini tests: Enable SQLAlchemy 2.0 deprecation warnings 2023-12-22 15:57:44 +00:00

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