SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
OpenStack  and  Ceph    
The  winning  pair
OPENSTACK  SUMMIT  ATLANTA  |  MAY  2014
WHOAMI
SébasHen  Han
💥  Cloud  Architect
💥  Daily  job  focused  on  Ceph  /  OpenStack  /  Performance
💥  Blogger


Personal  blog:  hTp://www.sebasHen-­‐han.fr/blog/
Company  blog:  hTp://techs.enovance.com/
Ceph?	
  
Let’s  start  with  the  bad  news
Let’s  start  with  the  bad  news
Once  again  COW  clones  didn’t  make  it  in  Hme
•  libvirt_image_type=rbd appeared  in  Havana
•  In  Icehouse,  COW  clones  code  went  through  feature  freeze  but  was  rejected
•  Dmitry  Borodaenko’s  branch  contains  the  COW  clones  code:  
hTps://github.com/angdraug/nova/commits/rbd-­‐ephemeral-­‐clone
•  Debian  and  Ubuntu  packages  already  made  available  by  eNovance  in  the  official  Debian  
mirrors  for  Sid  and  Jessie.
•  For  Wheezy,  Precise  and  Trusty  look  at:
hTp://cloud.pkgs.enovance.com/{wheezy,precise,trusty}-­‐icehouse
Icehouse	
  addi/ons	
  
What’s  new?
Icehouse  addiHons
Icehouse  is  limited  in  terms  of  features  but…

•  Clone  non-­‐raw  images  in  Glance  RBD  backend
•  Ceph  doesn’t  support  QCOW2  for  hosHng  virtual  machine  disk
•  Always  convert  your  images  into  RAW  format  before  uploading  them  into  Glance
•  Nova  and  Cinder  automaHcally  convert  non-­‐raw  images  on  the  fly
•  Useful  when  creaHng  a  volume  from  an  image  or  while  using  Nova  ephemeral
•  Nova  ephemeral  backend  dedicated  pool  and  user
•  Prior  Icehouse  we  had  to  use  client.admin  and  it  was  a  huge  security  hole
•  Fine  grained  authenHcaHon  and  access  control
•  The  hypervisor  only  accesses  a  specific  pool  with  a  right-­‐limited  user
Ceph  in  the  OpenStack  ecosystem
Unify  all  the  things!
Glance	
  
Since	
  Diablo	
  
Cinder	
  
Since	
  Essex	
  
Nova	
  
Since	
  Havana	
  
Swi=	
  (new!)	
  
Since	
  Icehouse	
  
•  ConHnuous  effort  support
•  Major  feature  during  each  release
•  Swii  was  the  missing  piece
•  Since  Icehouse,  we  closed  the  
loop

You  can  do  everything  with  
Ceph  as  a  storage  backend!
RADOS  as  a  backend  for  Swii
Gejng  into  Swii
•  Swii  has  a  mulH-­‐backend  funcHonality:
•  Local  Storage
•  GlusterFS
•  Ceph  RADOS
•  You  won’t  find  it  into  Swii  core  (Swii’s  policy)
•  Just  like  GlusterFS,  you  can  get  it  from  StackForge
RADOS  as  a  backend  for  Swii
How  does  it  work?
•  Keep  using  the  Swii  API  while  taking  advantage  of  Ceph
•  API  funcHons  and  middlewares  are  sHll  usable
•  ReplicaHon  is  handled  by  Ceph  and  not  by  the  Swii  object-­‐server  anymore
•  Basically  Swii  is  configured  with  a  single  replica
RADOS  as  a  backend  for  Swii
Comparaison  table  local  storage  VS  Ceph
PROS	
   CONS	
  
Re-­‐use	
  exis/ng	
  Ceph	
  cluster	
   You	
  need	
  to	
  know	
  Ceph?	
  
Distribu/on	
  support	
  and	
  velocity	
   Performance	
  
Erasure	
  coding	
  
Atomic	
  object	
  store	
  
Single	
  storage	
  layer	
  and	
  flexibility	
  with	
  CRUSH	
  
One	
  technology	
  to	
  maintain	
  
RADOS  as  a  backend  for  Swii
State  of  the  implementaHon
•  100%  unit  tests  coverage
•  100%  funcHonal  tests  coverage
•  ProducHon  ready

