Journalistiek

Onpartijdig, onafhankelijk nieuws, uitsluitend in dienst van het branchebelang.

Storage Stories: gedistribueerde opslag met Ceph

  • Door
  • dr. Serge Gielkens
  • geplaatst op
  • 22 december 2015 08:00 uur

In de rubriek Storage Stories passeren tijdens de interviews tal van gebruikte technieken de revue. In deze rubriek worden daarom de interviews afgewisseld met artikelen die de technische achtergrond van storage-oplossingen belichten. In deze aflevering kijken we naar Ceph.

Ceph is een volledige gedistribueerd opslagsysteem zonder een single point of failure en dat is gebouwd voor schaalbaarheid. Het is niet zozeer een vervanger van traditionele bestandssystemen maar eerder een aanvulling daarop. Ceph gaat ervan uit dat disks kunnen uitvallen en heeft daarom geen hardware eisen zoals RAID. Het is dan ook niet ongewoon om Ceph in combinatie met ‘consumer grade’ disks te gebruiken. Ceph is een open-sourceproject onder de paraplu van Red Hat.

Ceph cluster

Een Ceph-cluster bestaat uit een aantal nodes waarop verschillende daemons draaien. Essentieel zijn de Ceph-monitor en de OSD-daemon. De Ceph-monitor houdt de staat van het Ceph-cluster in de gaten. OSD staat voor object storage device en hierop slaat de OSD-daemon de objecten op. Verder is er ook nog een metadata server die alleen nodig is in geval het bestandssysteem CephFS gebruikt wordt. Deze server slaat metadata op zoals bestandsgrootte, creation time, permissies et cetera.

Een Ceph-cluster bestaat uit minimaal één Ceph-monitor en twee OSD-daemons. Dat laatste is nodig zodat Ceph data kan repliceren. De daemons en ook de Ceph clients zijn cluster-aware. Dat betekent dat zij direct met elkaar communiceren. Er is geen centrale server die een bottleneck kan vormen bij hoge belasting. Dit voorkomt eveneens een single point of failure.

Elk OSD daemon slaat de objecten op als bestanden in een bestandssysteem op lokale storage. Ceph beveelt momenteel XFS voor productie aan. Btrfs wordt gezien als de opvolger op termijn. Objecten staan niet in een hiërarchie. Alle objecten hebben een object ID dat niet alleen uniek is voor het lokale bestandssysteem maar ook voor het hele cluster. De OSD daemon zorgt tevens voor de replicatie. Ook het stripen van de data over meerdere nodes om de doorvoersnelheid te verhogen alsmede de load balancing verzorgt Ceph automatisch.

Interfaces

Ceph biedt de data aan via drie interfaces: als object, als block device en als bestand. De object opslag is de basis en heet RADOS. Dit staat voor Reliable Autonomic Distributed Object Store. Via de librados library hebben applicaties direct toegang tot deze vorm van opslag. Er zijn bindings voor C, C++, Java, Python en PHP. Ook is er een REST interface die compatibel is met Amazon S3 en Swift van OpenStack. Dit wordt de RADOS Gateway genoemd.

Een gebruiker kan de object opslag ook benaderen als een block device. Dit heet het RADOS block device (RBD). Feitelijk is RBD bovenop librados gebouwd. Deze block devices worden rechtstreeks gemount. Ceph block devices worden vaak in combinatie met KVM virtualisatie toegepast voor cloudoplossingen.

Tot slot zijn de data ook benaderbaar als een bestandssysteem onder de naam CephFS. De inhoud van bestanden wordt als object opgeslagen. De metadata server zorgt voor de koppeling tussen objecten en de namen van directories en bestanden. CephFS is een netwerk file system dat POSIX compliant is. Dit garandeert compatibiliteit met bestaande applicaties.

Tot slot

Ceph is volwassen en wordt in productie-omgevingen ingezet. Toch zijn er nog een aantal aspecten die voor bepaalde gebruikers het inzetten van Ceph verhinderen. Zo ontbreekt voor het bestandssysteem CephFS een goede fsck-functie. Ook in een omgeving met VMware als virtualisatietechniek, is Cephs (nog) niet geschikt.

Nog geen reacties

Laatste reacties

Bedankt voor het succes van ISPam.nl
Koen Stegeman, Editor-in-Chief & founder Hostingjournalist.com: Jammer Arnout, maar je hebt een mooie bijdrage aan de hosting industrie geleverd, en dat jaren lang....

Bedankt voor het succes van ISPam.nl
Dillard Blom: Jammer dat een 'instituut' verdwijnt, en daarmee een bron van informatie over actuele zaken (en opin...

Bedankt voor het succes van ISPam.nl
L.: Uit automatisme kijk ik toch nog steeds elke dag naar ispam.nl, toch de hoop dat er nog een berichtj...

Bedankt voor het succes van ISPam.nl
Toni Donkers: Arnout bedankt! ik ga het missen dat is een feit!

Bedankt voor het succes van ISPam.nl
Marcel Stegeman: Ik zie het nu pas. Inderdaad jammer maar ik kijk nu al uit naar het volgende project.