b1255e1966
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 |
||
---|---|---|
api-ref/source | ||
devstack | ||
doc | ||
etc | ||
install-guide/source | ||
karbor | ||
releasenotes | ||
tools | ||
.coveragerc | ||
.gitattributes | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.testr.conf | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
LICENSE | ||
README.rst | ||
babel.cfg | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
Team and repository tags
Karbor
Application Data Protection as a Service for OpenStack
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
Links
- Free software: Apache license
- Documentation: https://docs.openstack.org/developer/karbor
- Source: https://git.openstack.org/cgit/openstack/karbor
- Bugs: https://bugs.launchpad.net/karbor
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