OpenStack Cinder, Implementation Today and New Trends for Tomorrow

download OpenStack Cinder, Implementation Today and New Trends for Tomorrow

of 32

  • date post

  • Category


  • view

  • download


Embed Size (px)

Transcript of OpenStack Cinder, Implementation Today and New Trends for Tomorrow

  • OpenStack Block Storage Cinder Implementations for Today and Trends for Tomorrow

    Ed Balduf, Cloud Solutions Architect - OpenStack, @madskier5

  • Ephemeral Non-Persistent Life Cycle coincides with an Instance Usually local FS/QCOW file


    Manages data as.. well, an Object Think photos, mp4s etc Typically cheap and deep Commonly SWIFT

    Shared FS

    We all know and love NFS My be managed by Manila


    OpenStack = Many Storage Pieces


    Foundation for the other types Think raw disk Typically higher performance Cinder

  • Lets talk Cinder!

  • Cinder Mission Statement

    To implement services and libraries to provide on demand, self-service access to Block Storage resources. Provide Software Defined Block Storage via abstraction and automation on top of various traditional backend block storage devices.

    To put it another way... Virtualize various Block Storage devices and abstract them in to an

    easy self serve offering to allow end users to allocated and deploy storage resources on their own quickly and efficiently.

  • How it works Plugin architecture, use your own vendors backend(s) or use the default

    Backend devices invisible to end-user Consistent API regardless of backend Filter Scheduler lets you get get fancy expose differentiating features via custom

    volume-types and extra-specs

  • Storage Services Extend Volume Snapshot/Clone Change Volume type Backup/Restore Create Image/upload Image Manage/Unmanage Migrate Replication? Consistency Groups?

  • Reference Implementation Included Includes code to provide a base implementation using LVM Just add disks Great for POC and getting started Sometimes good enough Might be lacking for your performance, H/A and Scaling needs (it all depends) Can Scale by adding Nodes Cinder-Volume Node utilizes its local disks (allocate by creating an LVM VG) Cinder Volumes are LVM Logical Volumes, with an iSCSI target created for each

    Typical max size recommendations per VG/Cinder-Volume backend ~ 5 TB No Redundancy (yet)

  • Look at a deployment

  • Sometimes LVM Isnt Enough

    CloudByte Coraid Datera Dell (Eql + Stor Cntr) EMC (VMAX, VNX, XtremeIO) Fujitsu Eternus GlusterFS Hitachi (HUS, HUS-VM, VSP, HNAS) HP (3PAR, LeftHand, MSA) Huawei T (v1, v2, v3) IBM (DS8K, GPFS, StoreWize, NAS, XIV)

    LVM (reference) NTAP (FAS, E-series) Nexenta NFS (reference) * Nimble Storage Pure Storage Quobyte RBD (Ceph) Scality SMB StorPool

    SolidFire Symantec Tintri Violin Memory Vmware Windows Srv 2012 * X-IO Tech Zandara Solaris (ZFS) * ProphetStor

    * Partial

    Plugin Architecture gives you choices (maybe too many) and you can mix them together:

  • Only Slightly Different

  • cinder.conf file entries #Append to /etc/cinder.conf enabled_backends=lvm,solidfire default_volume_type=SolidFire [lvm] volume_group=cinder_volumes volume_driver=cinder.volume.drivers.lvm.LVMISCSIDriver volume_backend_name=LVM_iSCSI [solidfire] volume_driver=cinder.volume.drivers.solidfire.SolidFire san_ip= san_login=admin san_password=solidfire volume_backend_name=SolidFire

  • A Deeper Look

  • Creating types and extra-specs (GUI)

  • End users perspective (GUI)

  • Web UIs are neat, but automation rules! ebalduf@bdr76 ~ $ cinder create --volume-type SF-Silver -display-name MyVolume 100 or in code:

    >>> from cinderclient.v2 import client >>> cc = client.Client(USER, PASS, TENANT, AUTH_URL, service_type="volume") >>> cc.volumes.create(100, volume_type=f76f2fbf-f5cf-474f-9863-31f170a29b74) [...]

  • Or Heat Templates! resources: server: type: OS::Nova::Server properties: name: { get_param: "OS::stack_name" } storage_volume: type: OS::Cinder::Volume properties: name: { get_param: "OS::stack_name" } size: { get_param: vol_size } volume_type: { get_param: vol_type } volume_attachment: type: OS::Cinder::VolumeAttachment properties: volume_id: { get_resource: storage_volume } instance_uuid: { get_resource: server }

  • Where is Cinder headed next?

  • Pets Chickens? Traditional (Enterprise) infrastructure is individualized. Cloud native applications are transitory and disposable. Containers are more efficient, more numerous and more transitory than VMs.

    Uptime responsibility shift Enterprise (traditional) -> Infrastructure Cloud and Containers -> Applications and DevOps

  • Enterprise Apps and IT orgs on cloud

    Apps Monolithic Stateful Shared Storage Connected (LDAP, Org DB) Long startup times Multi-volume Active-passive

    IT Organizations Business Driven Politically driven Cost burden (single) Overworked Hierarchical/divided Legacy burden Prized, expensive apps Packaged software

    How do you manage it all on a modern cloud?

  • Protecting Legacy Apps in the Cloud Live Migration

    Available in OpenStack today on both shared storage and block storage. Some drivers are broke.

    Replication V1 in Kilo, V2 in work for Liberty.

    Fibre Channel Available in OpenStack today. 24 drivers of 37 block drivers as of 8/19

    HA connections and Multi-Attach HA: in process, maybe for Liberty. Multi-attach: Cinder -> Liberty, Nova -> Mitaka (maybe)

    Consistency Groups In Juno. Only 6 drivers as of Kilo


  • Managing Enterprise in an Enterprise Cloud

    Lack of Chargeback/lookback Lack of Chargeback is holding the enterprise back. No enforcement of what anyone uses.

    QoS Quotas and/or Hierarchical quotas How to do you Quota a Group or subgroup? How do you extend quota s to QoS?

    Custom catalogs Private Volume Types are available in Kilo.

  • No matter how much we try to change the expectation of users to align with cloud, they still complain when I reboot things. So I gotta have live migration.

  • Making choices can be the HARDEST part!

    Each has their own merits Some excel at specific use cases Maybe you already own the gear TCO, TCO, TCO

    Ask yourself: Does it scale? Is the architecture a good fit? Is it tested, will it really work in OpenStack? Support? What about performance and noisy neighbors? Third party CI testing? Active in the OpenStack Community? DIY, Services, both/neither (SolidFire AI, Fuel, JuJu, Nebula.)

  • Cinder Liberty Brick (Multi-attach, HA-connections) Volume Migration: Support Ceph Replication Universal Image caching Import/export snapshots Force delete backups Volume Metadata enhancements Nested Quotas Guru reports, better accounting for operators RemoteFS: (NFS, Gluster) Snapshots, Clones, and assisted Snapshots Support iSCSI HW offload DB: Archive, DB2

  • The All-Flash Array for the Next Generation Data Center

    A few words from our sponsor...

  • High performance storage systems designed for large scale infrastructure

    Industry Leading Quality of Service (QoS)

    Scale-Out Architecture 4 100 nodes 35TB 3.4PB Usable Capacity 200k 7.5M Controllable IOPS

    Simple all inclusive pricing model Direct Tier 3 Support

    for every customer

    Industry-standard hardware 10 GigE iSCSI, 16/8 Gb FC

    Scale-Out Infrastructure


    Guaranteed Quality of Service

    Complete System


    In-Line Data Reduction

    Self Healing High Availability

  • Powering the Worlds Most Demanding Data Centers

    The Most Complete AFA Feature Set Scale-out Architecture Self Healing High Availability Guaranteed QoS Complete System Automation In-line Data Reduction 3rd Generation of Hardware 8th Generation of Software


    Sales, Marketing, and Support : Over 400 Employees HQ: Boulder, Colorado North America EMEA APJ


    Enabling Customer Success Founded 2010 Funding $150M, Series D GA Product since Nov 2012 Over 2500 nodes shipped More than 45PB under mgt Fueling over 58,000 business


    #1 ALL-FLASH ARRAY CC 2014

    Updated 1/30/15

    #1 ALL-FLASH ARRAY CC 2015

  • Related Resources

    OpenStack Solution Page OpenStack Solution Brief SolidFire/Cinder Reference Architecture OpenStack Configuration Guide SolidFire/Rackspace Private Cloud

    Implementation Guide Video: Configuring OpenStack Block Storage w/


    Blogs OpenStack Summit Recap: Mindshare

    Achieved, Market Share Must Follow Separating from the Pack Why OpenStack Matters

  • How to get involved?

    Its Easy, Start Here


    Any questions? Technical



  • 1620 Pearl Street, Boulder, Colorado 80302 Phone: 720.523.3278 Email: