Journalistiek

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

Storage Stories: De VPS omgeving van Tilaa

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

Voor deze storage story hebben we een gesprek met Gerben van de Ven, directeur en mede-eigenaar van Tilaa. Tilaa bestaat sinds 2008 en is specialist in VPS. Onder haar klanten mag Tilaa bedrijven als ESA en Philips rekenen. Betrouwbaarheid van de storage is dan ook de zwaarste afweging voor Tilaa.

Local storage

Al meteen aan het begin van het gesprek maakt Van de Ven duidelijk wat het uitgangspunt van Tilaa is: “Wij kiezen voor simplicity: local storage met hardware RAID-10.” Voor Tilaa biedt RAID-10 de juiste verhouding tussen redundantie en performance. In het begin heeft Tilaa ook tests gedaan met software RAID maar dat bleek in de praktijk minder betrouwbaar dan hardware RAID. De performance was eveneens lager. De conclusie was dan ook vlug gemaakt volgens Van de Ven: “We willen geen concessies doen aan betrouwbaarheid en performance, dus we zagen al heel snel in dat software RAID niks voor ons was.”

Iedere server heeft een RAID-kaart met hot spare disk om automatisch het uitvallen van een disk op te vangen. Voor een eventuele stroomuitval is iedere kaart uitgerust met een battery back-up. “Op deze manier lopen we niet het risico dat integraal het storage platform onderuit gaat”, vertelt Van de Ven. Bij shared storage is dat risico er wel.

“Concullega’s die high availability VPS aanbieden op een shared storage platform voorzien in het onderuitgaan van een virtualisatie node door de virtualisatie server op een andere node op te starten. Maar als het hele shared storage cluster onderuit gaat, gaan duizenden VPS’en ook onderuit. Als bij ons iets fout gaat, zijn de failure domains heel klein. Hoogstens enkele tientallen servers worden geraakt maar de rest draait door.”

Om de impact voor de klant verder te beperken hangt in ieder rack een hot spare server. “Bij een probleem brengen we alle schijven van de kapotte server over naar de hot spare. Binnen 20 minuten hebben we die weer in de lucht. De klant kan verder en wij kijken wel wat er stuk is.”

Tilaa heeft twee datacenters, een in Amsterdam en een in Haarlem. De storage is niet gekoppeld maar voor ieder datacenter apart gebruikt Tilaa wel een verdeelalgoritme dat ervoor zorgt dat als een klant meerdere VPS’en bestelt, ze op verschillende hardware terechtkomen. “Dat zijn echte HA-oplossingen. Je zorgt ervoor dat je uitval kunt hebben door het falen van hardware in te calculeren in de software”, aldus Van de Ven.

Als virtualisatietechniek wordt KVM gebruikt. Voorheen gebruikte Tilaa Xen maar op een gegeven moment leken de ontwikkelingen daar langzaam te stoppen terwijl KVM juist sterk evolueerde. Eigen tests lieten bovendien zien dat voor de omgeving van Tilaa KVM beter presteerde en te onderhouden was. Ook speelde mee dat Tilaa toentertijd Fedora, de community versie van RHEL, gebruikte en Red Hat zelf ging inzetten op KVM. Overigens is Tilaa inmiddels overgestapt op Scientific Linux. Deze distributie is ontwikkeld door het Fermilab samen met CERN en is net als CentOS een vrije variant van RHEL.

Shared en distributed storage

Met shared storage is het wel heel gemakkelijk om een VPS op een andere machine te starten. “Voor onderhoud van hardware was dit vroeger een argument voor shared storage, maar dit is al lang achterhaald door de techniek”, volgens Van de Ven. “We gebruiken live migration om de VM zonder onderbreking te verplaatsen van de ene machine met local storage naar de andere met local storage. Live migration was vroeger een bottleneck met local storage maar nu niet meer.”

Toch biedt Tilaa ook shared storage in de vorm van NFS aan. Van de Ven legt uit dat dit wordt gebruikt voor clusters met gedeelde data die continu veranderen zoals cookies en sessiedata van een webcluster. “Met local storage is dat lastig in sync te houden. De VPS’en zijn dan meer tijd kwijt om constant veranderende data op hun lokale disks in sync te houden dan aan het leveren van webservices.” Tilaa gebruikt het NFS-cluster niet voor het OS. Als NFS down gaat, blijven alle VPS’en draaien. Omdat maar zo’n 1 à 2 procent van de klanten deze service gebruikt, is het NFS cluster kleinschalig en eenvoudig van opzet. Het is een apart stukje hardware bestaande uit twee servers die verbonden zijn met een JBOD. Eén server is actief terwijl de andere passief is. Als een node hapert, neemt de andere het in minder dan een seconde over.

