Een private cluster bouwen: Dat kan eenvoudiger én goedkoper


Het aanschaffen en hebben van een cluster brengt altijd een hoog prijskaartje met zich mee. Althans, dat is de beleving. In dit artikel laten we zien waardoor dat komt en dat het ook heel anders kan. En voordat u denkt dat wij focussen op prijs en daarbij kwaliteit uit het oog verliezen, het is meer een kwestie van goed kijken naar de wensen en naar wat er beschikbaar is in de markt gecombineerd met kennis en kunde.

2 is geen cluster

Een cluster bestaat altijd uit minimaal drie nodes en bij voorkeur uit een oneven aantal. Wat een node namelijk doet, is kijken of hij de twee andere nodes nog kan zien om daarmee te constateren wat de status van het cluster is.
Dan zijn de volgende situaties mogelijk:
– De node ziet twee andere nodes. Conclusie: Niets aan de hand
– De node ziet één andere node. Conclusie: Er is één node defect.
– De node ziet geen enkele andere node. Conclusie: Ik ben afgezonderd van de andere twee nodes en moet op inactief gaan.

Met name die laatste conclusie kan niet getrokken worden wanneer je maar twee nodes hebt. In het ergste geval vinden beide nodes dat zij productie draaien. Dan heb je een ‘spilt brain’-situatie en een bak ellende.

Storage, storage en nog eens storage

Het bouwen van een cluster waarop virtuele servers kunnen draaien, kan heel eenvoudig zijn. Het probleem is niet het uitbreiden van het aantal cores of het werkgeheugen. Tegenwoordig zijn de producten zoals Proxmox, VMware en dergelijke zo ver ontwikkeld dat bijplaatsen van een node eenvoudig kan. En daarmee breidt u de capaciteit uit.

Voor al die mogelijkheden heb je echter centrale storage nodig. En daar worden de aanbiedingen vaak kostbaar. De oorzaak is de volgende gedachtegang:
– Je schaft een SAN aan. Dé manier om centrale storage aan te bieden aan nodes. Via een switch verbind je die SAN met de nodes.
– Hoeveel disks kunnen er aan het SAN? Nu lijkt het veel, maar zullen we toch een maatje groter nemen?
– Als de SAN defect raakt, is het cluster helemaal onbruikbaar. Een tweede SAN is een logisch gevolg.
– De tweede SAN gaat een kopie draaien van de eerste SAN. Wordt het een synchroon of asynchroon SAN cluster?
– Als de eerste SAN defect raakt, moeten we gaan zorgen dat de tweede SAN automatisch in gebruik genomen wordt. We willen immers niet dat het cluster down gaat omdat de storage niet werkt.
– 2 is geen cluster. Met twee SAN’s kun je een spilt brain-situatie krijgen. Er zijn dan heel veel poppen heel hard aan het dansen.

Op dat punt aangekomen blijkt dat er best slimme oplossingen te koop zijn. De eisen aan het budget zijn echter niet mals. Dat komt ook wel omdat de beschikbaarheid uit redundantie van hardware wordt gehaald of juist slimme software. In het eerste geval dure hardware, in dat laatste geval dan weer met de nodige licentiekosten.

Licenties

Als we kijken naar de licenties voor de virtualisatiesoftware kan het schrikken worden. Als je een volwaardig cluster wilt hebben zijn de licentiekosten niet mals en bovendien terugkerend. Meer dan 1000 euro aanschaf per CPU die in de nodes zitten in het geval van VMware. Met drie nodes en twee CPU’s per nodes tikt dat lekker aan. En dan negeren even de ergernissen van het licentiedoolhof.

Gelukkig kan het slimmer

Wanneer we een cluster betaalbaar willen maken maar de kwaliteit hoog willen houden, moeten we dus kijken naar de inzet van storage, de licentiekosten en de gebruikte hardware.

We beginnen met de hardware. Dit mag commodity hardware zijn als het cluster niet afhankelijk is van een node. Een cluster heeft minstens drie nodes dus wij kijken naar drie normale 1U servers met ruimte voor 10 disks, CPU en geheugen. Geen dubbele voedingen of RAID-controllers. De redundantie gaan we bouwen in software en niet in de hardware. We zorgen ervoor dat uitval van een server geen probleem is. Dan is het ook zinloos om te investeren in servers met allerlei dubbele hardware. Met die besparing zou er zelfs beter een extra node aangeschaft kunnen worden.

Op die servers installeren we virtualisatiesoftware. In dit voorbeeld Proxmox. Dat is namelijk een erg geschikte (gratis!) virtualisatielaag. Het doet HA, i/o throtteling, live migration en centrale management. Clustering van de virtualisatielaag is dus geregeld. Op diezelfde servers gaan we Ceph gebruiken voor de opslag. Tegen Ceph zeggen we dat we alle data te allen tijde 2x willen hebben en daarmee hebben we ons storage cluster.

