Intro to Openstack Cinder and Icehouse Bound

download Intro to Openstack Cinder and Icehouse Bound

of 17

  • date post

    14-Apr-2016
  • Category

    Documents

  • view

    21
  • download

    0

Embed Size (px)

description

openstack icehouse

Transcript of Intro to Openstack Cinder and Icehouse Bound

  • KIDSON

    THE

    BLOCK

    NEW

    THEpresented by mike perez

  • MIKEPEREZ

    senior developer for DreamHostMaintain Cinder setup.

    Maintain interactions between Nova and Cinder.

    Working with 900 Ceph OSD setup comes out to around 4 petabytes.

    Contribute fixes upstream.

  • http://www.flickr.com/photos/nooccar/5844185400

    cinder core developer

    MIKEPEREZ

    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

  • WHAT

    http://www.flickr.com/photos/neilhinchley/294337822/

    project exists since Folsom release, spun off Nova-volume

    cinder manages block storage

    not an object storage

    not a file level storage

    volumes attach to VM Instances

    boot from volume

    volumes have a lifecycle independent of VM instance

  • VOLUMETYPES

    Admin can create tiers of storage. e.g. two LVM backends, one with SSDs and the other with HDDs.

    Users can specify a tier they want when creating a volume.

  • ARCHITECTURALOVERVIEW

    Cinder Client

    Cinder API

    Cinder Volume Cinder BackupCinder Scheduler

    SQL DB

    AMPQAMPQ

    AMPQ

  • CINDERAPIVolume 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 volume types

    Manage quotas

    Volume extend

    Volume migrate

    Transfer volumes from tenant to tenant

  • CINDERSCHEDULERChooses 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

  • CINDERVOLUMEDrivers: 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

    One cinder-volume instance can manage multiple back-ends

    Each back-end driver is generally configured to interact with one storage pool

    Multi-threading

  • CINDERBACKUP

    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

  • ATTACHTHAT 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

  • HIGHLEVEL

    Nova CinderVM Instance

    Linux Volume Manager

    KVM

    ISCSI Initiator

    LegendPersistent Volume DataPersistent Volume Control

    /dev/hda

    /dev/vda

    Target

  • THEGRID

  • DRIVERREQUIREMENTS 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

  • CURRENTDRIVERS

    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)

  • ICEHOUSEBOUNDGeneral Features

    FC SAN Zone / Access Control management

    State machine

    Volume retype

    Volume Replication

    Multiprocess API

    Disaster recovery

    New Drivers:

    Federator Storage

    ProphetStor

    Generic ZFS ISCSI

    HP Lefthand array iSCSI

    HP MSA 2040

  • THANKYOU!Get started with Cinder:

    https://wiki.openstack.org/wiki/Cinder

    Source Code:

    http://github.com/openstack/cinder

    REST API Docs:

    http://docs.openstack.org/api/openstack-block-storage/2.0

    Thanks Avishay Traeger from IBM for letting me copy things out of his slides.

    Web: http://thing.ee

    Github: thingee

    Twitter: @thingee

    IRC: thingee

    Email: thingee@gmail.com