Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom...
Transcript of Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom...
![Page 1: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/1.jpg)
Running Ceph on Kubernetes
Alexander Trost, Rook Maintainer and DevOps Engineer at @Cloudibility
Ceph storage with Rook
![Page 2: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/2.jpg)
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?
![Page 3: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/3.jpg)
What is Rook?
![Page 4: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/4.jpg)
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?
![Page 5: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/5.jpg)
5
What is Rook?
● Framework for many storage providers and solutions● Open Source (Apache 2.0)● Hosted by the Cloud-Native Computing Foundation (CNCF)
![Page 6: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/6.jpg)
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...
![Page 7: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/7.jpg)
Architecture of Rook
![Page 8: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/8.jpg)
8
Architecture
Rook Operators
Kubernetes API
New Objects:Ceph ClusterCeph BlockPoolCeph Object StoreCeph FilesystemAnd more …
Objects:DeploymentsDaemonSetsPodsServicesStorageClass / PV / PVCClusterRoleNamespaceConfig Maps & Secrets
Kubelet
Rook Flex Volume / CSI
Daemons
kubectl
Management & Health API
Rook Agent
![Page 9: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/9.jpg)
9
Ceph on Kubernetes with Rook
![Page 10: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/10.jpg)
10
Ceph on Kubernetes with Rook
MON
MON
MON
OSD OSD OSD
OSD
MGR
![Page 11: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/11.jpg)
Kubernetes Native Integration
![Page 12: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/12.jpg)
12
StorageClass
![Page 13: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/13.jpg)
13
PersistentVolumeClaim
![Page 14: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/14.jpg)
Results in..
![Page 15: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/15.jpg)
PersistentVolume20 Gigabyte
![Page 16: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/16.jpg)
16
Rook Cluster CRD
![Page 17: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/17.jpg)
What can Rook help you do (better) with Ceph?
![Page 18: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/18.jpg)
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.
![Page 19: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/19.jpg)
19
Storage Selection
![Page 20: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/20.jpg)
20
Storage Selection
![Page 21: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/21.jpg)
Why Rook?
![Page 22: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/22.jpg)
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
![Page 23: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/23.jpg)
More than Ceph…
![Page 24: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/24.jpg)
24
More than Ceph…
● Minio Object Storage● CockroachDB Database● EdgeFS● NFS Server
All thanks to the community!
![Page 25: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/25.jpg)
Demo
![Page 26: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/26.jpg)
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
![Page 27: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/27.jpg)
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?
![Page 28: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/28.jpg)
Questions?https://github.com/rook/rook
https://rook.io/
![Page 29: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/29.jpg)
Thank you!https://github.com/rook/rook
https://rook.io/
![Page 30: Ceph storage with Rook - FOSDEM · Cloud-Native Storage Orchestrator Extends Kubernetes with custom types and controllers Automates deployment, bootstrapping, configuration, provisioning,](https://reader035.fdocuments.in/reader035/viewer/2022071217/604de7b8001bbe47ec2cb727/html5/thumbnails/30.jpg)
The End
Twitter: @galexrt
GitHub: @galexrt
Blog: https://edenmal.moe/
Xing/LinkedIn: Alexander Trost
The Cloud Report: the-report.cloud/?s=Rook