Use  cases:
1.  SwiiCeph  cluster  where  Ceph  handles  the  replicaHon  (one  locaHon)
2.  SwiiCeph  cluster  where  Swii  handles  the  replicaHon  (mulHple  locaHons)
3.  TransiHon  from  Swii  to  Ceph
RADOS  as  a  backend  for  Swii
LiTle  reminder
CHARASTERISTIC	
   SWIFT	
  LOCAL	
  
STORAGE	
  
CEPH	
  STANDALONE	
  
Atomic	
   NO	
   YES	
  
Write	
  method	
   Buffered	
  IO	
   O_DIRECT	
  
Object	
  placement	
   Proxy	
   CRUSH	
  
Acknowlegment	
  (for	
  3	
  
replicas)	
  
Waits	
  for	
  2	
  acks	
   Waits	
  for	
  all	
  the	
  acks	
  
RADOS  as  a  backend  for  Swii
Benchmark  plaporm  and  swii-­‐proxy  as  a  boTleneck
•  Debian  Wheezy
•  Kernel  3.12
•  Ceph  0.72.2
•  30  OSDs  –  10K  RPM
•  1  GB  LACP  network
•  Tools:  swii-­‐bench
•  Replica  count:  3
•  Swii  temp  auth
•  Concurrency  32
•  10  000  PUTs  &  GETs
•  The  proxy  wasn’t  able  to  deliver  all  the  plaporm  capability
•    Not  able  to  saturate  the  storage  as  well
•  400  PUT  requests/sec  (4k  object)
•  500  GET  requests/sec  (4k  object)
RADOS  as  a  backend  for  Swii
Introducing  another  benchmark  tool
•  This  test  sends  requests  directly  to  an  object-­‐server  without  a  proxy  in-­‐between
•  So  we  used  Ceph  with  a  single  replica
WRITE	
  METHOD	
   4K	
  IOPS	
  
NATIVE	
  DISK	
   471	
  
CEPH	
   294	
  
SWIFT	
  DEFAULT	
   810	
  
SWIFT	
  O_DIRECT	
   299	
  
RADOS  as  a  backend  for  Swii
How  can  I  test?  Use  Ansible  and  make  the  cows  fly
•  Ansible  repo  here:  hTps://github.com/enovance/swiiceph-­‐ansible
•  It  deploys:
•  Ceph  monitor
•  Ceph  OSDs
•  Swii  proxy
•  Swii  object  servers
$ vagrant up!

Standalone  version  of  the  RADOS  code  is  almost  available  on  StackForge  in  this  mean  
Hme  go  to  hTps://github.com/enovance/swii-­‐ceph-­‐backend
RADOS  as  a  backend  for  Swii
Architecture  single  datacenter  
•  Keepalived  manages  a  VIP
•  HAProxy  loadbalances  requests  
among  swii-­‐proxies
•  Ceph  handles  the  replicaHon
•  ceph-­‐osd  and  object-­‐server  
collocaHon  (possible  local  hit)
RADOS  as  a  backend  for  Swii
Architecture  mulH-­‐datacenter  
•  DNS  magic  (geoipdns/bind)
•  Keepalived  manages  a  VIP
•  HAProxy  loadbalances  request  
among  swii-­‐proxies
•  Swii  handles  the  replicaHon
•  3  disHnct  Ceph  clusters
•  1  replica  in  Ceph  stored  3  Hmes  
by  Swii
•  Zones  and  affiniHes  from  Swii
RADOS  as  a  backend  for  Swii
Issues  and  caveats  of  Swii  itself
•  Swii  Accounts  and  DBs  sHll  need  to  be  replicated
•  /srv/node/sdb1/  needed
•  Setup  Rsync
•  Patch  is  under  review  to  support  mulH-­‐backend  store
•  hTps://review.openstack.org/#/c/47713/
•  Eventually  Accounts  and  DBs  will  live  into  Ceph
Oh	
  lord!	
  
