Verbeter site uptime en performance: container hosting uitgelegd

Leestijd
4 minuten
Auteur
William Edwards
Datum
21 mei 2019

Wat is container hosting en hoe verhoudt het zich tot VPS? Verbeter uptime en laadtijden van al je websites met containers.

De ICT- en hostingmarkt evolueert razendsnel. Er worden in rap tempo nieuwe technieken ontwikkeld. Waar containers 10 jaar geleden nog onbekend waren, worden ze tegenwoordig in de meest kritische omgevingen toegepast.

Voor onze webbureau hosting gebruiken wij containers. In dit artikel lichten we toe wat container hosting precies is. Daarnaast laten we zien hoe container hosting zich verhoudt tot VPS en waarom container hosting de toekomst van webhosting is.

De uitdagingen van shared hosting

Het internet begon als een kleine en besloten plek. Om een website op te zetten moest je een fysieke server aanschaffen en in een datacenter plaatsen. Daarnaast was het beheren van de server de verantwoordelijkheid van de website-eigenaar. Al met al best onhandig.

Naarmate het internet groeide is shared hosting uitgevonden. Door meerdere websites op één server te plaatsen werden beheerperikelen opgelost. Zoals de naam al doet vermoeden, heeft shared hosting een groot nadeel: de server performance en uptime is afhankelijk van andere websites op dezelfde server. Waarschijnlijk gaan jouw websites slecht presteren als een andere website gehackt wordt of inefficiënt opgezet is. In het ergste geval gaan jouw websites zelfs down door je 'virtuele buren'.

Het voordeel van shared hosting is dat de omgeving volledig beheerd is. Het grote nadeel van shared hosting is dat iedere website de volledige server-capaciteit kan gebruiken, met downtime als gevolg. Door deze eigenschap is shared hosting geen goede oplossing voor professionele websites.

Tot een aantal jaar geleden was een VPS een goed alternatief voor shared hosting. Met een VPS zijn jouw websites afgeschermd van andere VPS-en bij dezelfde hoster. Echter, als je meerdere websites op een VPS onderbrengt, dan heb je dezelfde uitdaging als met shared hosting. Je hebt dan meerdere websites die stuk voor stuk de volledige server-capaciteit kunnen verbruiken.

De ideale oplossing: container hosting

Met container hosting combineren we alle voordelen van shared hosting met de voordelen van VPS. Door de uitstekende uptime en performance met containers worden websites sneller en succesvoller. Daarnaast is container hosting een stuk veiliger, waarover later in het artikel meer. Samen met onze hoogwaardige support is Cyberfusion container hosting het ideale hostingplatform voor webbureaus.

De kracht van container hosting zit hem in de isolatie van websites op dezelfde server. Met website-isolatie wordt iedere website in een eigen 'container' geplaatst. Hierdoor heeft een incident op één website nooit effect op andere websites. De websites zijn ten slotte geïsoleerd in hun eigen container.

Met container hosting kan één website dus niet de volledige server-capaciteit verbruiken. Maar hoe werkt container hosting eigenlijk? Container hosting bestaat uit drie onderdelen: namespaces, filesystem-isolatie en 'cgroups'. We leggen graag uit wat dit betekent.

Namespaces

Op een server draaien meerdere processen, bijvoorbeeld een database-, PHP- en webserver-proces. Daarnaast heeft iedere website zijn eigen processen. Een website met veel verkeer krijgt bijvoorbeeld een eigen PHP-proces. Om een hosting-omgeving te beveiligen is het belangrijk dat iedere gebruiker alleen zijn eigen processen kan zien. Dit bereiken we door middel van namespaces.

Om het belang van namespaces te laten zien loggen we in als een normale gebruiker met SSH, en laten we de output van het ps aux commando zien. Dit commando laat alle processen zien waar de gebruiker toegang tot heeft.

Met containers

USER         PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
test+  226521  0.0  0.0 247204 13108 ?        S    14:24   0:00 lsphp
test+  244901 28.9  0.1 377584 65164 ?        Ss   14:25   0:04 lsphp:mains/test.nl/private_html/index.php
test+  245313  1.0  0.0 115440  1992 pts/1    S    14:25   0:00 bash
test+  245378  0.0  0.0 260680 20516 ?        Rs   14:25   0:00 lsphp:ins/test.nl/private_html/wp-cron.php
test+  245385  0.0  0.0 155360  1812 pts/1    R+   14:25   0:00 ps aux

Met container-isolatie zien we alleen de processen van deze website. Hierdoor is het onmogelijk dat een kwaadwillende informatie van andere websites buitmaakt.

Zonder containers