Laten we even aannemen dat u 6 Terabyte storage wil hebben in uw cluster, 24 cores en 256 Gbyte geheugen tot uw beschikking. Koop 3x 1U servers die ieder ruimte voor 8x 2,5″ disken hebben, 96 Gbyte werkgeheugen en 1x 8 core CPU. Bestel gelijk 9x 1Tb SSD disken mee want bij drie nodes betekent het dat iedere node 3 Terabyte opslag moet hebben zodat 2 nodes samen 3 terabyte
hebben. Had ik al gezegd dat de licentiekosten van Ceph € 0,00 zijn?

Omdat u 1U machines hebt besteld, zijn de colocatiekosten ook laag. Nu kunt u gelijk ook een of meerdere switches kopen en daar een stack mee bouwen. U kunt ook switchpoorten huren. Neem een SLA erbij en het enige dat u hoeft te doen, is het platform gebruiken terwijl uw leverancier zorgt dat het blijft draaien.

Hebt u al hardware? Dan is de kans groot dat het gewoon ingezet kan worden en door het verdelen van de hardware over datacenters hebt u een echt private cloud.

Waarom een eigen cluster?

Voordelen:

  • Volledige vrijheid bij inrichting
  • Klein beginnen, en doorgroeien als het nodig isGeen hinder van andere klanten qua capaciteit, beschikbaarheid e.d.
  • Een extra VM betekent niet direct extra kosten
  • Ontevreden over de leverancier? Haal uw servers op en draai elders verder
  • Uw VM’s krijgen de configuratie die U wilt, niet die de leverancier handig vindt
  • 100% uw eigendom. Alle privacy-, rechten- en eigendom- uitdagingen van tafel
  • Hele lage maandelijkse kosten

Nadelen:

  • Het vergt een investering (al kan uw boekhouder dat een voordeel vinden)

Geschreven door Ronald Otto (Tuxis)

Dit ingezonden artikel is geschreven door Ronald Otto van Tuxis.

Lees ook de onderstaande artikelen van Tuxis

Stuur ook uw blog, achtergrond artikel of andere bijdrage in!

Indien u zelf een interessante bijdrage, zoals een blog, how-to of achtergrond heeft, dan plaatsen wij die graag en dat kost u niks. Neem contact op met de ISPam.nl redactie via [email protected] of kijk op deze pagina voor meer informatie over het leveren van een bijdrage aan ISPam.nl.

Jeroen, 12 mei 2016 9:07 pm

Maar zoals altijd: neem niet blindelings af wat een leverancier aanbeveelt. Hoe is het bijvoorbeeld geregeld met support contracten voor proxmox? Ceph? Zijn die ook gratis? En de vmware perpetual licenties mogen niet gebruikt worden indien de virtualisatie voor hosting doeleinden wordt gebruikt (wat een webhoster of VPS leverancier doet), voor hosting heb je het vcan (vspp) programma a 295 Euro per maand minimale afname, heb je wel support op je vmware laag :)

Wouter, 13 mei 2016 8:39 am

