© 2013 IBM CorporationMay 2013OpenStack Cinder Deep DiveGrizzly ReleaseAvishay Traeger <avishay@il.ibm.com>IBM Research – ...
2© 2013 IBM CorporationCinder Overview Cinder manages persistent storage– Data volumes that are attached to VM instances–...
3© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientREST...
4© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientREST...
5© 2013 IBM Corporationcinder-api Volume create/delete/list/show– Create from volume, image, snapshot Snapshot create/de...
6© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientREST...
7© 2013 IBM Corporationcinder-volumeMain components: API: for cinder-api to communicate withcinder-volume Manager: Gener...
8© 2013 IBM CorporationExample: High-Level Data and Control Flow 1NovaVM instance/dev/vdaKVMiSCSIinitiatorCinder/dev/hdaLi...
9© 2013 IBM CorporationExample: High-Level Data and Control Flow 2Storage ControllerNovaVM instance/dev/vdaKVMiSCSIinitiat...
10© 2013 IBM CorporationExample: Flow for attach a volume to instance1. Nova calls Cinder via its API, passing connection ...
11© 2013 IBM CorporationArchitectural Overviewcinder-apicinder-scheduler cinder-volume cinder-backupSQL DBcinder clientRES...
12© 2013 IBM Corporationcinder-scheduler Chooses which back-end to place anew volume on Configurable plugins for filters...
13© 2013 IBM CorporationScheduler / volume_types example
14© 2013 IBM CorporationScheduler / volume_types example
15© 2013 IBM CorporationScheduler / volume_types exampleHDDsCompressedFlash/HDDFlash
16© 2013 IBM CorporationScheduler / volume_types example
17© 2013 IBM CorporationLooking Forward to Havana: Features Code cleanup and reorganization Attach volume to multiple ho...
18© 2013 IBM CorporationLooking Forward to Havana: New Drivers IBM GPFS IBM zVM EMC Isilon (iSCSI) Local disk partitio...
19© 2013 IBM Corporation
Upcoming SlideShare
Loading in …5
×

Avishay trager cinder-grizzly-deep-dive

1,650
-1

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

×