Ceph
Ceph koosneb järgnevatest komponentidest
Et kõik ausalt ära rääkida siis Ceph koosneb kolmest põhikompnentist, mida nimetatakse RADOSiks. Seal on Object Storage Daemon (OSD), Meta-Data Server (MDS) ja Monitor (MON). OSD on deemon mis tegeleb andmete hoidmise ja paigaldamisega. See deemon peab töötama igas clustri nodes, kus on salvestusseadmed (sas, sata vms kettad). Kui süsteemis pole raidi tuleb nodes käivitada iga ketta kohta oma OSD deemon (nt 4 ketast tähendab 4 deemonit). Kui kasutuses raid siis piisab ühest. Vaikimisi on ühe OSD kohta kolm nn pooli (data, metadata ja rbd).
Meta-data server on koht kuhu salvestatakse metadata. Seda deemonit on tegelikult vaja vaid Ceph failisüsteemi kasutades, RBD'd (cephi blockdevicet kasutades seda vaja ei ole).
Kolmas oluline komponent on monitor. Tegemist on kergekaalulise deemoniga, mis tegeleb klientide ja muude väliste tarkvaratükkidega läbiviidava suhtlusega. Samuti tegeleb ta info terviklikkuse kontrollimise jms töödega (Quorum decisions). Näiteks, kui mountida ceph failisüsteem kliendi poolelt siis tuleb see ühendada MON serveri aadressiga. Ideaalne on cephi soovituse järgi omada clustris kolme monitori
Transporditeenused.
- Ceph RGW ( Object Gateway / Rados Gateway ) API liides, ühilduv Amazon S3 ja openstacki swiftiga.
- Ceph RBD ( Raw Block Device ) Blokkseadmed virtuaalmasinatele, sisa omadaldab snapshottimist, provisioneerimist ja pakkimist.
- CephFS ( File System ) hajus POSIX NAS storage. Mountimine käib üle fuse.
Produktsioon süsteemi jaoks on soovitatav kasutada viite füüsilist või virtuaalset serverit. üks server andmetega (OSD), üks server metadata jaoks (MDS) ja kaks server-monitori ja admin server (esimene klient)
RGW ja RBD puhul on vaja ainult OSD ja MON deemoneid, kuna metadata (MDS) on vajalik vait CephFS jaoks (mitme metadata serveri kasutamine on alles arendamisel ja eksperimentaalne)
Radosgw is an HTTP REST gateway for the RADOS object store, a part of the Ceph distributed storage system. It is implemented as a FastCGI module using libfcgi, and can be used in conjunction with any FastCGI capable web server.
Iga salvestamiseks oleva terabaidi kohta soovitatakse OSDl omada üks gigabait mälu (läheb peamiselt vaja taastamisel jms operatsioonidel). Metadata serveritel 1G iga deemoni instance kohta. Most “slow OSD” issues arise due to running an operating system, multiple OSDs, and/or multiple journals on the same drive. Ceph must write to the journal before it can ACK the write. The btrfs filesystem can write journal data and object data simultaneously, whereas XFS and ext4 cannot. Igaljuhul OSD andmed ja OSD journal tasub kindlasti panna erinevatele ketastele.
Ceph OSDs run the RADOS service, calculate data placement with CRUSH, selleks vajab OSD vähemalt 4 tuuma.
Lingid
Testclustri ehitamine http://ceph.com/docs/master/start/quick-ceph-deploy/
Veel ühe clustri ehitamine http://www.server-world.info/en/note?os=CentOS_6&p=ceph
Jõudlustestid https://software.intel.com/en-us/blogs/2013/10/25/measure-ceph-rbd-performance-in-a-quantitative-way-part-i
Ilusad skeemid aga võõras keeles http://wiki.zionetrix.net/informatique:systeme:ha:ceph
Veel üks võimalik kombinatsioon http://www.openclouddesign.org/articles/vdi-storage/ceph-highly-scalable-open-source-distributed-file-system
Mõned testid http://www.sebastien-han.fr/blog/2012/08/26/ceph-benchmarks/
Performanci nõuanded http://www.slideshare.net/Inktank_Ceph/ceph-performance
Veel üks asjalik ehitusõpetus http://www.sebastien-han.fr/blog/2012/06/10/introducing-ceph-to-openstack/
Testid raidikaartidega http://ceph.com/community/ceph-performance-part-1-disk-controller-write-throughput/