Podcast met Thijs: “Don’t throw servers at the problem”

Three Devs and a Maybe podcastIn een gesprek met podcaster @Edd_mann legt Thijs Feryn uit hoe het (hosting) wiel niet altijd opnieuw uitgevonden moet worden en waarom je een stabiele hostingomgeving niet per se moet vervangen door het nieuwste, gewoon omdat het kan.

Verder gaat hij technisch diepgaander in op hoe systemen zoals Packer, Vagrant en Terraform toelaten om in een vendor agnostische manier te werken. Enkele citaten, die honger geven om de hele podcast te beluisteren!

Hoe het begon voor Thijs

Thijs Feryn moeten wij je niet meer voorstellen. Zijn epitheton ornans "Combell evangelist" heeft hij verdiend door als actief lid van de PHP-community op vele bijeenkomsten het nut en de mogelijkheden van PHP uiteen te zetten. En duidelijk te maken dat Combell de nieuwste ontwikkelingen van nabij volgt en toepast bij zijn hosting-aanbod.

Thijs Feryn - Combell tech evangelist

In de podcast vertelt hij hoe het eigenlijk allemaal begonnen is: hoe hij in 2004 afstudeerde, en met zijn goede taalvaardigheid (Nederlands, Engels, Frans), en zijn kennis van PHP aan de slag ging bij Combell als support engineer. Een taak die hem goed lag, omdat hij van tech én van mensen houdt.

De problemen die hij oploste draaiden vooral rond het installeren van stacks en betrouwbare code. Maar het waren telkens individuele oplossingen. En alhoewel Combell in die beginjaren nog maar heel weinig medewerkers in dienst had, werd toch beslist dat Thijs zich volledig zou gaan wijden aan het verkondigen van zijn expertise, die ter beschikking te stellen van de hele gemeenschap.

Wat Thijs sindsdien met veel enthousiasme doet: hij blogt / vlogt al 7 jaar, is een veel gevraagde spreker en was tot voor kort medeorganisator van de PHP Benelux-conferentie. Zijn avonturen kan je volgen op zijn eigen blog (Feryn.eu). Thijs is ondertussen ook uitgegroeid tot een expert in caching-tools, met name Varnish, en schreef hierover op vraag van de befaamde tech-uitgever O'Reilly het boek "Getting Started with Varnish Cache".

 

Een stabiele hostingomgeving moet je niet per se vernieuwen

Snowflake serverIn het gesprek met @Edd_mann, opgenomen voor de podcast, haalt Thijs het begrip "Snowflake server" aan. Net zoals elke sneeuwvlok uniek is van structuur, is een snowflake server uniek, op maat gebouwd, en dus moeilijk te repliceren.

Hij legt uit hoe bij Combell verschillende hosting-klanten vasthouden aan hun huidige VM-omgeving. Want die werkt, en de klanten willen stabiliteit. Als er iets veranderen moet, dan doet het technisch team dat met plezier. "Combell gaat uit van wat de klant nodig heeft, en wij proberen hen te begeleiden naar 'best practices', een automatisering van de configuratie. Maar anderzijds is het bij bestaande klanten echt niet nodig om alles overhoop te halen en te vervangen door het nieuwste, enkel omdat het kan. "Never change a winning team'", aldus Thijs.

Het is niet nodig om alles overhoop te halen en te vervangen door het nieuwste, enkel omdat het kan. Combell gaat uit van wat de klant nodig heeft. [Thijs Feryn]

Maar wat met de veranderende eisen van het huidige 'always on' internet, waarbij servers alle pieken moeten aankunnen, de stijgende vraag? Velen zien heil in het werken met dynamische capaciteit. Thijs heeft daarover enkele bedenkingen. "Wanneer je met een traditionele mindset de public cloud wereld instapt (AWS, GCP, Azure), dan kan het een duur verhaal worden.

De kracht van public cloud ligt duidelijk in het feit dat je in staat bent om zelf dynamische capaciteit te 'schedulen'. Maar dit vereist geavanceerde kennis van het platform en van de tooling die aangeboden wordt om belasting te meten en daarop in te kunnen spelen. De applicatie moet ook zo ontwikkeld zijn om makkelijk in te kunnen spelen op automatische schaalbaarheid. Wanneer die kennis ontbreekt, of het project leent er zich niet toe, dan stap je in een zogenaamd 'lift & shift' model, waarbij de huidige situatie nagebouwd wordt in de Cloud. Daar zit te hoge kost, en daar kan managed hosting een goed oplossing zijn".

 

Managed hosting bij Combell: je staat er niet alleen voor

vmwareThijs breekt een lans voor het gebruik van VMWare: "Men schildert VMWare vaak af als traditioneel, maar het is 'battle tested'. Een set aan VMWare servers is enorm stabiel, kan veel load aan, en kan budgetvriendelijker zijn. Voor applicaties die een duidelijk afgebakend capaciteitsplafond hebben, is deze 'oude' manier van werken nog steeds heel efficiënt, en is schaalbaarheid op basis van periodieke pieken zeker mogelijk."

Het grote voordeel van managed hosting bij Combell, is dat de klant er niet alleen voor staat en hij deskundig advies krijgt. Heeft de klant bijvoorbeeld extra capaciteit nodig, dan wordt gekeken naar het geheel. Waarom is die extra capaciteit nodig? Neemt een bepaalde app misschien te veel resources? "Bij een probleem moet je er niet meteen infrastructuur tegenaan gooien, want dat kost geld. Het is beter om te zoeken naar dezelfde functionaliteit maar minder infrastructuur. De wortel van het probleem aanpakken."

En daarvoor zorgt Combell. "Wij focussen ons bij de infrastructuur op het optimaliseren van jouw stack. Misschien is er een extra laag caching nodig. Dat kan de footprint op de infrastructuur verlagen, en is dus goedkoper. Met Application Performance Monitoring tools kunnen wij de zogenaamde 'hotspots' van je applicatie identificeren, zodat wij de ontwikkelaars kunnen adviseren hoe zij bepaalde onderdelen van de code kunnen optimaliseren. Bepaalde inefficiënties in code worden pas duidelijk bij piekbelasting, omdat bij lage belasting de vertraging niet voelbaar is. Met loadtesten slagen wij erin om bepaalde 'verborgen hotspots' te ontdekken."

Thijs maakt van zijn devies  "Don't throw servers at the problem" een erezaak. "Hosting is weliswaar onze core business, maar het is niet onze bedoeling om de klant te veel hardware te verkopen".

Ontdek managed hosting bij Combell

 

Nieuwe tools zorgen voor automatisatie zonder lock-in

In februari dit jaar hield Thijs een talk op het PHPUK 2018 event. Het thema: "Build, Provision and Deploy in the Cloud". Tijdens het podcast-gesprek worden ook enkele technischere thema's aangestipt die hij in zijn presentatie behandelde.

Zo legt Thijs om te beginnen de nadruk op het feit dat je automatisering nodig hebt om server-infrastructuur vloeiend te houden. Voorbij is de tijd van "op het internet gaan", iedereen is altijd online, en dus moet alles continue draaien. Het internet breidt ook steeds verder uit, zodat er steeds meer servers bijkomen. Het is een hele toer om die te beheren, om de capaciteit en de inrichting van de infrastructuur vloeiend te houden.

Meestal wordt hiervoor beroep gedaan op gestandaardiseerde tools zoals VMWare, AWS (Amazon Web Services), Azure van Microsoft, Google Cloud Platform en OpenStack, maar die zijn meestal bedacht om te werken met een bepaalde infrastructuur. Thijs ontdekte echter dat het ook anders kan - met tools zoals Packer en Terraform kan je de infrastructuur automatisch inrichten, zonder de lock in, cloud-vendor agnostic.

TerraformMet Terraform bijvoorbeeld kan je de volledige stack resources managen en combineren, zonder afhankelijk te zijn van één bepaalde cloud-aanbieder. Maar dit vereist wel dat de specifieke features van deze cloudomgeving ondersteund worden door Terraform, en dat is niet altijd het geval.

"Dit heeft echter wel een belangrijk gevolg: sysadmins zijn ontwikkelaars geworden, en infrastructuur is nu code geworden. Maar waarom zouden overal ter wereld sysadmins telkens opnieuw code schrijven om een infrastructuur op te bouwen? Waarom niet werken met modules die ook door anderen gebruikt kunnen worden? Waarom geen script schrijven om deze taken te automatiseren?", vertelt Thijs.

Sysadmins zijn ontwikkelaars geworden, en infrastructuur is code geworden. [Thijs Feryn, Combell evangelist]

De cloud automation tools gaan ervan uit dat je niet telkens opnieuw het wiel moet uitvinden. Zij bieden parametriseerbare modules aan die je in staat stellen om heel snel bepaalde cloud-componenten op te zetten. Zo biedt Terraform open source modules aan de je via de Terraform registry kan downloaden. Hoe deze tools juist werken verneem je in de podcast en op de websites van Ansible, Terraform, Packer.

Beluister hier de hele podcast "Build, Provision and Deploy in the Cloud", aflevering 144 van de erg interessante podcastreeks "Three Devs and a Maybe".