Kasper Hasior 0969d53c6c Add Cassandra datastore upgrade
This patch adds support for upgrading Cassandra datastore - both single
instance cluster and multiple-node cluster.

It is achievied in a similar way to MySQL/Mariadb. The key difference
is draining nodes before upgrade and upgrading sstables after succesful
volume mounting operation.

Cassandra upgrade steps have been taken from
https://docs.datastax.com/en/upgrade/doc/upgrade/ddac/upgdDDACMinor51x.html

In case of trove it looks as follows:
For each node do:
    + enter restart mode
    + drain and stop node
    + preserve configuration files and home directory
    + unmount volume
    + create instance with new datastore version
    + mount volume
    + restore configuration and home directory
    + start Cassandra
    + upgrade sstables

Because we need to upgrade seeds first there is an additional parameter
in rolling_upgrade_cluster function - a function which is used to so
sort nodes in proper order.

Story: #2005410
Task: #30426
Co-Authored-By: Przemysław Godek <p.godek@partner.samsung.com>
Change-Id: I9f25606d51b35e264a8c36f9524ae57b0a5780d0
Signed-off-by: Kasper Hasior <k.hasior@samsung.com>
2019-04-26 09:32:41 +02:00
2015-05-29 07:27:59 +00:00
2019-04-19 19:26:15 +00:00
2019-04-17 20:04:58 +12:00
2019-04-26 09:32:41 +02:00
2016-10-24 04:12:55 +00:00
2019-04-19 19:26:15 +00:00
2019-04-19 19:26:15 +00:00
2014-03-19 15:06:23 +01:00
2015-05-29 07:27:59 +00:00
2018-01-24 17:21:26 +00:00
2013-04-29 18:01:12 -04:00
2016-09-14 13:56:24 -04:00
2018-11-09 21:21:29 +08:00
2018-09-18 17:19:20 +00:00
2019-04-06 23:46:07 +13:00
2017-03-02 11:57:16 +00:00
2018-09-17 16:14:54 +02:00

Trove

image

Trove is Database as a Service for OpenStack.

Getting Started

If you'd like to run from the master branch, you can clone the git repo:

git clone https://git.openstack.org/cgit/openstack/trove

For information on how to contribute to trove, please see CONTRIBUTING.rst and HACKING.rst

You can raise bugs here: Bug Tracker

The plan for trove can be found at Trove Specs

Release notes for the project can be found at:

https://docs.openstack.org/releasenotes/trove

Python client

Python-troveclient is a client for Trove.

Dashboard plugin

Trove-dashboard is OpenStack dashbaord plugin for Trove.

References

Description
OpenStack Database As A Service (Trove)
Readme 115 MiB
Languages
Python 95%
Shell 4.9%