scaling your storage using ceph
play

Scaling Your Storage Using Ceph Wido den Hollander #CCCEU Who am - PowerPoint PPT Presentation

Scaling Your Storage Using Ceph Wido den Hollander #CCCEU Who am I? Wido den Hollander (1986) CTO at PCextreme B.V. Dutch Hosting provider Ceph trainer and consultant at 42on B.V. Part of the Ceph community since late 2010


  1. Scaling Your Storage Using Ceph Wido den Hollander #CCCEU

  2. Who am I? ● Wido den Hollander (1986) – CTO at PCextreme B.V. ● Dutch Hosting provider – Ceph trainer and consultant at 42on B.V. – Part of the Ceph community since late 2010 ● Wrote PHP and Java bindings ● Wrote the CloudStack integration – Including libvirt storage pool support #CCCEU / @widodh 09 Oct 2015 2

  3. CloudStack primary storage #CCCEU

  4. CloudStack primary storage ● A set of hypervisors with storage – NFS, iSCSI or FiberChannel – Usually one NAS or SAN per cluster ● Local Network for low latency and high bandwidth #CCCEU / @widodh 09 Oct 2015 4

  5. CloudStack primary storage #CCCEU / @widodh 09 Oct 2015 5

  6. CloudStack primary storage ● Scaling is a problem however: – Number of disks – Network connections/bandwidth – CPU power – Protocols ● NFS and iSCSI do not scale #CCCEU / @widodh 09 Oct 2015 6

  7. Scaling NFS or iSCSI ● NFS and iSCSI expect the server to always be available – Vendors implement all kinds of tricks ● Virtual IPs ● ARP spoofjng – This is a fundamental problem when it comes to large scale #CCCEU / @widodh 09 Oct 2015 7

  8. Black boxes ● Black boxes: – EMC, EqualLogic, NetApp, they provide you a black box – Vendor lock-in – End-of-Life determined by vendor #CCCEU / @widodh 09 Oct 2015 8

  9. Ceph #CCCEU

  10. What is Ceph? ● Ceph is a distributed object store and fjle system designed to provide: – excellent performance – reliability – scalability #CCCEU / @widodh 09 Oct 2015 10

  11. Design principles ● Data is replicated in the Ceph cluster – User specifjed, 2x, 3x (recommended), 4x, etc ● Hardware failure is the rule – Not the exception! ● Software defjned storage – Fully hardware agnostic ● Consistency goes over availability #CCCEU / @widodh 09 Oct 2015 11

  12. What is Ceph? #CCCEU / @widodh 09 Oct 2015 12

  13. How does it work? ● Clients are aware of cluster status – Client calculates where objects are – The connect directly to the nodes using TCP ● Ceph nodes are intelligent – They take care of replication and recovery ● Block Devices are striped over 4MB objects – These objects are replicated by the nodes #CCCEU / @widodh 09 Oct 2015 13

  14. How does it perform? ● Ceph performs great with parallel I/O – Cloud workloads are parallel – Do not expect 10k IOps for a single disk ● Each node adds I/O, RAM and CPU – Thus adds performance ● Latency is mainly infmuenced by the network – The lower the latency, the better the performance #CCCEU / @widodh 09 Oct 2015 14

  15. How does it perform? ● Network latency is key – Difgerence between 10GbE and 1GbE is big ● 8k packet round trip: – 1GbE: 0.8ms – 10GbE: 0.2ms #CCCEU / @widodh 09 Oct 2015 15

  16. How does it perform? #CCCEU / @widodh 09 Oct 2015 16

  17. Failure is the rule! ● Ceph is designed for failure! ● T ake out any machine you want – Kernel upgrades – Firmware upgrades – Replacement of hardware ● 1000 day uptimes are no longer cool – Upgrade and reboot those machines! #CCCEU / @widodh 09 Oct 2015 17

  18. Failure is the rule! #CCCEU / @widodh 09 Oct 2015 18

  19. Failure is the rule! #CCCEU / @widodh 09 Oct 2015 19

  20. Failure is the rule! #CCCEU / @widodh 09 Oct 2015 20

  21. Scaling Ceph ● Ceph is designed to scale – Start with 10TB and scale to 10PB ● No downtime or manual data migration is required – Never watch to rsync or scp ● Migration is proportional to the change – Expand by 10% and about 10% of migrates #CCCEU / @widodh 09 Oct 2015 21

  22. Scaling Ceph ● During expansion data migrates automatically to new nodes ● New nodes add additional performance ● Mix difgerent types of hardware – 2TB and 4TB drives for example #CCCEU / @widodh 09 Oct 2015 22

  23. Designing a Ceph cluster ● Use small(er) nodes – 2U machines with 8 drives ● More nodes means less impact when a node fails – 'Failure' could be maintenance! ● Start with at least 10 nodes #CCCEU / @widodh 09 Oct 2015 23

  24. Designing a Ceph cluster #CCCEU / @widodh 09 Oct 2015 24

  25. Ceph as Primary Storage #CCCEU

  26. Ceph as Primary Storage ● Ceph block devices can be used as primary storage ● KVM is currently the only supported hypervisor – Ubuntu works best – CentOS works with patched libvirt ● All operations are supported – T emplates, snapshots, resizing #CCCEU / @widodh 09 Oct 2015 26

  27. Future plans ● Incremental backups to other Ceph cluster – Is on Ceph's roadmap ● Snapshots without copy to Secondary Storage ● Xen support #CCCEU / @widodh 09 Oct 2015 27

  28. Ceph at PCextreme #CCCEU

  29. Ceph at PCextreme ● We use Ceph as Primary Storage behind CloudStack – KVM hypervisor on Ubuntu ● We have two Service Ofgerings: – Agile: Local Storage on SSD – Stamina: Ceph RBD storage ● Only available in Amsterdam #CCCEU / @widodh 09 Oct 2015 29

  30. Ceph at PCextreme ● 500TB of storage – 39 hosts – 3 racks ● Replicas spread out over racks – 258 disks ● 96 SSDs ● 162 HDDs #CCCEU / @widodh 09 Oct 2015 30

  31. Ceph at PCextreme ● 20.000 IOps on average ● SuperMicro hardware – Mix of Samsung, Intel, Seagate and Western Digital SSDs/HDDs ● Running on IPv6-only – There is NO IPv4 in the Ceph cluster – Public routed IPv6 (with a fjrewall) #CCCEU / @widodh 09 Oct 2015 31

  32. Ceph at PCextreme #CCCEU / @widodh 09 Oct 2015 32

  33. Ceph at PCextreme #CCCEU / @widodh 09 Oct 2015 33

  34. Ceph at PCextreme #CCCEU / @widodh 09 Oct 2015 34

  35. Ceph at PCextreme HEALTH_WARN #CCCEU / @widodh 09 Oct 2015 35

  36. Ceph at PCextreme ● We are updating the whole Ceph cluster – Using bcache – Updating to Ubuntu 14.04 – Updating Ceph #CCCEU / @widodh 09 Oct 2015 36

  37. Ceph at PCextreme During offjce hours :-) #CCCEU / @widodh 09 Oct 2015 37

  38. Ceph at PCextreme ● We don't do Ceph maintaince at night anymore ● That's how Ceph should be used #CCCEU / @widodh 09 Oct 2015 38

  39. Thanks! Find me @widodh on Skype and T witter wido@42on.com #CCCEU

Recommend


More recommend