Creating Differentiated Storage Offerings Using Cinder Volume Types - - PowerPoint PPT Presentation

creating differentiated storage offerings using cinder
SMART_READER_LITE
LIVE PREVIEW

Creating Differentiated Storage Offerings Using Cinder Volume Types - - PowerPoint PPT Presentation

Creating Differentiated Storage Offerings Using Cinder Volume Types Bob Callaway, PhD Cloud Solutions Group, NetApp @rdcallaw 1 Agenda Why Offer Differentiated Storage Service Levels? Quick Overview of OpenStack Block Storage


slide-1
SLIDE 1

Bob Callaway, PhD Cloud Solutions Group, NetApp @rdcallaw

Creating Differentiated Storage Offerings Using Cinder Volume Types

1

slide-2
SLIDE 2

Agenda

¡ Why Offer Differentiated Storage Service Levels? ¡ Quick Overview of OpenStack Block Storage (Cinder) ¡ Cinder Volume Types

– Definition – Extra specs (with examples) – QoS specs (with examples)

¡ How to differentiate using Cinder Volume Types ¡ Brief Demo ¡ Q & A

2

slide-3
SLIDE 3

Why you should consider multiple service levels for block storage

¡ All workloads are not created equal ¡ Differentiation can lead to greater provider efficiencies, revenue ¡ Cinder provides an consistent API to access different types of storage through a common

  • bject model

3

slide-4
SLIDE 4

Example of Differentiation Strategies

¡ Performance – Media format, IOPS limits, thin/thick provisioning ¡ Data protection – Basic, replicated, snapshot/backup intervals ¡ Environment-specific – Storage protocol, vendor, driver

4

slide-5
SLIDE 5

Amazon EBS Service Levels

5

slide-6
SLIDE 6

Rackspace Cloud Block Storage Example

6

slide-7
SLIDE 7

OpenStack Block Storage Service (Cinder)

¡ Self-service management of block storage entities (volumes) ¡ Core OpenStack project; forked from Nova (was nova-volume) ¡ Typically deployed as part of a larger cloud; can be used alone ¡ Cinder is the “control plane”; not in the data path of storage traffic

7

Control Path Data Path

slide-8
SLIDE 8

OpenStack Block Storage Service (Cinder)

8

cinder-api

cinder-scheduler cinder-backup REST

Cinder

cinder-volume

Driver

cinder-volume

Driver

cinder-volume

Driver

slide-9
SLIDE 9

Volume Type

¡ An abstract collection of criteria used to describe a particular service level ¡ Defined by cloud administrators as a list of key/value pairs ¡ Utilized by end users when volumes are created

– Volumes can be retyped after creation

9

slide-10
SLIDE 10

q Thin Provisioned q Deduplicated ü Hourly Backups ü Replicated ü Highly Available ü Thin Provisioned ü Hourly Backups q Isolation q Isolation q Isolation q Isolation

Cinder Volume Types

Bronze Silver Gold

q Thin provisioned q Deduplication ü Hourly Backups ü Replicated q Isolation ü Highly Available

Volume Types: Names are arbitrary

slide-11
SLIDE 11

Volume Types: Names are arbitrary

slide-12
SLIDE 12

How Volume Types Affect Volume Provisioning

12

Cinder-scheduler I’d like a 520GB Silver volume Cinder backend A Driver capabilities Cinder backend B Driver capabilities Size, type Available capacity, capabilities Volume Type Definition

{netapp_dedup=True}

Provision in backend B

slide-13
SLIDE 13

Volume Type: Default Capabilities

¡ Cinder backends periodically advertise capabilities (key/value pairs) to the Cinder scheduler

– volume_backend_name

¡ The name of the backend as defined in cinder.conf

– vendor_name

¡ The name of the vendor who has implemented the driver (e.g. NetApp, ‘Open Source’)

– driver_version

¡ The version of the driver (e.g. 1.0)

– storage_protocol

¡ The protocol used by the backend to export storage to clients (e.g. iSCSI, NFS, FC)

13

slide-14
SLIDE 14

Volume Type: Extra Specs

¡ Driver/vendor specific capabilities

14

Extra Spec Type Description

netapp:raid_type

String Limit the candidate volume list based on one of the following raid types: raid4, raid_dp.

netapp:disk_type

String Limit the candidate volume list based on one of the following disk types: ATA, BSAS, EATA, FCAL, FSAS, LUN,

MSATA, SAS, SATA, SCSI, XATA, XSAS, or SSD. netapp_thin_provisioned

Boolean Limit the candidate volume list to only the ones that support thin provisioning on the storage controller.

netapp_dedup

Boolean Limit the candidate volume list to only the ones that have deduplication enabled on the storage controller.

§ This is not an exclusive list – and each vendor has their own… § Refer to the Config Reference guide @ docs.openstack.org

slide-15
SLIDE 15

Volume Type: QoS Specs

¡ Define Quality-of-Service (QoS) targets for volumes ¡ Can be enforced either at – the hypervisor “frontend” – the storage subsystem “backend” – both

15

Control Path Data Path

slide-16
SLIDE 16

Volume Type: QoS Specs - Limits

¡ Frontend: Limit by throughput

– Total bytes/sec, read bytes/sec, write bytes/sec

¡ Frontend: Limit by IOPS

– Total IOPS/sec, read IOPS/sec, write IOPS/sec

¡ Backend: Vendor specific fields

– HP 3PAR (IOPS, tput: min, max; latency, priority) – Solidfire (IOPS: min, max, burst) – NetApp* (QoS Policy Group) – Huawei* (priority)

16

* defined through extra specs

slide-17
SLIDE 17

Using Volume Types to Create Differentiated Storage Offerings

17

Volume Type Extra Specs QoS Specs Gold {netapp:disk_type=SSD, netapp_thick_provisioned=True}

{}

Silver {}

{total_iops_sec=500}

Bronze {volume_backend_name=lvm}

{total_iops_sec=100}

slide-18
SLIDE 18

Using Volume Types to Create Differentiated Storage Offerings

18

Volume Type Extra Specs QoS Specs Archival {netapp_mirroring=True, netapp_compression=True}

{read_bytes_sec=5000}

Analytics {netapp_thick_provisioned=True} {} Streaming {netapp:disk_type=SSD}

{}

Temporal {netapp_thin_provisioned=True}

{total_iops_sec=100}

Database {storage_protocol=iscsi}

{}

slide-19
SLIDE 19

Demo

19

slide-20
SLIDE 20

20

Questions?

slide-21
SLIDE 21

21