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

OpenStack Cinder: IceHouse

Mike Perez
February 21, 2014

OpenStack Cinder: IceHouse

Mike Perez

February 21, 2014
Tweet

More Decks by Mike Perez

Other Decks in Technology

Transcript

  1. MIKE PEREZ senior developer for DreamHost •Maintain Cinder setup. •Maintain

    interactions between Nova and Cinder. •Working with 900 Ceph OSD setup comes out to around 4 petabytes. •Contribute fixes upstream.
  2. http://www.flickr.com/photos/nooccar/5844185400 cinder core developer MIKE PEREZ •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
  3. 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
  4. 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
  5. 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
  6. 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 back-ends •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
  7. 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.
  8. 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
  9. HIGH LEVEL Nova Cinder VM Instance Linux Volume Manager KVM

    ISCSI Initiator Legend Persistent Volume Data Persistent Volume Control /dev/hda /dev/vda Target
  10. 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
  11. 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
  12. 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.
  13. 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)
  14. ICEHOUSE BOUND General Features •FC SAN Zone / Access Control

    management •Volume retype •Volume Replication •Multiprocess API •Backup backup data (seriously). •Local volumes New Drivers: •ProphetStor Federator •ProphetStor DPL •HP Lefthand array iSCSI •HP MSA 2040 •IBM SONAS •IBM Storwize V7000 •Astute NFS •EMC VNX Direct
  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]