Ceph storage with Rook Running Ceph on Kubernetes Alexander Trost, - - PowerPoint PPT Presentation

ceph storage with rook
SMART_READER_LITE
LIVE PREVIEW

Ceph storage with Rook Running Ceph on Kubernetes Alexander Trost, - - PowerPoint PPT Presentation

Ceph storage with Rook Running Ceph on Kubernetes Alexander Trost, Rook Maintainer and DevOps Engineer at @Cloudibility Agenda What is Rook? Architecture of Rook Kubernetes Native Integration What can Rook help you do


slide-1
SLIDE 1

Running Ceph on Kubernetes Alexander Trost, Rook Maintainer and DevOps Engineer at @Cloudibility

Ceph storage with Rook

slide-2
SLIDE 2

2

Agenda

  • What is Rook?
  • Architecture of Rook
  • Kubernetes Native Integration
  • What can Rook help you do (better) with Ceph?
  • Demo of Rook's capabilities

○ Creating a Ceph cluster ○ Showing ease of consuming storage using an example application ○ Adding and removing a new (Ceph) cluster node

  • Why Rook?
slide-3
SLIDE 3

What is Rook?

slide-4
SLIDE 4

4

  • Cloud-Native Storage Orchestrator
  • Extends Kubernetes with custom types and controllers
  • Automates deployment, bootstrapping, configuration, provisioning, scaling,

upgrading, migration, disaster recovery, monitoring, and resource management

What is Rook?

slide-5
SLIDE 5

5

What is Rook?

  • Framework for many storage providers and solutions
  • Open Source (Apache 2.0)
  • Hosted by the Cloud-Native Computing Foundation (CNCF)
slide-6
SLIDE 6

6

Rook Framework for Storage Solutions

  • Rook is more than just a collection of Operators and CRDs
  • Framework for storage providers to integrate their solutions into

cloud-native environments ○ Storage resource normalization ○ Operator patterns/plumbing ○ Common policies, specs, logic ○ Testing effort

  • Ceph, CockroachDB, Minio, Nexenta, and more...
slide-7
SLIDE 7

Architecture of Rook

slide-8
SLIDE 8

8

Architecture

Rook Operators Kubernetes API

New Objects: Ceph Cluster Ceph BlockPool Ceph Object Store Ceph Filesystem And more … Objects: Deployments DaemonSets Pods Services StorageClass / PV / PVC ClusterRole Namespace Config Maps & Secrets

Kubelet

Rook Flex Volume / CSI

Daemons kubectl

Management & Health API

Rook Agent

slide-9
SLIDE 9

9

Ceph on Kubernetes with Rook

slide-10
SLIDE 10

10

Ceph on Kubernetes with Rook

MON MON MON OSD OSD OSD OSD MGR

slide-11
SLIDE 11

Kubernetes Native Integration

slide-12
SLIDE 12

12

StorageClass

slide-13
SLIDE 13

13

PersistentVolumeClaim

slide-14
SLIDE 14

Results in..

slide-15
SLIDE 15

PersistentVolume 20 Gigabyte

slide-16
SLIDE 16

16

Rook Cluster CRD

slide-17
SLIDE 17

What can Rook help you do (better) with Ceph?

slide-18
SLIDE 18

18

What can Rook help you do (better) with Ceph?

  • Health checking for MONs with automatic failover
  • Simple management of Ceph Cluster, Pools, Filesystem and RGW through

Kubernetes objects.

  • Storage Selection in one central place.
slide-19
SLIDE 19

19

Storage Selection

slide-20
SLIDE 20

20

Storage Selection

slide-21
SLIDE 21

Why Rook?

slide-22
SLIDE 22

22

Why Rook?

  • Simplifies running a storage backend by orchestrating it

○ Self managing (Health checking) ○ Dynamic provisioning of the storage

  • Abstraction (coming) to reduce developer “overhead”

○ Object Store Bucket, Database Custom Resource Definition ○ (Less) vendor lock-in through running services your own

slide-23
SLIDE 23

More than Ceph…

slide-24
SLIDE 24

24

More than Ceph…

  • Minio Object Storage
  • CockroachDB Database
  • EdgeFS
  • NFS Server

All thanks to the community!

slide-25
SLIDE 25

Demo

slide-26
SLIDE 26

26

Demo

  • Creating a Ceph cluster
  • Showing ease of consuming storage using an example application
  • Adding and removing a new (Ceph) cluster node

Demo Files: GitHub galexrt/presentation-distributed-storage-with-rook

slide-27
SLIDE 27

27

  • Contribute to Rook

○ https://github.com/rook/rook ○ https://rook.io/

  • Slack - https://rook-io.slack.com/

○ #conferences

  • Twitter - @rook_io
  • Forums - https://groups.google.com/forum/#!forum/rook-dev
  • Community Meetings

How to get involved?

slide-28
SLIDE 28

Questions?

https://github.com/rook/rook https://rook.io/

slide-29
SLIDE 29

Thank you!

https://github.com/rook/rook https://rook.io/

slide-30
SLIDE 30

The End

Twitter: @galexrt GitHub: @galexrt Blog: https://edenmal.moe/ Xing/LinkedIn: Alexander Trost The Cloud Report: the-report.cloud/?s=Rook