Deterministic Storage Performance

Similar documents
Deterministic Storage Performance

MySQL and Ceph. MySQL in the Cloud Head-to-Head Performance Lab. 1:20pm 2:10pm Room :20pm 3:10pm Room 203

Block Storage Service: Status and Performance

Analyzing Performance of OpenStack with Grafana Dashboards

A product by CloudFounders. Wim Provoost Open vstorage

MySQL and Ceph. A tale of two friends

Workspace & Storage Infrastructure for Service Providers

Protecting the Galaxy Multi-Region Disaster Recovery with OpenStack and Ceph

An Introduction to Red Hat Enterprise Linux OpenStack Platform. Rhys Oxenham Field Product Manager, Red Hat

AWS Solutions Architect Associate (SAA-C01) Sample Exam Questions

THE CEPH POWER SHOW. Episode 2 : The Jewel Story. Daniel Messer Technical Marketing Red Hat Storage. Karan Singh Sr. Storage Architect Red Hat Storage

Enterprise Ceph: Everyway, your way! Amit Dell Kyle Red Hat Red Hat Summit June 2016

Webinar Series: Triangulate your Storage Architecture with SvSAN Caching. Luke Pruen Technical Services Director

The Comparison of Ceph and Commercial Server SAN. Yuting Wu AWcloud

Jumpstart your Production OpenStack Deployment with

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Pass4test Certification IT garanti, The Easy Way!

DEPLOYING NFV: BEST PRACTICES

NetApp HCI. Ready For Next. Enterprise-Scale Hyper Converged Infrastructure VMworld 2017 Content: Not for publication Gabriel Chapman: Sr. Mgr. - NetA

SolidFire. Petr Slačík Systems Engineer NetApp NetApp, Inc. All rights reserved.

Part2: Let s pick one cloud IaaS middleware: OpenStack. Sergio Maffioletti

Fast and Easy Persistent Storage for Docker* Containers with Storidge and Intel

Next Generation Storage for The Software-Defned World

Paperspace. Architecture Overview. 20 Jay St. Suite 312 Brooklyn, NY Technical Whitepaper

Database Architecture 2 & Storage. Instructor: Matei Zaharia cs245.stanford.edu

Build Cloud like Rackspace with OpenStack Ansible

Red Hat OpenStack Platform 10 Product Guide

Distributed API Management in a Hybrid Cloud Environment

Red Hat Ceph Storage and Samsung NVMe SSDs for intensive workloads

SUBSCRIPTION OVERVIEW

All you need to know about OpenStack Block Storage in less than an hour. Dhruv Bhatnagar NirendraAwasthi

OSDC.de 2013 Introduction to OpenStack. Justin Clift Open Source & Standards RH 17 April 2013

Storage Fault Tolerance in Hyper-Converged Clouds running Red Hat OpenStack Platform. Asmita Jagtap Senior Principal Software Engineer 2 nd May 2017

KVM 在 OpenStack 中的应用. Dexin(Mark) Wu

Serverless Architecture Hochskalierbare Anwendungen ohne Server. Sascha Möllering, Solutions Architect

EMC STORAGE SOLUTIONS WITH MIRANTIS OPENSTACK

Building Service Platforms using OpenStack and CEPH: A University Cloud at Humboldt University

Red Hat Roadmap for Containers and DevOps

Next-Generation NVMe-Native Parallel Filesystem for Accelerating HPC Workloads

The Fastest And Most Efficient Block Storage Software (SDS)

SolidFire and Ceph Architectural Comparison

A New Key-value Data Store For Heterogeneous Storage Architecture Intel APAC R&D Ltd.

AWS Storage Gateway. Amazon S3. Amazon EFS. Amazon Glacier. Amazon EBS. Amazon EC2 Instance. storage. File Block Object. Hybrid integrated.

VMware Virtual SAN Technology

VMware + OpenStack. Dan Wendlandt Director of Product Management VMware VMware Inc. All rights reserved.

클라우드스토리지구축을 위한 ceph 설치및설정

Contrail Cloud Platform Architecture

StorMagic SvSAN 6.1. Product Announcement Webinar and Live Demonstration. Mark Christie Senior Systems Engineer

Contrail Cloud Platform Architecture

OPENSTACK AGILITY. RED HAT RELIABILITY.

A fields' Introduction to SUSE Enterprise Storage TUT91098

Architecture and terminology

