RETIRED, Application Data Protection as a Service in OpenStack
Go to file
zengchen b1255e1966 Refactor resource.py/Resource
Create a class of 'Recource' to replace the original definition.
It will bring several advantages.

1. The new class will be used as tuple which can't be modified,
accessed by name or index.

2. The instance of new class can be hashable whatever the type of
members of instace. So, it can be used in method of 'build_graph'.

3. Add some other functions to it, such as transform it to dict.

4. It is easy to chose members of it to be serialized by modifing
the definition of property of 'Resource'.

Change-Id: Ib5f3fea53bff9fe0a7c3b88339af26b70a6b7d3c
2017-05-31 10:04:55 +08:00
api-ref/source Updata the api doc about the extra_info filed of protectable API 2017-04-20 20:27:14 +08:00
devstack Fix fullstack error about a share protectable test 2017-05-18 17:26:52 +08:00
doc Merge "Spec: remove Heat" 2017-05-23 12:36:20 +00:00
etc Add deploying karbor-api with mod-wsgi 2017-04-11 16:21:41 +08:00
install-guide/source Add install-guide for karbor 2017-04-22 15:47:13 +08:00
karbor Refactor resource.py/Resource 2017-05-31 10:04:55 +08:00
releasenotes ocata: release notes 2017-02-01 11:21:59 +02:00
tools Remove redundant ctor super calls, add missing 2017-05-14 12:10:31 +03:00
.coveragerc Update .coveragerc after the removal of openstack directory 2016-10-17 17:08:00 +05:30
.gitattributes Temporarily remove rst from gitattributes 2016-12-14 15:09:45 +02:00
.gitignore docs: build modindex, add plugins 2017-01-30 13:27:32 +02:00
.gitreview Change Smaug to Karbor 2016-08-18 22:55:34 +08:00
.mailmap Initial Cookiecutter Commit. 2015-11-08 13:35:36 +02:00
.testr.conf Change Smaug to Karbor 2016-08-18 22:55:34 +08:00
CONTRIBUTING.rst Update descriptions in CONTRIBUTING.rst 2016-11-28 00:36:44 -08:00
HACKING.rst Change Smaug to Karbor 2016-08-18 22:55:34 +08:00
LICENSE Initial Cookiecutter Commit. 2015-11-08 13:35:36 +02:00
README.rst Optimize the link address 2017-04-12 14:56:27 +05:30
babel.cfg Initial Cookiecutter Commit. 2015-11-08 13:35:36 +02:00
requirements.txt Updated from global requirements 2017-05-24 03:37:07 +00:00
setup.cfg Add manila share protectable plugin for karbor 2017-05-02 23:00:32 +08:00
setup.py Updated from global requirements 2017-03-07 01:57:53 +00:00
test-requirements.txt Updated from global requirements 2017-05-20 04:36:32 +00:00
tox.ini Fix fullstack gate error about 'Too many connections' 2017-05-02 15:30:27 +08:00

README.rst

Team and repository tags

image

Karbor

Application Data Protection as a Service for OpenStack

Karbor

Mission Statement

To protect the Data and Metadata that comprises an OpenStack-deployed Application against loss/damage (e.g. backup, replication) by providing a standard framework of APIs and services that allows vendors to provide plugins through a unified interface

Open Architecture

Design for multiple perspectives:

  • User: Protect App Deployment
    • Configure and manage custom protection plans on the deployed resources (topology, VMs, volumes, images, …)
  • Admin: Define Protectable Resources
    • Decide what plugins protect which resources, what is available for the user
    • Decide where users can protect their resources
  • Vendors: Standard API for protection products
    • Create plugins that implement Protection mechanisms for different OpenStack resources

Features

Version 0.1

  • Resource API
  • Plan API
  • Bank API
  • Ledger API
  • Cross-resource dependencies

Limitations

  • Only 1 Bank plugin per Protection Plan
  • Automatic object discovery not supported