Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Avishay trager cinder-grizzly-deep-dive

2,021 views

Published on

Published in: Technology

Avishay trager cinder-grizzly-deep-dive

  1. 1. © 2013 IBM CorporationMay 2013OpenStack Cinder Deep DiveGrizzly ReleaseAvishay Traeger <avishay@il.ibm.com>IBM Research – HaifaOpenStack Cinder Core Team Member
  2. 2. 2© 2013 IBM CorporationCinder Overview Cinder manages persistent storage– Data volumes that are attached to VM instances– Boot from volume Project exists since Folsom release, spun off from Nova-volume Volumes have a lifecycle independent of VM instances For example:– Cinder: create volume– Nova: boot VM instance– Nova: attach volume to instance (will call Cinder)– (More details later)
  3. 3. 3© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientRESTAMPQAMPQAMPQ
  4. 4. 4© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientRESTAMPQAMPQAMPQ
  5. 5. 5© 2013 IBM Corporationcinder-api Volume create/delete/list/show– Create from volume, image, snapshot Snapshot create/delete/list/show Volume attach/detach (called by Nova) Others:– Volume types (more later)– Quotas– Backupscinder-api
  6. 6. 6© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientRESTAMPQAMPQAMPQ
  7. 7. 7© 2013 IBM Corporationcinder-volumeMain components: API: for cinder-api to communicate withcinder-volume Manager: Generic code to implement API Drivers: Called by Manager, containsback-end-specific code to communicate withvarious storage types (e.g., Linux LVM,storage controllers from various vendors,distributed file systems, etc.)➢ Admin can run multiple cinder-volumeinstances, each with its own configuration filedescribing settings and the storage back-end➢ As of Grizzly, one cinder-volume instance canmanage multiple back-ends➢ Each back-end driver is generally configuredto interact with one storage pool➢ Multi-threadingcinder-volume
  8. 8. 8© 2013 IBM CorporationExample: High-Level Data and Control Flow 1NovaVM instance/dev/vdaKVMiSCSIinitiatorCinder/dev/hdaLinux Volume ManageriSCSItargetLegendPersistent volume controlPersistent volume data
  9. 9. 9© 2013 IBM CorporationExample: High-Level Data and Control Flow 2Storage ControllerNovaVM instance/dev/vdaKVMiSCSIinitiatorCinderiSCSItargetLegendPersistent volume controlPersistent volume dataNote that iSCSI is justan example – severaladditional protocolsare supported (e.g.,FC, NFS)
  10. 10. 10© 2013 IBM CorporationExample: Flow for attach a volume to instance1. Nova calls Cinder via its API, passing connection information e.g., host name, iSCSI initiator name, FC WWPNs2. cinder-api passes message to cinder-volume3. Manager does initial error checking and calls volume driver4. Volume driver does any necessary preparation to allow the connection e.g., give the nova host permissions to access the volume5. Volume driver returns connection information, which is passed to Nova e.g., iSCSI iqn and portal, FC WWPN6. Nova creates the connection to the storage using the returned information7. Nova passes the volume device/file to the hypervisor
  11. 11. 11© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientRESTAMPQAMPQAMPQ
  12. 12. 12© 2013 IBM Corporationcinder-scheduler Chooses which back-end to place anew volume on Configurable plugins for filters andweights1. Starts with list of all back-ends2. Filters according to capabilities Drivers report capabilities and state(e.g., free space) Admins create volume_types whichspecify requirements Users optionally specify a volume_typewhen creating a volume3. Sorts according to weights e.g., available free space4. Returns best candidatecinder-scheduler
  13. 13. 13© 2013 IBM CorporationScheduler / volume_types example
  14. 14. 14© 2013 IBM CorporationScheduler / volume_types example
  15. 15. 15© 2013 IBM CorporationScheduler / volume_types exampleHDDsCompressedFlash/HDDFlash
  16. 16. 16© 2013 IBM CorporationScheduler / volume_types example
  17. 17. 17© 2013 IBM CorporationLooking Forward to Havana: Features Code cleanup and reorganization Attach volume to multiple hosts Read-only volumes ACLs Disk encryption FC SAN Zone / Access Control management Transfer volume ownership Volume Migration Work towards locality between instances and volumes Scheduler hints Volume rate limiting
  18. 18. 18© 2013 IBM CorporationLooking Forward to Havana: New Drivers IBM GPFS IBM zVM EMC Isilon (iSCSI) Local disk partitions Hitachi HUS (DF850) (iSCSI) Dell Equalogic Violin Memory v6000 (iSCSI)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)
  19. 19. 19© 2013 IBM Corporation

×