Tilaa houdt de technische ontwikkelingen nauwlettend in de gaten. Met name het distributed storage platform Ceph is interessant voor Tilaa omdat het ervoor zorgt dat er geen single point of failure is. Dat is precies waarom Tilaa nu local storage gebruikt. Tilaa voert al tests uit met Ceph maar ondervindt nog een aantal tekortkomingen. “Ceph voldoet nog niet aan de maatstaven die Tilaa nastreeft op het gebied van performance en betrouwbaarheid. Als dat soort zaken opgelost zijn, dan kunnen we ons voorstellen dat we het beginnen in te zetten voor back-ups. We vinden dat Ceph nu nog niet ver genoeg is om er VM’s op te draaien”, verklaart Van de Ven.

Tot slot

De tip die Van de Ven voor ons heeft, is die waar we ook het gesprek mee zijn begonnen: keep it simple. “Hiermee hebben we al jarenlang bewezen een goede stabiliteit en performance te bieden. We hebben geen integrale storingen. We hebben enige beperkingen zoals het in sync houden van servers maar dat weegt volgens ons niet op tegen de voordelen qua stabiliteit en simplicity van local storage.”

Wouter, 8 december 2015 8:56 am

Haha, het is 2015 hoor. Volgens mij probeert Tilaa hier vooral hun eigen ouderwetse werkwijze (welke eigenlijk aangehouden wordt vanwege gebrek aan technische kennis, dan wel het niet in 1x willen/kunnen investeren van grote bedragen) hier goed te praten. Allemaal prima hoor als je zelfs in 2015 toch nog besluit local storage te willen gebruiken, maar om dan te zeggen dat dit ook nog een HA-oplossing is, dan lig ik dubbel. Hoeveel klanten richten dat zo in? Meerendeel heeft toch gewoon een VPS voor een bepaald doel, en is dan dus vooral niet HA bij Tilaa:

"... gebruikt Tilaa wel een verdeelalgoritme dat ervoor zorgt dat als een klant meerdere VPS’en bestelt, ze op verschillende hardware terechtkomen. “Dat zijn echte HA-oplossingen. Je zorgt ervoor dat je uitval kunt hebben door het falen van hardware in te calculeren in de software”, aldus Van de Ven."

Ook zou ik graag concrete voorbeelden vernemen, waarin Ceph een nadeel heeft tov local storage. Op Ceph clusters kan je (bij goed opzetten) bovendien snelheden halen die ver voorbij de snelheden van een local RAID-10 setupje gaan, waarbij je bovendien meer dan 2 kopieën van alle data kan opslaan indien gewenst, wat bij RAID-10 niet kan. En niet te vergeten dat je niet van 1 server, raid controller etc. afhankelijk bent.

Rico de Vries, 8 december 2015 10:59 am

Ik zat mij even af te vragen of dit artikel van 1999 was, maar dat is niet het geval......

Ronald, 8 december 2015 11:09 am

Een veelgemaakte denkfout (m.i.)
“Concullega’s die high availability VPS aanbieden op een shared storage platform voorzien in het onderuitgaan van een virtualisatie node door de virtualisatie server op een andere node op te starten. Maar als het hele shared storage cluster onderuit gaat, gaan duizenden VPS’en ook onderuit. Als bij ons iets fout gaat, zijn de failure domains heel klein. Hoogstens enkele tientallen servers worden geraakt maar de rest draait door.”

De kans dat 1 server uitvalt is groter dan de kans dat een redundant storageplatform met bijv. Ceph uitvalt.
Als nl in dit voorbeeld het moederbord van de storageserver stuk gaat zijn alle klanten (ookal is het er maar één) niet meer in de lucht. Impact voor die klant is 100%.

Gaat bij een cluster een moederbord stuk, dan merk je er niet veel van. Gaat het hele cluster stuk, dan heb je gelijk alle klanten die niets meer hebben. De impact per klant is echter ook gewoon 100%. Het zal echter minder vaak voorkomen gezien de redundantie in je storagelaag.

Dus voor je gevoel is het prettig dat niet alle klanten een storing hebben. De praktijk is dat de oorzaak voor je klant niet uitmaakt. Het maakt die klant ook niet uit dat andere klanten er geen last van hebben.

Jeroen, 8 december 2015 12:50 pm

Ongeacht of ik het eens ben met de geplaatste reacties:
Local storage per node is niet perse een ouderwetse werkwijze, sterker nog: VMware heeft vrij recent vSAN geintroduceerd. Software defined storage clustering met local disks per node. Nu gebruikt Tilaa KVM, maar het gaat om het idee.
De HA gedachte bij de beschreven setup leunt mijn insziens iets te veel op handmatige acties met personele beschikbaarheid.

