Difference between revisions of "Cinder"
(→Getting in Touch: updating mailing list prefix) |
(add core team section and review links) |
||
Line 5: | Line 5: | ||
'''Mission Statement:''' <blockquote>To implement services and libraries to provide on demand, self-service access to Block Storage resources. Provide Software Defined Block Storage via abstraction and automation on top of various traditional backend block storage devices.</blockquote> | '''Mission Statement:''' <blockquote>To implement services and libraries to provide on demand, self-service access to Block Storage resources. Provide Software Defined Block Storage via abstraction and automation on top of various traditional backend block storage devices.</blockquote> | ||
− | + | === Description === | |
− | + | Cinder is a Block Storage service for OpenStack. It's designed to allow the use of either a reference implementation (LVM) to present storage resources to end users that can be consumed by the OpenStack Compute Project (Nova). The short description of Cinder is that it virtualizes pools of block storage devices and provides end users with a self service API to request and consume those resources without requiring any knowledge of where their storage is actually deployed or on what type of device.am | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | === | + | === Core Team === |
− | + | See [https://review.openstack.org/#/admin/groups/83,members current members]. | |
=== Project Meetings === | === Project Meetings === | ||
Line 24: | Line 19: | ||
=== Related projects === | === Related projects === | ||
* [https://github.com/openstack/python-cinderclient Python Cinder client] | * [https://github.com/openstack/python-cinderclient Python Cinder client] | ||
+ | * [https://wiki.openstack.org/wiki/CinderBrick Brick] | ||
=== Core Volume Drivers === | === Core Volume Drivers === | ||
For a list of the core drivers in each OpenStack release and the volume operations they support, see https://wiki.openstack.org/wiki/CinderSupportMatrix | For a list of the core drivers in each OpenStack release and the volume operations they support, see https://wiki.openstack.org/wiki/CinderSupportMatrix | ||
− | === | + | === How To Contrbute A Driver === |
− | + | See [https://wiki.openstack.org/wiki/Cinder/how-to-contribute-a-driver How to contribute a driver] | |
− | |||
− | |||
− | |||
− | |||
− | |||
=== Configuring devstack to use your driver and backend === | === Configuring devstack to use your driver and backend === | ||
Line 77: | Line 68: | ||
<br /> | <br /> | ||
− | === | + | == Resources == |
− | https:// | + | |
+ | === Review Links === | ||
+ | * [https://review.openstack.org/#/dashboard/?foreach=project%3A%5Eopenstack%2F.%2Acinder.%2A+status%3Aopen+NOT+owner%3Aself+NOT+label%3AWorkflow%3C%3D%252D1+label%3AVerified%3E%3D1+NOT+label%3ACode%252DReview%3C%3D%252D1%252cself+NOT+label%3ACode%252DReview%3E%3D1%252cself&title=Cinder+Review+Inbox&Cinder+Specs=project%3Aopenstack%2Fcinder%252Dspecs&Bug+Fixes=topic%3A%5Ebug%2F.%2A&Needs+Feedback+%28Changes+older+than+5+days+that+have+not+been+reviewed+by+anyone%29=NOT+label%3ACode%252DReview%3C%3D2+age%3A5d&You+are+a+reviewer%252c+but+haven%27t+voted+in+the+current+revision=reviewer%3Aself&Needs+final+%2B2=label%3ACode%252DReview%3E%3D2+limit%3A50&New+Contributors=reviewer%3A10068&Passed+Jenkins%252c+No+Negative+Feedback=NOT+label%3ACode%252DReview%3E%3D2+NOT+label%3ACode%252DReview%3C%3D%252D1+limit%3A50&Wayward+Changes+%28Changes+with+no+code+review+in+the+last+2days%29=NOT+label%3ACode%252DReview%3C%3D2+age%3A2d Cinder Review Inbox] | ||
+ | * [https://bugs.launchpad.net/cinder/+bugs?field.searchtext=&orderby=-importance&search=Search&field.status%3Alist=INPROGRESS&assignee_option=any&field.assignee=&field.bug_reporter=&field.bug_commenter=&field.subscriber=&field.structural_subscriber=&field.tag=-drivers&field.tags_combinator=ANY&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_patch.used=&field.has_branches.used=&field.has_no_branches.used=&field.has_blueprints.used=&field.has_no_blueprints.used= In progress bugs] |
Revision as of 04:32, 18 December 2014
Official Title: OpenStack Block Storage Cinder
PTL: Mike Perez <thingee at gmail d0t com>
To implement services and libraries to provide on demand, self-service access to Block Storage resources. Provide Software Defined Block Storage via abstraction and automation on top of various traditional backend block storage devices.
Contents
Description
Cinder is a Block Storage service for OpenStack. It's designed to allow the use of either a reference implementation (LVM) to present storage resources to end users that can be consumed by the OpenStack Compute Project (Nova). The short description of Cinder is that it virtualizes pools of block storage devices and provides end users with a self service API to request and consume those resources without requiring any knowledge of where their storage is actually deployed or on what type of device.am
Core Team
See current members.
Project Meetings
See Meetings/Cinder.
Getting in Touch
We use the openstack-dev@lists.openstack.org mailing list for discussions using subjects with the prefix "[cinder]". We also hang out on IRC in #openstack-cinder on freenode.
Related projects
Core Volume Drivers
For a list of the core drivers in each OpenStack release and the volume operations they support, see https://wiki.openstack.org/wiki/CinderSupportMatrix
How To Contrbute A Driver
See How to contribute a driver
Configuring devstack to use your driver and backend
One of the things you'll be required to do when submitting a new driver is running your backend and driver in a devstack environment and executing the tempest volume tests against it. Currently we provide a driver_cert wrapper (mentioned in the how-to-contribute-a-driver section). One thing that causes some confusion is how do I configure devstack to use my backend device. It used to be that your driver info would have to be added to lib/cinder in devstack to set your options. We then created a cinder/plugin module in devstack. Fortunately though it's MUCH easier than that. For *most* drivers, the only changes that are made consist of cinder.conf file changes. That can easily be accomplished by using devstacks local.conf file (more info here: http://devstack.org/configuration.html). For more complex actions (like the need to install packages etc, the plugin directory in devstack can be used). An example of what this file would look like to add driver FOO is shown below, the default localrc section is included for completeness, but the section of interest is the post-config cinder.conf section:
[[local|localrc]]
:# Passwords
ADMIN_PASSWORD=password
MYSQL_PASSWORD=password
RABBIT_PASSWORD=password
SERVICE_PASSWORD=password
SERVICE_TOKEN=password
SCREEN_LOGDIR=/opt/stack/logs
HOST_IP=172.16.140.246
disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service neutron
# These options define expected driver capabilities
TEMPEST_VOLUME_DRIVER=foo
TEMPEST_VOLUME_VENDOR="Foo Inc"
TEMPEST_STORAGE_PROTOCOL=iSCSI
# These options allow you to specify a branch other than "master" be used
CINDER_REPO=https://review.openstack.org/openstack/cinder
CINDER_BRANCH=refs/changes/83/72183/4
# Disable security groups entirely
Q_USE_SECGROUP=False
LIBVIRT_FIREWALL_DRIVER=nova.virt.firewall.NoopFirewallDriver
CINDER_SECURE_DELETE=False
[[post-config|$CINDER_CONF]]
volume_driver = cinder.volume.drivers.foo.FooDriver
foos_var = something
another_foo_var = something-else