DevStack  Ceph
DevStack  Ceph
Refactor  DevStack  and  you’ll  get  your  patch  merged
•  Available  here:  hTps://review.openstack.org/#/c/65113/
•  Ubuntu  14.04  ready
•  It  configures:
•  Glance
•  Cinder
•  Cinder  backup
DevStack  refactoring  session  this  Friday  at  4:50pm!  (B  301)
Juno,	
  here	
  we	
  are	
  
Roadmap
Juno’s  expectaHons
Let’s  be  realisHc
•  Get  COW  clones  into  stable  (Dmitry  Borodaenko)
•  Validate  features  like  live-­‐migraHon  and  instance  evacuaHon
•  Use  RBD  snapshot  instead  of  qemu-­‐img  (Vladik  Romanovsky)
•  Efficient  since  we  don’t  need  to  snapshot,  get  a  flat  file  and  upload  it  into  Ceph
•  DevStack  Ceph  (SébasHen  Han)
•  Ease  the  adopHon  for  developers
•  ConHnuous  integraHon  system  (SébasHen  Han)
•  Having  an  infrastructure  for  tesHng  RBD  will  help  us  to  get  patch  easily  merged
•  Volume  migraHon  support  with  volume  retype  (Josh  Durgin)
•  Move  block  from  Ceph  to  other  backend  and  the  other  way  around
Merci  !

Más contenido relacionado

La actualidad más candente

A Performance Comparison of Container-based Virtualization Systems for MapRed...
A Performance Comparison of Container-based Virtualization Systems for MapRed...A Performance Comparison of Container-based Virtualization Systems for MapRed...
A Performance Comparison of Container-based Virtualization Systems for MapRed...
Marcelo Veiga Neves
 
Shipping python project by docker
Shipping python project by dockerShipping python project by docker
Shipping python project by docker
Wei-Ting Kuo
 
Handling Redis failover with ZooKeeper
Handling Redis failover with ZooKeeperHandling Redis failover with ZooKeeper
Handling Redis failover with ZooKeeper
ryanlecompte
 

La actualidad más candente (20)

Storage 101: Rook and Ceph - Open Infrastructure Denver 2019
Storage 101: Rook and Ceph - Open Infrastructure Denver 2019Storage 101: Rook and Ceph - Open Infrastructure Denver 2019
Storage 101: Rook and Ceph - Open Infrastructure Denver 2019
 
Flying Circus Ceph Case Study (CEPH Usergroup Berlin)
Flying Circus Ceph Case Study (CEPH Usergroup Berlin)Flying Circus Ceph Case Study (CEPH Usergroup Berlin)
Flying Circus Ceph Case Study (CEPH Usergroup Berlin)
 
Ceph Performance and Optimization - Ceph Day Frankfurt
Ceph Performance and Optimization - Ceph Day Frankfurt Ceph Performance and Optimization - Ceph Day Frankfurt
Ceph Performance and Optimization - Ceph Day Frankfurt
 
Making Ceph awesome on Kubernetes with Rook - Bassam Tabbara
Making Ceph awesome on Kubernetes with Rook - Bassam TabbaraMaking Ceph awesome on Kubernetes with Rook - Bassam Tabbara
Making Ceph awesome on Kubernetes with Rook - Bassam Tabbara
 
London HUG 12/4
London HUG 12/4London HUG 12/4
London HUG 12/4
 
A Performance Comparison of Container-based Virtualization Systems for MapRed...
A Performance Comparison of Container-based Virtualization Systems for MapRed...A Performance Comparison of Container-based Virtualization Systems for MapRed...
A Performance Comparison of Container-based Virtualization Systems for MapRed...
 
Shipping python project by docker
Shipping python project by dockerShipping python project by docker
Shipping python project by docker
 
Using Rook to Manage Kubernetes Storage with Ceph
Using Rook to Manage Kubernetes Storage with CephUsing Rook to Manage Kubernetes Storage with Ceph
Using Rook to Manage Kubernetes Storage with Ceph
 
Developing Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containersDeveloping Java based microservices ready for the world of containers
Developing Java based microservices ready for the world of containers
 
No Docker? No Problem: Automating installation and config with Ansible
No Docker? No Problem: Automating installation and config with AnsibleNo Docker? No Problem: Automating installation and config with Ansible
No Docker? No Problem: Automating installation and config with Ansible
 