Jan de Vries, 8 december 2015 1:03 pm

Ben het niet helemaal eens met bovenstaande redenaties.

Bij het schalen van een storage platform neem de complexiteit exponentieel toe.

Wanneer iemand zijn VPS niet redundant inricht is de impact inderdaad 100%, echter neemt deze af tot bijna 0% wanneer redundantie op software niveau wordt gebouwd over verschillende gescheiden systemen. Dit kun je nooit bereiken op een shared of distributed storage systeem. Als er iets fout gaat dan hang je.

Door complexiteit zie je ook dat bij problemen op grote opslag systemen de onderbreking lang duurt, soms meerdere dagen.

Kijk bijvoorbeeld maar eens naar

http://tweakers.net/nieuws/105057/leaseweb-ondervindt-storage-problemen-sinds-maandagavond.html
https://twitter.com/cloudvpsnetwork

Ik kan me ook nog wat voorvalletjes herinneren bij oa Leaseweb en TransIP waar data verloren is gegaan.

Jeroen, 8 december 2015 2:42 pm

Helaas zijn niet alle applicaties te clusteren, denk aan het veelgebruikte DirectAdmin controle panel (afgezien van unsupported knutseloplossingen).

Wouter, 8 december 2015 3:32 pm

Je gaat clusters niet oneindig door bouwen (waardoor het erg groot en mogelijk complex wordt), op een gegeven moment zet je een tweede, derde etc. cluster neer. Wij hebben standaard 2 clusters op gescheiden locaties, waardoor je desgewenst echte HA-oplossingen kan bouwen voor klanten die dat wensen. Het meerendeel zal echter gewoon een VPS afnemen voor een bepaald doel en zit er zelf helemaal niet op te wachten daar een HA-voorziening in te moeten bouwen, dat hoort gewoon op de achterliggende infra geregeld te zijn anno 2015 en ik denk dat veel klanten dat tegenwoordig ook gewoon standaard verwachten. Klanten die zo'n kritieke infra hebben dat een HA-cluster niet genoeg HA is, kan je extra HA maken door deze VM's te spreiden over de verschillende clusters (en dat zal dan ook over verschillende datacenters moeten bij zo'n klant). Maar dat Tilaa haar spreiding van VM's pas een echte HA-oplossing noemt, is echt lachwekkend.

Bovendien, Tilaa geeft aan dat als een server crasht men binnen 20 minuten weer up & running kan zijn doordat de schijven in een andere (spare) server overgeprikt worden. Nadeel hiervan is natuurlijk dat handmatige actie nodig is, maar wat doe je als je RAID array het begeeft? Dan zal je aanzienlijk langer uit de lucht zijn en zal je terug moeten grijpen op backup's. Tot overmaat van ramp heb je dan ook nog dataverlies tussen het moment van maken van de laatste backup en de crash. De kans op een crash van een VM met local storage is gewoon vele malen groter dan een crash van een VM op geclusterde storage, zeker met Ceph. Belangrijke zaken zal men dan ook nooit horen te hosten op een standalone machine, zoals Tilaa haar VPS'ses heeft ingericht.

Dennis Krul (Tilaa), 8 december 2015 5:28 pm

Beste Wouter,

Je mag het best oneens zijn met onze keuzes, maar jammer dat je het nodig vindt onze keuzes zo publiekelijk af te kraken en ons weg te zetten als amateurs. Ook jammer dat je niet je achternaam en bedrijfsnaam hebt vermeld, zodat we weten met wie we te maken hebben.

We beweren nergens dat een enkele VM op local storage HA is. Wat we zeggen is dat je met meerdere VM's die niet afhankelijk zijn van dezelfde storage een hogere beschikbaarheid kunt realiseren dan met meerdere VM's die op hetzelfde storage platform draaien. Ben je het daarmee oneens?

"..maar wat doe je als je RAID array het begeeft?"

Dat is een onzinnige vraag. Wat doe je als je shared storage cluster het begeeft? RAID is geen backup, een shared storage cluster ook niet. Als je data je wat waard is maak je backups.

"De kans op een crash van een VM met local storage is gewoon vele malen groter dan een crash van een VM op geclusterde storage, zeker met Ceph."

Dat is onzin. Lees je eerst even in op de ceph-users mailinglist, dan praten we verder :)

Gr, Dennis

Wouter, 8 december 2015 6:02 pm