another 21661  0.0  0.0  23184  2780 ?        S    20:59   0:00 dovecot/imap [<hier stond een mailadres>]
sponsor+ 21667  0.0  0.0  23184  2532 ?        S    20:59   0:00 dovecot/imap [<hier stond een mailadres>]
another 21669  0.0  0.0  23184  2532 ?        S    20:59   0:00 dovecot/imap [<hier stond een mailadres>]
another 21670  0.0  0.0  23184  2532 ?        S    20:59   0:00 dovecot/imap [<hier stond een mailadres>]
dovecot  21858  0.0  0.0  51016  3360 ?        S    21:00   0:00 dovecot/pop3-login
another   21975  0.0  0.0  21132  2664 ?        S    21:01   0:00 dovecot/pop3 [<removed>]
root      1774  0.0  0.0 259572   188 ?        SNsl mei12   0:26 /usr/sbin/r1soft/bin/cdp -s -c /usr/sbin/r1soft/conf/agent_config
root      2597  0.0  0.2 269884 18728 ?        Ss   mei12   2:18 /usr/bin/spamd --pidfile /var/run/spamd.pid -d -c -m 15 --ipv4
root      2771  0.0  0.0 191464  5180 ?        Ss   mei12   2:40 /usr/sbin/httpd -k start
root     26564  0.0  0.0  30808   788 ?        S    mei17   1:10 dovecot/auth worker: idling

Zoals je in dit voorbeeld zonder container-isolatie ziet, worden zelfs de processen van andere websites getoond. Ook stond er een wachtwoord van een database in de output. Op de gemiddelde hosting server draaien er gevoelig processen van andere gebruikers, waardoor de kwaadwillende toegang krijgt tot een andere website...

Cgroups

Door middel van 'control groups' (cgroups) kan één website niet de volledige server-capaciteit gebruiken. Iedere website krijgt een bepaald aantal geheugen, CPU en I/O toegewezen. Afhankelijk van de grootte van een website wordt de server-capaciteit evenredig verdeeld over de websites.

Meer weten over de technische werking van cgroups? Lees het artikel op Wikipedia.

Filesystem

Tot slot is het van belang dat de ene gebruiker niet kan rondneuzen in de bestanden van een andere gebruiker. Wanneer een website gehackt wordt, worden er vaak scripts geplaatst waarmee sensitieve bestanden gelezen worden. Dit heet filesystem cloaking. Draaien jouw websites op servers die niet werken met filesystem-isolatie? Dan loop je het risico dat een gehackte website de gegevens van andere websites buitmaakt.

Voor de technische mensen onder ons: zelfs met correcte Unix-permissies is het risico op dergelijke veiligheidslekken groot. Zo is in de Apache web server in april 2019 een grote 'privilege escalation' bug gevonden. Door deze bug konden servers en VPS-en zonder filesystem-isolatie compleet overgenomen worden door hackers. Servers met filesystem-isolatie waren minimaal getroffen, omdat het exploiteren van de bug gelimiteerd is tot de container waarin de website draait.

Uitleg over filesystem-isolatie

Container hosting voor webbureaus bij Cyberfusion

Met container hosting worden de beste eigenschappen van traditionele hosting-oplossingen gecombineerd. Cyberfusion is één van de eerste partijen die webbureaus in staat stelt nog betere diensten te leveren met containers.

Met container hosting voor webbureaus:

  • Wordt je hosting meer schaalbaar;
  • Worden je websites sneller;
  • Worden je klanten succesvoller

Gebruik je nog shared hosting of VPS? Neem dan contact met ons op zodat we kunnen toelichten hoe we jouw hosting beter kunnen maken dan de concurrentie.

Ook interessant
Cyberfusion is verhuisd naar de Eindhoven Tower
Leestijd
< 1 minuut
Auteur
William Edwards
Datum
10 juli 2020

Op 1 juni zijn we verhuisd naar de Eindhoven Tower! We hebben het iconische Evoluon ingeruild voor een nieuwe basis tegenover Eindhoven Centraal station.

IPv6 als standaard: we gaan je actief informeren!
Leestijd
2 minuten
Auteur
William Edwards
Datum
19 mei 2020

Vanaf juni informeren we partners proactief over IPv6. Als websites geen AAAA-record hebben, gaan we helpen bij de implementatie van IPv6.

NGINX op clusters: nóg snellere sites!
Leestijd
2 minuten
Auteur
William Edwards
Datum
4 mei 2020

Nieuw op 100% uptime Cyberfusion clusters: NGINX én Apache webservers zijn nu beschikbaar! Serveer content óók tijdens bezoekerspieken razendsnel!

Direct Contact

Meer informatie? Neem direct contact op!

icon-phone

Bel nu: 040 - 711 44 96

icon-mail

Mail nu: sales@cyberfusion.nl