Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OpenStack Cinder: Juno Bound!

OpenStack Cinder: Juno Bound!

Includes Juno bound slide.

Mike Perez

April 04, 2014
Tweet

More Decks by Mike Perez

Other Decks in Technology

Transcript

  1. http://www.flickr.com/photos/nooccar/5844185400 cinder core developer MIKE PEREZ •Joined the community October

    2010 •Wrote the start of Cinder V2 API •Cinder API documentation •Cinder API references •Compatibility hammer •More code reviews than I know what to do with senior developer for Datera
  2. WHAT http://www.flickr.com/photos/neilhinchley/294337822/ • project exists since Folsom release, spun off

    Nova-volume • cinder manages block storage • not object storage • not file level storage • volumes attach to VM Instances • Instances can boot from volume • volumes have a lifecycle independent of VM instance
  3. CINDER API •Volume create/delete/list/show •Create from image, snapshot •Snapshot create/delete/list/show

    •Backups create/restore/list/delete/show •Volume attach/detach (called by Nova) •Manage quotas •Volume extend •Volume migrate •Transfer volumes from tenant to tenant
  4. CINDER VOLUME •Drivers: Called by Manager, contains back-end-specific code to

    communicate with various storage types (e.g., Linux LVM, storage controllers from various vendors, distributed file systems, etc.) •Admin can run multiple cinder-volume instances, each with its own configuration file describing settings and the storage back-end •Each backend driver is configured to interact with one storage pool
  5. CINDER SCHEDULER •Chooses which back-end to place a new volume

    on •Configurable plugins for schedulers •Filter scheduler has filters and weighers •Filter scheduler Flow Example: •Starts with list of all cinder volume hosts •Filters according to capabilities •Drivers report capabilities and state (e.g., free space) •Default filters •Volume types •Sorts according to weights e.g., available free space •Returns best candidate
  6. VOLUME TYPES •Admin can create tiers of storage. e.g. two

    LVM backends, one with SSD’s and the other with HDD’s. •Users can specify a tier they want when creating a volume.
  7. CINDER BACKUP •A backup is an archived copy of a

    Volume stored in a object store. •A backup is just the data that was written, unlike a snapshot which is the entire block. •Use Swift, Ceph, or IBM Tivoli Storage Manager
  8. HIGH LEVEL Nova Cinder VM Instance Linux Volume Manager KVM

    ISCSI Initiator Legend Persistent Volume Data Persistent Volume Control /dev/hda /dev/vda Target
  9. ATTACH THAT • Nova calls Cinder via its API, passing

    connection information.
 e.g., host name, iSCSI initiator name, FC WWNNs • Cinder API passes message to Cinder Volume. • Manager does initial error checking and calls volume driver. • Volume driver does any necessary preparation to allow the connection.
 e.g., give the nova host permissions to access the volume. • Volume driver returns connection information, which is passed to Nova.
 e.g., iSCSI iqn and portal, FC WWNN. • Nova creates the connection to the storage using the returned information. • Nova passes the volume device/file to the hypervisor. VOLUME
  10. DRIVER REQUIREMENTS •Volume Create/Delete •Volume Attach/Detach •Snapshot Create/Delete •Create Volume

    from Snapshot •Get Volume Stats •Copy Image to Volume •Copy Volume to Image •Clone Volume •Extend Volume
  11. DRIVER CERTIFICATION •Driver certification test exists in devstack today. •Wrapper

    around OpenStack integration tests Tempest. •Requires driver maintainers in EACH release to provide results from running Tempest against Cinder with their driver as a backend.
  12. CURRENT DRIVERS •Coraid (AoE) •EMC VMAX/VNX (iSCSI) •GlusterFS (GlusterFS) •HP

    3PAR (iSCSI/FC) •HP LeftHand (iSCSI) •Huawei T-series/Dorado (iSCSI) •IBM Storwize family/SVC (iSCSI/FC) •IBM XIV (iSCSI), LVM (iSCSI) •NetApp (iSCSI/NFS) •Nexenta (iSCSI) •NFS (NFS) •RBD (Ceph) •Scality SOFS (scality) •Sheepdog (sheepdog) •Solaris (iSCSI) •SolidFire (iSCSI) •Windows Server 2012 (iSCSI) •Zadara (iSCSI) •Dell EqualLogic •VMware VMDK •IBM General Parallel File System (GPFS)
  13. ICEHOUSE RELEASE General Features •FC SAN Zone / Access Control

    management •Volume retype •Cinder API can run on multiple processes •Ceilometer notifications •TSM Backup Driver •Import/export backup metadata New Drivers: •HP Lefthand array iSCSI •HP MSA 2040 •IBM SONAS •IBM Storwize V7000 •EMC VNX Direct 293 bug fixes!
  14. Juno BOUND General Features •Create volume on same compute host

    •Project quotas •Support Accept-Langauge header in API •Rollback volume to snapshot •Volume replication New Drivers: •Generic ZFS ISCSI •Astute NFS •Fusion-io ISCSI •ProphetStor Federator •Nimble ISCSI •X-IO ISE ISCSI and FC
  15. THANK YOU! •Get started with Cinder: •https://wiki.openstack.org/wiki/Cinder •Source Code: •http://github.com/openstack/cinder

    •REST API Docs: •http://bit.ly/1ebzbMZ Web: http://thing.ee Github: thingee Twitter: @thingee IRC on Freenode: thingee Email: [email protected]