Proxmox VE heeft ook prima support mogelijkheden waarbij je per node per fysieke CPU maximaal € 66,33 betaalt. De community subscription (€ 5,41 per maand per CPU) is eigenlijk minimaal nodig voor productie omgeving voor stabiele updates (http://www.proxmox.com/en/proxmox-ve/pricing).

Bovendien is alles opensource, dus als iets niet helemaal werkt zoals je wilt, pas je het gewoon zelf aan. Bij VMware kan je dat vergeten.

Wij gebruiken ook veel Proxmox VE en Ceph op onze omgevingen en zijn daar erg tevreden over. Maar voor een serieus cluster zou ik altijd Proxmox VE en Ceph gescheiden houden. Switches redundant is verder geen optie, maar een verplichting als je een HA-cluster wilt, want anders is het geen HA-cluster meer. Stacken van switches ben ik in dit soort setups ook nooit zo'n fan van, gezien je dan op beide switches een software upgrade doet, tegelijk. Zit daar een bug in die, ik zeg maar wat, na een X aantal uur al het verkeer dropt, ben je de pineut. Liever losstaande switches en de eerste switch upgraden en de tweede pas na een week of 2 succesvol draaien.

Proxmox VE nodes over verschillende DC's verdelen gaat niet tot nauwelijks werken en wordt ook afgeraden door Proxmox zelf i.v.m. multicast verkeer en te hoge latency. Plus dat je dan nog problemen hebt met je IP-space, tenzij je een eigen ASN hebt of bij 1 partij ruimte afneemt in verschillende DC's.

Mario, 13 mei 2016 9:14 am

Proxmox kun je ook zonder subscription updaten http://www.howdididothat.info/2015/11/08/proxmox-4-pve-no-subscription

Verder is HA binnen Proxmox 4 uitgebreid met softwarematige fencing.

Wouter, 13 mei 2016 9:44 am

Mario, ja, maar de route van nieuwe software is pve-test, pve-no-subscription en als laatste pas pve-enterprise. Bijvoorbeeld recent de GUI update, deze stond 1 week nadat deze verschenen was in pve-test, al in pve-no-subscription. Terwijl er toen nog best wat serieuzere bugs in zaten. Niet dat die bugs je cluster lieten crashen, maar toch. Proxmox raad zelf ook aan alleen productie te draaien op pve-enterprise. Zie https://pve.proxmox.com/wiki/Package_repositories

Bovendien, voor die paar luttele euro's per maand ondersteun je ook het project dat je zo'n geweldig pakket geeft. Als Proxmox VE er niet was had je leven als beheerder er een stuk minder makkelijk uitgezien, of nog erger, je zou overgeleverd zijn aan een closed source product als VMware.

Jeroen, 13 mei 2016 3:02 pm

@Wouter: dat was de boodschap ook wel een beetje. Tuurlijk kan alles gratis, maar een beetje fatsoenlijk bedrijf wilt ook wel de support erbij, dus met een 3 node compute cluster (2x pCPU per node) zit je al op 400 Euro per maand = 14K na 3 jaar. Zonder het artikel volledig af te willen kraken is 10K hardware kosten weinig realistisch en zit je ook met de maandelijkse kosten die aantikken (6 TB storage is bijv. ook verwaarloosbaar als je 3 nodes met VM's wilt vullen).

Ronald, 24 mei 2016 2:36 am

Als ik de reacties lees is de boodschap aardig overgekomen.
Wellicht is toch een kleine toelichting nodig: Er worden in de reacties veel aannames gedaan. De getoonde maandelijkse kosten zijn geen aanname maar werkelijkheid. We hebben klanten die voor dat geld gewoon een heus cluster hebben draaien.

Het punt is precies dat licenties om zo een laag te bouwen niet nodig zijn of heel laag dankzij Proxmox en Ceph. Geen vmware, hyperv, Vsphere, Veaam e.d. Dat scheel een paar honderd euro per maand. (zie eerste reactie: € 295,00 per maand! voor Vmware. Daar komt nog wat bij voor support op je Vsan software + back-up software? etc etc))
Carepacks kunnen een tandje kleiner of weggelaten. Beter een node erbij voor dat geld.

De maandelijkse kosten zijn inclusief een 24x7 gemonitorde SLA, colocatie en 1 Tb dataverkeer en ex stroom (13 cent/KWh). Dus met ondersteuning van Ceph en Proxmox en hulp bij problemen. In feite wordt er gezorgd dat het platform beschikbaar is zodat het het kunt gebruiken.
Dataverkeer is de enige echte variabele.
Wil je persé een subscription op Proxmox, dan kost dat € 19,16/month (per CPU). Dat maakt € 114,00 per maand en geen € 400,00.
Het enige wat ik daarover kan zeggen: We hebben het nog nooit nodig gehad. Proxmox is stabiel, we weten hoe het werkt. Idem met Ceph. Het concept is gewoon bewezen. Daarom kost de SLA ook geen wereldbedrag. Goed bouwen, goed configureren, niet rotzooien en rommelen dan draait het gewoon goed en blijft het draaien.

6Tb te weinig voor drie nodes? Dat hangt dan af van wat je ermee wilt doen lijkt me. Maar met drie nodes kun je tot 15 Tb. Dat kost eenmalig natuurlijk meer maar maandelijks helemaal niets.

Dan nog een puntje. Wouter schrijft:
"Proxmox VE nodes over verschillende DC's verdelen gaat niet tot nauwelijks werken en wordt ook afgeraden door Proxmox zelf i.v.m. multicast verkeer en te hoge latency. Plus dat je dan nog problemen hebt met je IP-space, tenzij je een eigen ASN hebt of bij 1 partij ruimte afneemt in verschillende DC's."

En dat is waar. En daarom hebben we tussen de DC's eigen vezels liggen. Voor Ceph is dat ook niet onbelangrijk namelijk.
Ook kunnen klanten eigen vezels krijgen. Dat is dan weer niet gratis maar niet zo snel nodig als de meeste denken. De datacenters liggen 500 meter uit elkaar en zijn 100% technisch gescheiden. Ver genoeg zodat grote calamiteiten niet overslaan. Soms moet het verder uit elkaar liggen wat natuurlijk kan en een ander tarief kent.

Gerard, 25 mei 2016 11:25 pm

Inderdaad!

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.