Je vergelijking met een hogere beschikbaarheid tussen twee losstaande VM's en twee op dezelfde storage is een rare. Een eerlijke vergelijking zo zijn om dan twee VM's op twee verschillende clusters te vergelijken met twee VM's op standalone hardware. Of om een enkele VM op een cluster of een enkele VM op een standalone machine te vergelijken. Nu ben je appels met peren aan het vergelijken. In beide gevallen is de standalone VM gevoeliger voor uitval, omdat die in beide gevallen op standalone hardware draait. Is ook niks nieuws, dat deden we jaren geleden al met losse dedi's en colo's.

De als dan vraag is zeker geen onzinnige vraag. Je geeft aan dat als een server crasht je HDD's omswapt en weer online bent. Mijn vraag wat je doet als je RAID array crasht is dus een hele logische, want dan kan je niet zomaar omswappen. Staat overigens los van backups, ik heb ook nergens gezegd dat RAID een vervanging van backups is, want dat is het zeker niet, idem. voor een shared storage cluster. Ook dat backup je nog gewoon voor echte noodsituaties. Feit blijft weer dat een enkele RAID array in 1 server, op 1 RAID controller niet veel nodig heeft om volledig uit te vallen.

Dat er problemen op de Ceph mailinglist staan is logisch, voor welk softwarepakket niet? Overigens zijn er op internet ook zat problemen met gecrashte hardware RAID arrays te vinden. Is dus een onzinnig argument. Zoals al eerder gevraagd, maar waar helaas geen concreet antwoord op komt: waar ben je bij Ceph ZELF tegenaan gelopen, wat je toch laat kiezen voor local storage ipv Ceph storage?

Overigens, als je niet duizenden VM's wil laten crashen bij een crash van storage, kan je natuurlijk ook meerdere kleinere clusters bouwen. Heb je wel echte HA oplossingen voor elke VM, maar zijn toch niet al je klanten getroffen in het geval een cluster uit zou vallen. Al is de kans op uitval bij een goed opgezet cluster gewoon heel klein kan ik je uit ervaring vertellen.

Gerben van de Ven (Tilaa BV), 9 december 2015 11:09 pm

Laten we het even bij de feiten houden.

We gebruiken local storage op basis van hardware RAID-10 sinds 2009 en hebben inmiddels honderden fysieke servers draaien waar we duizenden klanten mee bedienen. Feit dat we local storage gebruiken is geen kwestie van gebrek aan technische kennis of geld zoals eerder gesuggereerd werd, het is een filosofie waar wij in geloven. Simpel, snel en betrouwbaar.

We hebben een bewezen stabiel platform, in al die jaren hebben we slechts 1 keer hardware gerelateerd probleem met 1 fysieke server gehad waarbij downtime optrad. Door hot-spare hardware hadden we dit in mum van tijd onder controle. Buiten dit om zichzelf staande voorval is er sinds 2009 nog geen seconde downtime geweest door hardware falen. Mocht dit in de toekomst onverhoopt nog eens gebeuren, dan zijn we hierop voorbereid door goede monitoring, hot-spare servers en sluitende procedures in combinatie met relatief lage complexiteit.

Ik wil niet verzanden in een oeverloze discussie over wat beter / slechter is met een anonieme persoon, daar is dit denk ik ook niet het platform voor. Ik kan wel 1000 al-dan-niet theoretische horror scenario's verzinnen op zowel shared, distributed als local storage, maar dat is niet waar het om gaat. Waar het wel om gaat is dat dit voor ons en onze klanten bewezen werkt.

Gerben van de Ven
Tilaa BV

Maarten, 27 januari 2016 12:47 pm

Ik beheer VPS'en bij verschillende aanbieders (CloudVPS, TransIP, DedicatedNow, Linode en Tilaa).

Een aantal argumenten die iedereen geeft zijn net zo discutabel als dat iemand die in een Mercedes rijdt zegt dat elke BMW rijder een amateur is.
Iedereen mag zijn eigen voorkeur hebben.

We zijn het er wel over eens dat een Smart parkeren in Amsterdam makkelijker is dan een bestelbus, en dat de bestelbus handiger is voor een lange reis met veel spullen dan een Smart.

Je moet dus gewoon ergens een VPS afnemen die past bij je wensen/eisen.
En persoonlijk ben ik zeer blij met Tilaa voor het volgende:
- disk random reads/writes: 2 tot 10x zo snel dan andere aanbieders vanwege de RAID10
- disk reads tot 600 MB/s (anderen hangen op max 300MB/s met drops naar 10MB/s)
- tot nu toe 0% downtime / data loss

Nadelen zijn er soms ook:
- meerdere beheerder logins via hun control panel niet mogelijk
- meerdere IP's niet standaard en onhandig (denk aan simpele hosting met eigen NS)
- 1GB swap (niet aan te passen)

Vandaar dat ik bij verschillende aanbieders pakketten afneem.

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.