Kubernetes 1.9 Features and Future

Supermicro All-Flash NVMe Solution for Ceph Storage Cluster

RED HAT CEPH STORAGE ROADMAP. Cesar Pinto Account Manager, Red Hat Norway

OpenStack Cloud Storage. PRESENTATION TITLE GOES HERE Sam Fineberg HP Storage

DISRUPTION IN THE $35B STORAGE MARKET

DEEP DIVE: OPENSTACK COMPUTE

Branch offices and SMBs: choosing the right hyperconverged solution

Agenda. Introduction Storage Primer Block Storage Shared File Systems Object Store On-Premises Storage Integration

AWS: Basic Architecture Session SUNEY SHARMA Solutions Architect: AWS

How To Get The Most Out Of Flash Deployments

(Em)Powering Open Hardware with Open Source Software

Why software defined storage matters? Sergey Goncharov Solution Architect, Red Hat

POSTGRESQL ON AWS: TIPS & TRICKS (AND HORROR STORIES) ALEXANDER KUKUSHKIN. PostgresConf US

OPENSTACK Building Block for Cloud. Ng Hwee Ming Principal Technologist (Telco) APAC Office of Technology

INTEGRATING HPFS IN A CLOUD COMPUTING ENVIRONMENT

Advanced Architectures for Oracle Database on Amazon EC2

Ceph Software Defined Storage Appliance

Ceph BlueStore Performance on Latest Intel Server Platforms. Orlando Moreno Performance Engineer, Intel Corporation May 10, 2018

Ceph Intro & Architectural Overview. Abbas Bangash Intercloud Systems

RACKSPACE ONMETAL I/O V2 OUTPERFORMS AMAZON EC2 BY UP TO 2X IN BENCHMARK TESTING

A Gentle Introduction to Ceph

Introducing SUSE Enterprise Storage 5

Secure Block Storage (SBS) FAQ

SSDs in the Cloud Dave Wright, CEO SolidFire, Inc.

Re-Architecting Cloud Storage with Intel 3D XPoint Technology and Intel 3D NAND SSDs

SOFT CONTAINER TOWARDS 100% RESOURCE UTILIZATION ACCELA ZHAO, LAYNE PENG

Cloud Computing. Amazon Web Services (AWS)

Configuring OpenStack with Datera as the Storage Provider

Storage Key Issues for 2017

Enabling NVMe I/O Scale

INTRODUCING CONTAINER-NATIVE VIRTUALIZATION

SolidFire Mirantis Unlocked Reference Architecture. SolidFire Inc. US HEADQUARTERS. Sunnyvale, CA

SUSE OpenStack Cloud Production Deployment Architecture. Guide. Solution Guide Cloud Computing.

Designing MQ deployments for the cloud generation

Cloud Storage. Patrick Osborne Director of Product Management. Sam Fineberg Distinguished Technologist.

IN2P3-CC cloud computing (IAAS) status FJPPL Feb 9-11th 2016

Launching StarlingX. The Journey to Drive Compute to the Edge Pilot Project Supported by the OpenStack

Tempest: Integrated OpenStack Testing

You Have Stateful Apps - What if Kubernetes Would Also Run Your Storage?

A Cloud WHERE PHYSICAL ARE TOGETHER AT LAST

NetApp HCI QoS and Mixed Workloads

EMC VFCache. Performance. Intelligence. Protection. #VFCache. Copyright 2012 EMC Corporation. All rights reserved.

All-NVMe Performance Deep Dive Into Ceph + Sneak Preview of QLC + NVMe Ceph

Mission-Critical Databases in the Cloud. Oracle RAC in Microsoft Azure Enabled by FlashGrid Software.

FIVE REASONS YOU SHOULD RUN CONTAINERS ON BARE METAL, NOT VMS

Virtual Storage Tier and Beyond

Is Open Source good enough? A deep study of Swift and Ceph performance. 11/2013

OpenStack and Beyond Built on ProphetStor Federator

Transcription:

Deterministic Storage Performance 'The AWS way' for Capacity Based QoS with OpenStack and Ceph Kyle Bader - Senior Solution Architect, Red Hat Sean Cohen - A. Manager, Product Management, OpenStack, Red Hat Federico Lucifredi - Product Management Director, Ceph, Red Hat May 2, 2017

Block Storage QoS in the public cloud

