Howtos, artikelen en informatie over VPS / Virtual private servers. CentOS, Ubuntu, Debian, Fedora en Windows!
Het woord VPS is een afkorting van het volledige woord Virtual Private server. Een VPS is eigenlijk een volledige fysieke of dedicated server die wordt opgedeeld in kleinere servers, ook wel virtuele servers genoemd.
De VPS kan gewoon voorzien worden van eigen resources zoals CPU cores, RAM en harddisk(s) en er kan ook een eigen OS ( besturingssysteem ) geinstalleerd worden. In theorie is het dus exact hetzelfde als een dedicated server of fysieke server maar dan dus virtueel.
De VPS is ontstaan omdat er heel veel fysieke servers waren die maar belast werden voor enkele procenten. De fysieke server draaide dus eigenlijk helemaal niet efficient, stroom werd niet efficient gebruikt en de hardware dus ook niet.
Hier ontstond het idee om de VPS te ontwikkelen. De software die ontwikkelt is zorgde ervoor dat de VPS servers volledig afgescheiden van elkaar konden draaien als processen op een fysieke server. Dit houdt dus in dat de ene VPS niet bij de data of resources van de andere VPS kan. Hierdoor is een VPS dus ook voorzien van een goede security laag en doet het op dit gebied niet onder voor een dedicated server.
Hoe zit het dan met de performance van een VPS? Dat is een goede vraag! Aangezien de VPS de hardware / resources deelt van de fysieke server met andere VPS-en, zou je denken dat het trager moet of kan zijn.
Bij het ontstaan van de VPS was het misschien nog niet helemaal zo snel, maar tegenwoordig is dat allemaal wel opgelost. De resouces die de fysieke server heeft worden echt afgescheiden en volledig dedicated toegekend aan de VPS. Hierdoor kan de VPS dus eigenlijk de toegekende CPU cores en RAM volledig voor zichzelf gebruiken en heb je bijna geen verschil met een dedicated server meer. Echter..
De enige kleine vertraging die er nog is als je het vergelijkt met een dedicated server is de overhead van de softwarelaag. De overhead ( de VPS software die het opdelen mogelijk maakt ) heeft ook rekenkracht en RAM nodig en daar gaat iets verloren. Dat is tegenwoordig dan ook nog het enige waar wat performance verloren wordt, maar dat is dan ook het enige en zeer minimaal.
Een ander voordeel van een VPS is dat je ervoor kan zorgen dat deze “High available” is. Ook wel een hoge beschikbaarheid genoemd.
Hoe werkt dit? De werking is als volgt: Aangezien de harddisk van een VPS een image is, zorgt dit ervoor dat je de harddisk kunt verplaatsen en openen op een andere fysieke server die ook de zelfde VPS software draait.
Als je er dus voor zorgt dat de harddisk van de VPS in geval van een storing aan de fysieke server beschikbaar is, dan kun je de VPS herstellen op een reserve / andere beschikbare fysieke server met de VPS software. Dit kan zelfs in enkele seconden na het uitvallen van de eerste fysieke server, waarna de VPS in minder dan één minuut weer terug online is en verder gaat waarmee het gebleven was.
Maar wat als de VPS harddisk op die kapotte fysieke server staat?
In dat geval kun je de VPS dus niet herstellen op een andere server. Daarom is het ook bij High availability noodzaak dat je de VPS harddisks ( images ) opslaat op een SAN server( Storage area network server ). De fysieke server verbind met de SAN en kan zodoende de VPS harddisk lezen.
Indien de eerste fysieke server dus uitvalt met een storing, dan kan de 2e fysieke de VPS harddisk openen vanaf de SAN server en zodoende de VPS opstarten.
Een dergelijke omgeving met meerdere hypervisors ( fysieke servers ) en een SAN server noemen we dan ook een : High availability omgeving of ook wel een cloud.
Wat zijn de voordelen en nadelen van een VPS? We hebben het uitgezocht en hieronder opgesomd voor je:
Benieuwd naar wat de meest gebruikte VPS software door hosting en VPS providers is? Wij hebben het uitgezocht en hieronder opgesomd:
Een VPS kan in theorie voorzien worden van elk besturingssysteem welke beschikbaar is op de markt. Het is namelijk gewoonweg een PC en dus is heb je daardoor geen limiet qua besturingssysteem.
De besturingssysteem kun je wel opdelen in de volgende 2 categorieen:
Onder Linux server heb je honderden besturingsystemen, aangezien het opensource is zijn er in het verleden veel varianten gebouwd op de orginele Linux kernel (core).
Veel gebruikte Linux VPS server besturingssysteem zijn:
Windows server dat ontwikkelt word door Microsoft, is een betaald besturingssysteem. Er is daardoor geen opensource code beschikbaar en daardoor zijn er ook geen andere varianten beschikbaar.
Indien je dus Windows server wil gebruiken, dan kom je altijd uit op de nieuwste versie van Windows server terecht.
Op je besturingssysteem kun je ook een extra laag installeren waarmee je de software, configuraties en diensten op jouw VPS kunt beheren. Vaak noemen we dit een controlepaneel.
Van de controlepanelen zijn er ook opensource varianten (gratis) en betaalde varianten (closed source). Hieronder zal ik de meest gebruikte VPS panelen opsommen:
Met de meeste VPS controlepanelen beschik je over een volwaardig webhosting platform in enkele klikken, waarmee je dus zelf gemakkelijk webhosting kunt leveren.
Via het beheer paneel kun je de complete server updaten, configureren en beheren. Je hebt eigenlijk geen echte technische kennis van het besturingssysteem meer nodig zodra je een controlepaneel op je VPS hebt geinstalleerd.
Een VPS is een unieke server op het internet, daardoor heeft het dus ook een eigen IP adres zodat het bereikbaar is vanaf elke plek ter wereld.
Je kunt jouw VPS dus aan de hand van jouw unieke IP adres overal ter wereld bereiken en bijvoorbeeld de diensten, zoals webhosting, die je erop installeert ook bereiken vanaf elke plek ter wereld.
Doordat jouw VPS een eigen IP adres heeft, kun je ook een domeinnaam koppelen aan de VPS door middel van DNS records. In dit geval verander je de DNS A records naar het IP van jouw VPS, waardoor de domeinnaam zodra je die bezoekt, de data zal laden via het IP adres van jouw VPS server.
Om de allerhoogste performance te geven bij VPS servers, word er vaak gebruik gemaakt van NVMe (Non-volatile memory express) harddisks.
Dit zijn extreem snelle opslag medium’s welke de uitstraling hebben van een RAM stick en direct in de PCI-Express bus gestoken worden. Hierdoor is de doorvoersnelheid van de disk naar het moederbord, processor en het RAM memory enorm hoog en heb je dus automatisch de aller hoogste snelheid.
De normale SSD’s die ten opzichte van een klassieke harddisk al snel waren, maakten gebruik van SATA of SAS poortjes. Hier zit een beperkte doorvoersnelheid aan en dat was vaak dan ook het limiet van de SSD schijf. Bij de NVMe disk die dus direct op een hoge snelheidsaansluiting (PCI-Express) aangesloten word, is die limitatie dus verdwenen.
Vaak worden er bij Performance VPS servers ook dedicated CPU resources en RAM toegekend. Dit houd in dat er geen enkele overselling(delen van de resources met anderen) toegepast word. Hierdoor heb jij met een Performance VPS gegarandeerd de complete core ter berschikking en de complete GB ram dat jij bij jouw VPS pakket afneemt.
Het kan ook zijn dat de storage / harddisk van jou VPS op een distributed storage cluster staat. In dit geval word er vaak gebruik gemaakt van Ceph, wat ervoor zorgt dat er van elke block met data, minstens 3 replica’s staan.
Die replica’s worden weer verdeeld over 3 verschillende disks, waarbij er ook gekeken word of die 3 verschillende disks ook in 3 verschillende servers zitten.
De volgende stap is om te kijken of de 3 verschillende servers in 3 verschillende datacenter racks staan. De laatste stap die Ceph checkt, is of de 3 verschillende racks ook in 3 verschillende datacenters staat.
Hierdoor zorgt Ceph er met haar kennis altijd voor dat de hoogste mogelijke redundatie die beschikbaar is opgezocht word.
Het kan ook zijn dat jouw VPS harddisk op RAID storage, ook wel local storage staat. Dit houd in dat er meerdere harddisk gecombineerd worden tot één groep schijven in de server.
Deze groep schijven zorgt ervoor dat het sneller is, doordat een bestand in meerdere stukjes geknipt word en over meerdere schijven weggeschreven word zodat je een hogere schrijfsnelheid hebt.
Ook zorgt RAID ervoor dat indien er één of twee disks uitvallen in de groep / RAID set, de data nog steeds beschikbaar blijft. Zodoende heb je dus ook een hogere redundancy en beschikbaarheid.
Het enige grote verschil met distributed storage, is dus dat de storage enkel toegankelijk is vanaf de server / hypervisor waar de disks in zitten.
Bij distributed storage kan elke hypervisor die via een netwerk verbinding verbonden is met het storage cluster de data bereiken.