Virtual Machine High Availability (VMHA) service for OpenStack.
Go to file
Ghanshyam Mann 2d6ecd3623 Fix bindep.txt for python 3.11 job(Debian Bookworm)
Python 3.11 job run on Debian Bookworm which does
not the mysql pkg for example, mariadb-server, libmysqlclient-dev
instead they have mariadb. Updating bindep.txt file
to adjust the pkgs as per Debian bookworm.

Change-Id: Ic1008c7368bd1f658c48ddaef260e33d14358a03
2023-09-06 16:52:41 -05: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 log when set host on maintenance 2023-06-29 18:54:49 +08:00
playbooks/devstack [CI] Let Masakari jobs be used from other projects 2021-08-28 11:54:23 +00:00
releasenotes Merge "releasenote for Masakari VMove" 2023-03-09 17:36:30 +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 Reorganize masakari documentation 2019-10-11 01:32:08 +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 add pre-commit 2023-05-30 19:55:03 +08: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 [CI] Move queue setting to project level 2022-09-19 14:12:10 +00: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
bindep.txt Fix bindep.txt for python 3.11 job(Debian Bookworm) 2023-09-06 16:52:41 -05:00
requirements.txt Use new get_rpc_client API from oslo.messaging 2023-01-23 19:22:07 +00:00
setup.cfg vm moves for host notification 2023-01-28 11:01:24 +00:00
setup.py Cleanup py27 support 2022-08-13 08:52:35 +08:00
test-requirements.txt Use some better linting 2020-09-11 17:24:25 +00:00
tox.ini Fix tox4 issues 2022-12-25 15:57:41 +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
  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