WHY DOES IT MATTER? It s what the user wants Every Telco workload in OpenStack today has a DBMS dimension to it QoS is an essential building block for DBMS deployment Public Cloud has established capacity-based QoS as a de-facto standard

PROBLEM STATEMENT Deterministic storage performance Some workloads need deterministic performance from block storage volumes Workloads benefit from Isolation from noisy neighbors Operators need to know how to plan capacity

BLOCK STORAGE IN A PUBLIC CLOUD The basics Ephemeral / Scratch Disks Local disks connected directly to hypervisor host Persistent Disks Remote disks connected over a dedicated network Boot volume type depends on instance type Additional volumes can be attached to an instance

THE AWS WAY Elastic Block Storage AWS EBS EBS-backed instances SSD-backed volumes HDD-backed volumes Dynamically re-configurable at runtime Mount (boot or runtime) Resize Monitoring CloudWatch metrics Automation CloudFormation

EBS Volumes: an example General purpose SSD I/O Provisioned gp2 volume Baseline: 100 IOPS + 3 IOPS per GB (up to 10,000 IOPS) Burst: 3,000 IOPS (up to 1 TB) Thruput: 160 MB/s Latency: single-digit ms Capacity: 1 GB to 16 TB

THE AWS WAY Elastic Block Storage Flavors Magnetic ~100 IOPS and 40 MB/s per volume General Purpose SSD (3 IOPS/GB) Provisioned IOPS (30 IOPS/GB) Elastic Volumes gp2, io1, st1, sc1 volume types increase volume size (cannot shrink!) Change provisioned IOPS Change volume type Single dimension of provisioning: amount of storage also provisions IOPS

THE GOOGLE WAY Persistent Disk Google Compute Baseline + capacity-based IOPS model Can resize volumes live IOPS and throughput limits Instance limits Volume limits Media types Standard Persistent Disk - Spinning Media (0.75r/1.5w IOPS/GB) SSD Persistent Disk - All Flash (30 IOPS/GB)

WHY We can build you a private cloud like the big boys AWS EBS provides a deterministic number of IOPS based on the capacity of the provisioned volume with Provisioned IOPS. Similarly, the newly announced throughput optimized volumes provide deterministic throughput based on the capacity of the provisioned volume. Flatten two different scaling factors into a single dimension (GB / IOPS) Simplifies capacity planning for the operator Operator increases the available capacity by adding more to distributed backend more nodes, more IOPS, fixed increase in capacity Lessens the user s learning curve for QoS Meet users expectations defined by The Cloud

Block Storage QoS in OpenStack

OPENSTACK FRAMEWORK TRENDS What are users running on their clouds?

OPENSTACK CINDER DRIVER TRENDS Which backend are used in production?

BLOCK STORAGE WITH OPENSTACK The Road to Block Storage QoS in Cinder Generic QoS at hypervisor was first added in Grizzly Cinder and Nova QoS support was added in Havana Stable API starting Icehouse and ecosystem drivers velocity Horizon support was added in Juno Introduction of Volume Types, classes of block storage with different performance profiles Volume Types configured by OpenStack Administrator, static QoS values per type.

BLOCK STORAGE WITH OPENSTACK Block Storage QoS in Cinder - Ocata release Frontend: Policy applied to Compute, 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: Policy applied to Vendor specific fields HP 3PAR (IOPS,: min, max; BWS: min, max, latency, priority) Solidfire (IOPS: min, max, burst) NetApp (QoS Policy Group) through extra specs Huawei (priority) defined through extra specs Cinder QoS (throughput based) Gold {vendor:disk_type=ssd, vendor_thick_provisioned=true} {} Silver {} {total_iops_s ec=500} Bronze {volume_backend_name=lvm} {total_iops_s ec=100}

BLOCK STORAGE WITH OPENSTACK Block Storage QoS in Cinder - Ocata release Deployers may optionally define the variable cinder_qos_specs to create qos specs. cinder volume-types may be assigned to a qos spec by defining the key cinder_volume_types in the desired qos spec dictionary.

BLOCK STORAGE WITH OPENSTACK Block Storage QoS in Cinder - Ocata release QoS values in Cinder currently are able to be set to static values. Typically exposed in OpenStack Block Storage API in the following manner: miniops - The minimum number of IOPS guaranteed for this volume. (Default = 100) maxiops - The maximum number of IOPS allowed for this volume. (Default = 15,000) burstiops - The maximum number of IOPS allowed over a short period of time. (Default = 15,000) scalemin - The amount to scale the miniops by for every 1GB of additional volume size. scalemax - The amount to scale the maxiops by for every 1GB of additional volume size. scaleburst - The amount to scale the burstiops by for every 1GB of additional volume size.