Apache Bigtop: a crash course in deploying a Hadoop bigdata management platform
Apache Bigtop: a crash course in deploying a Hadoop bigdata management platformApache Bigtop: a crash course in deploying a Hadoop bigdata management platform
Apache Bigtop: a crash course in deploying a Hadoop bigdata management platform
 
Introducing Container Technology to TSUBAME3.0 Supercomputer
Introducing Container Technology to TSUBAME3.0 SupercomputerIntroducing Container Technology to TSUBAME3.0 Supercomputer
Introducing Container Technology to TSUBAME3.0 Supercomputer
 
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdevApache OpenWhiskで実現するプライベートFaaS環境 #tjdev
Apache OpenWhiskで実現するプライベートFaaS環境 #tjdev
 
Handling Redis failover with ZooKeeper
Handling Redis failover with ZooKeeperHandling Redis failover with ZooKeeper
Handling Redis failover with ZooKeeper
 
Steamlining your puppet development workflow
Steamlining your puppet development workflowSteamlining your puppet development workflow
Steamlining your puppet development workflow
 
K8s storage-glusterfs-20180210
K8s storage-glusterfs-20180210K8s storage-glusterfs-20180210
K8s storage-glusterfs-20180210
 
Ceph Day London 2014 - Best Practices for Ceph-powered Implementations of Sto...
Ceph Day London 2014 - Best Practices for Ceph-powered Implementations of Sto...Ceph Day London 2014 - Best Practices for Ceph-powered Implementations of Sto...
Ceph Day London 2014 - Best Practices for Ceph-powered Implementations of Sto...
 
Chef for OpenStack: Grizzly Roadmap
Chef for OpenStack: Grizzly RoadmapChef for OpenStack: Grizzly Roadmap
Chef for OpenStack: Grizzly Roadmap
 
Empowering developers to deploy their own data stores
Empowering developers to deploy their own data storesEmpowering developers to deploy their own data stores
Empowering developers to deploy their own data stores
 
Why learn jenkins via nomad_ci (nomad/consul/docker/jenkins) 
Why learn jenkins via nomad_ci (nomad/consul/docker/jenkins) Why learn jenkins via nomad_ci (nomad/consul/docker/jenkins) 
Why learn jenkins via nomad_ci (nomad/consul/docker/jenkins) 
 

Similar a OpenStack and Ceph: the Winning Pair

201304 chef for open stack overview
201304 chef for open stack overview201304 chef for open stack overview
201304 chef for open stack overview
OpenStack Foundation
 
201304 chef for open stack overview
201304 chef for open stack overview201304 chef for open stack overview
201304 chef for open stack overview
OpenStack Foundation
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
Igor Anishchenko
 

Similar a OpenStack and Ceph: the Winning Pair (20)

Ceph Goes on Online at Qihoo 360 - Xuehan Xu
Ceph Goes on Online at Qihoo 360 - Xuehan XuCeph Goes on Online at Qihoo 360 - Xuehan Xu
Ceph Goes on Online at Qihoo 360 - Xuehan Xu
 
Webinar - Getting Started With Ceph
Webinar - Getting Started With CephWebinar - Getting Started With Ceph
Webinar - Getting Started With Ceph
 
Leonid Vasilyev "Building, deploying and running production code at Dropbox"
Leonid Vasilyev  "Building, deploying and running production code at Dropbox"Leonid Vasilyev  "Building, deploying and running production code at Dropbox"
Leonid Vasilyev "Building, deploying and running production code at Dropbox"
 
Wicked Easy Ceph Block Storage & OpenStack Deployment with Crowbar
Wicked Easy Ceph Block Storage & OpenStack Deployment with CrowbarWicked Easy Ceph Block Storage & OpenStack Deployment with Crowbar
Wicked Easy Ceph Block Storage & OpenStack Deployment with Crowbar
 
Workflow Engines for Hadoop
Workflow Engines for HadoopWorkflow Engines for Hadoop
Workflow Engines for Hadoop
 
Ceph, Xen, and CloudStack: Semper Melior
Ceph, Xen, and CloudStack: Semper MeliorCeph, Xen, and CloudStack: Semper Melior
Ceph, Xen, and CloudStack: Semper Melior
 
