Difference between revisions of "Cinder"
Line 29: | Line 29: | ||
* Do the same euca2ools that I use for volumes today still work the same? '''YES''' | * Do the same euca2ools that I use for volumes today still work the same? '''YES''' | ||
* Does block storage still work the same as it does today in terms of LVM, iSCSI and the drivers that are curently in place? '''YES''' | * Does block storage still work the same as it does today in terms of LVM, iSCSI and the drivers that are curently in place? '''YES''' | ||
− | * Are the associated database tables the same as they are in the current nova volume code? '''For the most part YES, | + | * Are the associated database tables the same as they are in the current nova volume code? '''For the most part YES, all volume related tables and columns are migrated, non-volume related tables however are not present''' |
* Does it use the same nova database as we use today? '''No, it does require a new independent database''' | * Does it use the same nova database as we use today? '''No, it does require a new independent database''' | ||
* Are you going to implement cinder with complete disregard for my current install and completely change everything out from under me? '''ABSOLUTELY NOT''' | * Are you going to implement cinder with complete disregard for my current install and completely change everything out from under me? '''ABSOLUTELY NOT''' | ||
* Are you going to test migrating from nova-vol to Cinder? '''YES''' | * Are you going to test migrating from nova-vol to Cinder? '''YES''' | ||
* Are those migration tests going to be done just using fakes/unit tests? '''NO, we would require running setups, most likely devstack''' | * Are those migration tests going to be done just using fakes/unit tests? '''NO, we would require running setups, most likely devstack''' | ||
+ | * Are you planning to provide migration scripts/tools to move from nova to cinder? '''YES''' | ||
=== Additional thoughts to keep in mind: === | === Additional thoughts to keep in mind: === |
Revision as of 15:02, 16 July 2012
Cinder - OpenStack Block Storage Service
The goal of the Cinder project is to separate the existing nova-volume block service into it's own project.
Reasoning:
- Nova is currently a very large project, managing all of the dependencies in linkages of services within Nova can make the ability to advance new features and functionality very difficult.
- As a result of the many components and dependencies in Nova, it's difficult for anybody to really have a complete view of Nova and to be a true expert. This makes the job of core team member on Nova very difficult, and inhibits good thorough reviews of bug and blueprint submissions.
- Block storage is a critical component of OpenStack, as such it warrants focused and dedicated attention.
- Having Block Storage as a dedicated core project in OpenStack enables the ability to greatly improve functionality and reliability of the block storage component of OpenStack
Goals for Folsom release:
- Provide as close to a "drop in" replacement/alternative to nova-volume
- Emphasis on limiting disruption
- * Operate using the same novaclient commands that are used today (nova volume-create, nova volume-snapshot-create, etc)
- * Utilize the same architecture and code, just separate it out of the Nova project
- * Cinder is LITERALLY a copy and past of the nova-volume code
Keeping informed and providing CONSTRUCTIVE INPUT
The Cinder team currently meets on a weekly basis in #openstack-meeting at 16:00 UTC on Wednesdays. I try to keep the meetings wiki agenda page http://wiki.openstack.org/NovaVolumeMeetings up to date and follow it. Also keep in mind that anybody is able to add/suggest agenda items via the meeting wiki page.
Of course, there's also IRC... a number of us monitor #openstack-cinder or you can always send a PM to jgriffith (that's me)http://wiki.openstack.org/NovaVolumeMeetings
Concerns from the community:
Compatability and Migration:
There has been a significant amount of concern raised regarding "compatability", unfortunately this seems to mean different things to different people. For those that haven't looked at the Cinder code, or tried a demo in devstack here are some question/answers
- Do the same nova client commands I use for volumes today still work the same? YES
- Do the same euca2ools that I use for volumes today still work the same? YES
- Does block storage still work the same as it does today in terms of LVM, iSCSI and the drivers that are curently in place? YES
- Are the associated database tables the same as they are in the current nova volume code? For the most part YES, all volume related tables and columns are migrated, non-volume related tables however are not present
- Does it use the same nova database as we use today? No, it does require a new independent database
- Are you going to implement cinder with complete disregard for my current install and completely change everything out from under me? ABSOLUTELY NOT
- Are you going to test migrating from nova-vol to Cinder? YES
- Are those migration tests going to be done just using fakes/unit tests? NO, we would require running setups, most likely devstack
- Are you planning to provide migration scripts/tools to move from nova to cinder? YES
Additional thoughts to keep in mind:
- The Cinder core team is fortunate enough to have a number of members who currently work for companies that are using OpenStack and nova-volumes in production environments. There is a strong representation and the concerns of Providers is in fact a major consideration
- The goal is NOT to throw away nova-volume as it is today, but to separate it, focus on it and improve it.
- Migration is one of the top priorities for introduction of Cinder into Folsom (regardless of whether nova-volume is still in place or not). This is something that is just considered a part of the requirements for the project.