BLOCK STORAGE WITH OPENSTACK Block Storage QoS in Cinder - Ocata release Examples: SolidFire driver in Ocata can recognize 4 QoS spec keys to allow specify settings which are scaled by the size of the volume: ScaledIOPS a flag used to tell the driver to look for scalemin, scalemax and scaleburst which provide the scaling factor from the minimum values specified by the previous QoS keys ( miniops, maxiops, burstiops ). ScaleIO driver in Ocata QoS keys examples: maxiopspergb and maxbwspergb used. maxbwspergb - the QoS I/O bandwidth rate limit in KBs. The limit will be calculated by the specified value multiplied by the volume size.

QoS values in Cinder currently are able to be set to static values What if there was a way to derive QoS limit values based on volume capacities rather than static values.

Capacity Derived IOPs New in Pike release A new mechanism to provision IOPS on a per-volume basis with the IOPS values adjusted based on the volume's size (IOPS per GB) Allowing OpenStack Operators to cap "usage" of their system and to define limits based on space usage as well as throughput, in order to bill customers and not exceed limits of the backend. Associating IOPS and size allows you to provide tiers such as: Capacity Based QoS (Generic) Gold 1000 GB at 10000 IOPS per GB Silver 1000 GB at 5000 IOPS per GB Bronze 500 GB at 5000 IOPS per GB

Capacity Derived IOPs Cinder QoS API - New Keys Allow creation of qos_keys: read_iops_sec_per_gb write_iops_sec_per_gb total_iops_sec_per_gb These functions are the same as our current <x>_iops_sec keys, except they are scaled by the volume size. QoS Spec Key QoS Spec Value 2 GB Volume 5 GB Volume Read IOPS / GB 10000 20000 IOPS 50000 IOPS Write IOPS / GB 5000 10000 IOPS 25000 IOPS

THEORY OF STORAGE QOS

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means Linear

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means Linear Sub-linear

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means Contention + Coherency Delay

UNIVERSAL SCALABILITY MODEL SCALE - I do not think it means what you think it means Contention + Coherency Delay This is normal, everything is fine.

DISK BASED CLUSTERS Higher coherency delay due to seeking Diminishing returns from contention Negative returns from incoherency

SSD BASED CLUSTERS Lower coherency delay, no seeks Diminishing returns from contention Negative returns from incoherency (marginal)

SCALING DIMENSIONS What scales? Increase height of each block with faster media - IOPS limit Increase number of blocks by adding more OSD hosts - Volume quota Volume quota less relevant for SSDs, low coherency delay

CAPACITY BASED LIMITS Brought to you by low latency media! More small volumes with low iops Less large volumes with high iops Mix and match

RESULTS Disaggregated Volume Scalability (librbdfio 16KB randrw)

RESULTS Hyperconverged Volume Scalability (librbdfio 16KB randrw)

RESULTS Hyperconverged Volume Scalability (kvmrbdfio 16KB randrw)

SUMMARY OF RESULTS What does it mean to me? OSD - 7.2k RPM, writeback cache, SSD journal One volume per OSD 100 IOPS per volume Flash - 500 IOPS per OSD GHz - Intel P3700

The future

CEPH + OPENSTACK QOS Where are we, where are we going? Magnetic style block volumes - fixed IOPS per volume* Provisioned IOPS style block volumes - scaled IOPS per GB* General purpose SSD - work in progress, distributed QoS implementation required * with capacity planning

OPENSTACK TOOLS AND GAPS Monitoring Telemetry - via Gnocchi plugin for Grafana dashboard QEMU There's an interface in QEMU to request block stats ("info blockstats" command), also exposed via libvirt but not yet in OpenStack Ceph - RBD client stats socket Event triggering automation (see AWS CloudWatch example) Elasticity Change volume types limits You can make the volumes larger (hot-grow) but not shrink them Dynamically re-configurable at runtime

Q&A

THANK YOU plus.google.com/+redhat facebook.com/redhatinc linkedin.com/company/red-hat @0xF2 @SeanCohen_RH youtube.com/user/redhatvideos