OpenStack and Windows
OpenStack and WindowsOpenStack and Windows
OpenStack and Windows
 
[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...
[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...
[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...
 
Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014
 
Building Portable Applications with Kubernetes
Building Portable Applications with KubernetesBuilding Portable Applications with Kubernetes
Building Portable Applications with Kubernetes
 
Velocity 2011 Chef OpenStack Workshop
Velocity 2011 Chef OpenStack WorkshopVelocity 2011 Chef OpenStack Workshop
Velocity 2011 Chef OpenStack Workshop
 
201304 chef for open stack overview
201304 chef for open stack overview201304 chef for open stack overview
201304 chef for open stack overview
 
201304 chef for open stack overview
201304 chef for open stack overview201304 chef for open stack overview
201304 chef for open stack overview
 
Chef for OpenStack: OpenStack Spring Summit 2013
Chef for OpenStack: OpenStack Spring Summit 2013Chef for OpenStack: OpenStack Spring Summit 2013
Chef for OpenStack: OpenStack Spring Summit 2013
 
Cloud Foundry 百日行 振り返り
Cloud Foundry 百日行 振り返りCloud Foundry 百日行 振り返り
Cloud Foundry 百日行 振り返り
 
Webinar - DreamObjects/Ceph Case Study
Webinar - DreamObjects/Ceph Case StudyWebinar - DreamObjects/Ceph Case Study
Webinar - DreamObjects/Ceph Case Study
 
Running OpenStack on Amazon AWS, Alex Fishman
Running OpenStack on Amazon AWS, Alex FishmanRunning OpenStack on Amazon AWS, Alex Fishman
Running OpenStack on Amazon AWS, Alex Fishman
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
 
dodai_grizzly.pdf
dodai_grizzly.pdfdodai_grizzly.pdf
dodai_grizzly.pdf
 

Más de Red_Hat_Storage

Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...
Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...
Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...
Red_Hat_Storage
 

Más de Red_Hat_Storage (20)

Red Hat Storage Day Dallas - Storage for OpenShift Containers
Red Hat Storage Day Dallas - Storage for OpenShift Containers Red Hat Storage Day Dallas - Storage for OpenShift Containers
Red Hat Storage Day Dallas - Storage for OpenShift Containers
 
Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...
Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...
Red Hat Storage Day Dallas - Red Hat Ceph Storage Acceleration Utilizing Flas...
 
Red Hat Storage Day Dallas - Defiance of the Appliance
Red Hat Storage Day Dallas - Defiance of the Appliance Red Hat Storage Day Dallas - Defiance of the Appliance
Red Hat Storage Day Dallas - Defiance of the Appliance
 
Red Hat Storage Day Dallas - Gluster Storage in Containerized Application
Red Hat Storage Day Dallas - Gluster Storage in Containerized Application Red Hat Storage Day Dallas - Gluster Storage in Containerized Application
Red Hat Storage Day Dallas - Gluster Storage in Containerized Application
 
Red Hat Storage Day Dallas - Why Software-defined Storage Matters
Red Hat Storage Day Dallas - Why Software-defined Storage MattersRed Hat Storage Day Dallas - Why Software-defined Storage Matters
Red Hat Storage Day Dallas - Why Software-defined Storage Matters
 
Red Hat Storage Day Boston - Why Software-defined Storage Matters
Red Hat Storage Day Boston - Why Software-defined Storage MattersRed Hat Storage Day Boston - Why Software-defined Storage Matters
Red Hat Storage Day Boston - Why Software-defined Storage Matters
 
Red Hat Storage Day Boston - Supermicro Super Storage
Red Hat Storage Day Boston - Supermicro Super StorageRed Hat Storage Day Boston - Supermicro Super Storage
Red Hat Storage Day Boston - Supermicro Super Storage
 
Red Hat Storage Day Boston - OpenStack + Ceph Storage
Red Hat Storage Day Boston - OpenStack + Ceph StorageRed Hat Storage Day Boston - OpenStack + Ceph Storage
Red Hat Storage Day Boston - OpenStack + Ceph Storage
 
Red Hat Ceph Storage Acceleration Utilizing Flash Technology
Red Hat Ceph Storage Acceleration Utilizing Flash Technology Red Hat Ceph Storage Acceleration Utilizing Flash Technology
Red Hat Ceph Storage Acceleration Utilizing Flash Technology
 
Red Hat Storage Day Boston - Persistent Storage for Containers
Red Hat Storage Day Boston - Persistent Storage for Containers Red Hat Storage Day Boston - Persistent Storage for Containers
Red Hat Storage Day Boston - Persistent Storage for Containers
 
Red Hat Storage Day Boston - Red Hat Gluster Storage vs. Traditional Storage ...
Red Hat Storage Day Boston - Red Hat Gluster Storage vs. Traditional Storage ...Red Hat Storage Day Boston - Red Hat Gluster Storage vs. Traditional Storage ...
Red Hat Storage Day Boston - Red Hat Gluster Storage vs. Traditional Storage ...
 
Red Hat Storage Day New York - Red Hat Gluster Storage: Historical Tick Data ...
Red Hat Storage Day New York - Red Hat Gluster Storage: Historical Tick Data ...Red Hat Storage Day New York - Red Hat Gluster Storage: Historical Tick Data ...
Red Hat Storage Day New York - Red Hat Gluster Storage: Historical Tick Data ...
 
Red Hat Storage Day New York - QCT: Avoid the mess, deploy with a validated s...
Red Hat Storage Day New York - QCT: Avoid the mess, deploy with a validated s...Red Hat Storage Day New York - QCT: Avoid the mess, deploy with a validated s...
Red Hat Storage Day New York - QCT: Avoid the mess, deploy with a validated s...
 
Red Hat Storage Day - When the Ceph Hits the Fan
Red Hat Storage Day -  When the Ceph Hits the FanRed Hat Storage Day -  When the Ceph Hits the Fan
Red Hat Storage Day - When the Ceph Hits the Fan
 
Red Hat Storage Day New York - Penguin Computing Spotlight: Delivering Open S...
Red Hat Storage Day New York - Penguin Computing Spotlight: Delivering Open S...Red Hat Storage Day New York - Penguin Computing Spotlight: Delivering Open S...
Red Hat Storage Day New York - Penguin Computing Spotlight: Delivering Open S...
 
Red Hat Storage Day New York - Intel Unlocking Big Data Infrastructure Effici...
Red Hat Storage Day New York - Intel Unlocking Big Data Infrastructure Effici...Red Hat Storage Day New York - Intel Unlocking Big Data Infrastructure Effici...
Red Hat Storage Day New York - Intel Unlocking Big Data Infrastructure Effici...
 
Red Hat Storage Day New York - New Reference Architectures
Red Hat Storage Day New York - New Reference ArchitecturesRed Hat Storage Day New York - New Reference Architectures
Red Hat Storage Day New York - New Reference Architectures
 
Red Hat Storage Day New York - Persistent Storage for Containers
Red Hat Storage Day New York - Persistent Storage for ContainersRed Hat Storage Day New York - Persistent Storage for Containers
Red Hat Storage Day New York - Persistent Storage for Containers
 
Red Hat Storage Day New York -Performance Intensive Workloads with Samsung NV...
Red Hat Storage Day New York -Performance Intensive Workloads with Samsung NV...Red Hat Storage Day New York -Performance Intensive Workloads with Samsung NV...
Red Hat Storage Day New York -Performance Intensive Workloads with Samsung NV...
 
Red Hat Storage Day New York - Welcome Remarks
Red Hat Storage Day New York - Welcome Remarks Red Hat Storage Day New York - Welcome Remarks
Red Hat Storage Day New York - Welcome Remarks
 

Último

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

OpenStack and Ceph: the Winning Pair

  • 1. OpenStack  and  Ceph     The  winning  pair OPENSTACK  SUMMIT  ATLANTA  |  MAY  2014
  • 2. WHOAMI SébasHen  Han 💥  Cloud  Architect 💥  Daily  job  focused  on  Ceph  /  OpenStack  /  Performance 💥  Blogger Personal  blog:  hTp://www.sebasHen-­‐han.fr/blog/ Company  blog:  hTp://techs.enovance.com/
  • 4. Let’s  start  with  the  bad  news
  • 5. Let’s  start  with  the  bad  news Once  again  COW  clones  didn’t  make  it  in  Hme •  libvirt_image_type=rbd appeared  in  Havana •  In  Icehouse,  COW  clones  code  went  through  feature  freeze  but  was  rejected •  Dmitry  Borodaenko’s  branch  contains  the  COW  clones  code:   hTps://github.com/angdraug/nova/commits/rbd-­‐ephemeral-­‐clone •  Debian  and  Ubuntu  packages  already  made  available  by  eNovance  in  the  official  Debian   mirrors  for  Sid  and  Jessie. •  For  Wheezy,  Precise  and  Trusty  look  at: hTp://cloud.pkgs.enovance.com/{wheezy,precise,trusty}-­‐icehouse
  • 7. Icehouse  addiHons Icehouse  is  limited  in  terms  of  features  but… •  Clone  non-­‐raw  images  in  Glance  RBD  backend •  Ceph  doesn’t  support  QCOW2  for  hosHng  virtual  machine  disk •  Always  convert  your  images  into  RAW  format  before  uploading  them  into  Glance •  Nova  and  Cinder  automaHcally  convert  non-­‐raw  images  on  the  fly •  Useful  when  creaHng  a  volume  from  an  image  or  while  using  Nova  ephemeral •  Nova  ephemeral  backend  dedicated  pool  and  user •  Prior  Icehouse  we  had  to  use  client.admin  and  it  was  a  huge  security  hole •  Fine  grained  authenHcaHon  and  access  control •  The  hypervisor  only  accesses  a  specific  pool  with  a  right-­‐limited  user
  • 8. Ceph  in  the  OpenStack  ecosystem Unify  all  the  things! Glance   Since  Diablo   Cinder   Since  Essex   Nova   Since  Havana   Swi=  (new!)   Since  Icehouse   •  ConHnuous  effort  support •  Major  feature  during  each  release •  Swii  was  the  missing  piece •  Since  Icehouse,  we  closed  the   loop You  can  do  everything  with   Ceph  as  a  storage  backend!
  • 9. RADOS  as  a  backend  for  Swii Gejng  into  Swii •  Swii  has  a  mulH-­‐backend  funcHonality: •  Local  Storage •  GlusterFS •  Ceph  RADOS •  You  won’t  find  it  into  Swii  core  (Swii’s  policy) •  Just  like  GlusterFS,  you  can  get  it  from  StackForge
  • 10. RADOS  as  a  backend  for  Swii How  does  it  work? •  Keep  using  the  Swii  API  while  taking  advantage  of  Ceph •  API  funcHons  and  middlewares  are  sHll  usable •  ReplicaHon  is  handled  by  Ceph  and  not  by  the  Swii  object-­‐server  anymore •  Basically  Swii  is  configured  with  a  single  replica
  • 11. RADOS  as  a  backend  for  Swii Comparaison  table  local  storage  VS  Ceph PROS   CONS   Re-­‐use  exis/ng  Ceph  cluster   You  need  to  know  Ceph?   Distribu/on  support  and  velocity   Performance   Erasure  coding   Atomic  object  store   Single  storage  layer  and  flexibility  with  CRUSH   One  technology  to  maintain  
  • 12. RADOS  as  a  backend  for  Swii State  of  the  implementaHon •  100%  unit  tests  coverage •  100%  funcHonal  tests  coverage •  ProducHon  ready Use  cases: 1.  SwiiCeph  cluster  where  Ceph  handles  the  replicaHon  (one  locaHon) 2.  SwiiCeph  cluster  where  Swii  handles  the  replicaHon  (mulHple  locaHons) 3.  TransiHon  from  Swii  to  Ceph
  • 13. RADOS  as  a  backend  for  Swii LiTle  reminder CHARASTERISTIC   SWIFT  LOCAL   STORAGE   CEPH  STANDALONE   Atomic   NO   YES   Write  method   Buffered  IO   O_DIRECT   Object  placement   Proxy   CRUSH   Acknowlegment  (for  3   replicas)   Waits  for  2  acks   Waits  for  all  the  acks  
  • 14. RADOS  as  a  backend  for  Swii Benchmark  plaporm  and  swii-­‐proxy  as  a  boTleneck •  Debian  Wheezy •  Kernel  3.12 •  Ceph  0.72.2 •  30  OSDs  –  10K  RPM •  1  GB  LACP  network •  Tools:  swii-­‐bench •  Replica  count:  3 •  Swii  temp  auth •  Concurrency  32 •  10  000  PUTs  &  GETs •  The  proxy  wasn’t  able  to  deliver  all  the  plaporm  capability •   Not  able  to  saturate  the  storage  as  well •  400  PUT  requests/sec  (4k  object) •  500  GET  requests/sec  (4k  object)
  • 15. RADOS  as  a  backend  for  Swii Introducing  another  benchmark  tool •  This  test  sends  requests  directly  to  an  object-­‐server  without  a  proxy  in-­‐between •  So  we  used  Ceph  with  a  single  replica WRITE  METHOD   4K  IOPS   NATIVE  DISK   471   CEPH   294   SWIFT  DEFAULT   810   SWIFT  O_DIRECT   299  
  • 16. RADOS  as  a  backend  for  Swii How  can  I  test?  Use  Ansible  and  make  the  cows  fly •  Ansible  repo  here:  hTps://github.com/enovance/swiiceph-­‐ansible •  It  deploys: •  Ceph  monitor •  Ceph  OSDs •  Swii  proxy •  Swii  object  servers $ vagrant up! Standalone  version  of  the  RADOS  code  is  almost  available  on  StackForge  in  this  mean   Hme  go  to  hTps://github.com/enovance/swii-­‐ceph-­‐backend
  • 17. RADOS  as  a  backend  for  Swii Architecture  single  datacenter   •  Keepalived  manages  a  VIP •  HAProxy  loadbalances  requests   among  swii-­‐proxies •  Ceph  handles  the  replicaHon •  ceph-­‐osd  and  object-­‐server   collocaHon  (possible  local  hit)
  • 18. RADOS  as  a  backend  for  Swii Architecture  mulH-­‐datacenter   •  DNS  magic  (geoipdns/bind) •  Keepalived  manages  a  VIP •  HAProxy  loadbalances  request   among  swii-­‐proxies •  Swii  handles  the  replicaHon •  3  disHnct  Ceph  clusters •  1  replica  in  Ceph  stored  3  Hmes   by  Swii •  Zones  and  affiniHes  from  Swii
  • 19. RADOS  as  a  backend  for  Swii Issues  and  caveats  of  Swii  itself •  Swii  Accounts  and  DBs  sHll  need  to  be  replicated •  /srv/node/sdb1/  needed •  Setup  Rsync •  Patch  is  under  review  to  support  mulH-­‐backend  store •  hTps://review.openstack.org/#/c/47713/ •  Eventually  Accounts  and  DBs  will  live  into  Ceph
  • 21. DevStack  Ceph Refactor  DevStack  and  you’ll  get  your  patch  merged •  Available  here:  hTps://review.openstack.org/#/c/65113/ •  Ubuntu  14.04  ready •  It  configures: •  Glance •  Cinder •  Cinder  backup DevStack  refactoring  session  this  Friday  at  4:50pm!  (B  301)
  • 22. Juno,  here  we  are   Roadmap
  • 23. Juno’s  expectaHons Let’s  be  realisHc •  Get  COW  clones  into  stable  (Dmitry  Borodaenko) •  Validate  features  like  live-­‐migraHon  and  instance  evacuaHon •  Use  RBD  snapshot  instead  of  qemu-­‐img  (Vladik  Romanovsky) •  Efficient  since  we  don’t  need  to  snapshot,  get  a  flat  file  and  upload  it  into  Ceph •  DevStack  Ceph  (SébasHen  Han) •  Ease  the  adopHon  for  developers •  ConHnuous  integraHon  system  (SébasHen  Han) •  Having  an  infrastructure  for  tesHng  RBD  will  help  us  to  get  patch  easily  merged •  Volume  migraHon  support  with  volume  retype  (Josh  Durgin) •  Move  block  from  Ceph  to  other  backend  and  the  other  way  around