Naar de inhoud
Deploy
Blader door de documentatie

Servertypes: app, web, worker, database, cache en meer

Servertypes in Vimonto Deploy vergeleken: app, web, worker, database, cache, Meilisearch en load balancer. Wat elk type installeert en welke pagina's het heeft.

Bekijk als Markdown Bijgewerkt op 7 oktober 2026

Een servertype is de rol die je een server geeft als je hem aanmaakt. Het type bepaalt wat Vimonto Deploy installeert tijdens het inrichten, welke poorten de firewall opent en welke pagina's de server in Vimonto Deploy heeft. Weet je niet welke je nodig hebt? Kies een App-server: die draait alles op één machine en past bij de meeste applicaties.

Met de andere types verdeel je een applicatie over meerdere servers als hij groeit: webservers achter een load balancer, aparte workers voor queues en eigen database-, cache- en zoekservers, verbonden via een privénetwerk.

De overzichtspagina van een server met de zijbalk met de pagina's die zijn servertype heeft
De pagina's in de zijbalk van een server hangen af van zijn type

Welk servertype moet ik kiezen?

Type Gebruik het voor Installeert
App-server Alles op één server. Past bij de meeste applicaties. Nginx, PHP, een database (optioneel), Redis, Memcached, Node.js, Supervisor
Webserver Je applicatie serveren, met de database en cache op andere servers. Nginx, PHP, Node.js, Supervisor
Workerserver Queue workers en andere langlopende PHP-processen. Niet bereikbaar via HTTP. PHP, Supervisor
Databaseserver Een database voor je app-, web- en workerservers. MySQL, MariaDB of PostgreSQL
Cacheserver Redis en Memcached voor je app-, web- en workerservers. Redis, Memcached
Meilisearch-server Een snelle zoekmachine voor je applicatie, bereikbaar via het privénetwerk. Meilisearch
Load balancer Het verkeer voor een domein verdelen over je app- en webservers. Nginx

Elk type krijgt ook dezelfde basis: Ubuntu-updates, de servergebruiker, SSH-beveiliging, de ufw-firewall, fail2ban, automatische beveiligingsupdates, swap, standaard geplande taken en de monitoringagent.

Welke pagina's heeft elk type?

Een server toont alleen de pagina's die zinvol zijn voor wat erop is geïnstalleerd.

Pagina App Web Worker Database Cache Meilisearch Load balancer
Overzicht ✓ ✓ ✓ ✓ ✓ ✓ ✓
Sites ✓ ✓ – – – – ✓
Databases ✓¹ – – ✓ – – –
Back-ups ✓¹ – – ✓ – – –
PHP ✓ ✓ ✓ – – – –
Processen ✓ ✓ ✓ – – – –
Planner ✓ ✓ ✓ ✓ ✓ ✓ ✓
Monitoring ✓ ✓ ✓ ✓ ✓ ✓ ✓
Terminal ✓ ✓ ✓ ✓ ✓ ✓ ✓
Netwerk ✓ ✓ ✓ ✓ ✓ ✓ ✓
SSH-sleutels ✓ ✓ ✓ ✓ ✓ ✓ ✓
Services ✓ ✓ ✓ ✓ ✓ ✓ ✓
Instellingen ✓ ✓ ✓ ✓ ✓ ✓ ✓

¹ Alleen als de app-server met een database is aangemaakt, niet met Geen.

App-server

De app-server heeft alles: Nginx, PHP (de versie die je kiest, met Composer), Node.js en npm, een database, Redis, Memcached en Supervisor voor queue workers. Poort 80 en 443 staan open voor je sites. De database, Redis en Memcached luisteren alleen op de server zelf (localhost), dus ze zijn van buitenaf niet bereikbaar.

Je kunt een app-server zonder database aanmaken door onder Database Geen te kiezen, bijvoorbeeld als je een aparte databaseserver gebruikt. Hij heeft dan geen pagina's Databases en Back-ups.

Webserver

Een webserver draait je sites zoals een app-server, met Nginx, PHP, Node.js en Supervisor, maar zonder database of cache. Verbind hem via een privénetwerk met een databaseserver en een cacheserver. Zet meerdere webservers achter een load balancer om meer verkeer aan te kunnen.

Workerserver

Een workerserver heeft PHP en Supervisor voor queue workers en andere processen, en geen Nginx. De firewall laat alleen SSH toe, dus hij is niet bereikbaar via HTTP. Gebruik hem om zwaar queuewerk van je webservers af te halen.

Databaseserver

Een databaseserver draait alleen MySQL (8.4 LTS of 8.0), MariaDB (11.4 LTS of 10.11 LTS) of PostgreSQL (18, 17 of 16); voor dit type is een database verplicht. Anders dan op een app-server luistert de database op alle adressen, zodat je andere servers ermee kunnen verbinden. Staat de server in een privénetwerk, dan staat het inrichten poort 3306 (MySQL en MariaDB) of 5432 (PostgreSQL) alleen vanuit dat netwerk toe. Zonder privénetwerk weigert de firewall al het inkomende verkeer naar de database tot je op de pagina netwerk van de server een regel toevoegt voor de adressen van je andere servers.

Het inrichten maakt een databasegebruiker aan met de naam van de servergebruiker (standaard vimonto), met volledige rechten en het databasewachtwoord dat één keer wordt getoond, en een database met dezelfde naam. Beheer databases en gebruikers op de pagina databases en plan back-ups naar je eigen opslag.

Cacheserver

Een cacheserver draait alleen Redis en Memcached. Ze luisteren op alle adressen, zodat je andere servers ze kunnen gebruiken. Redis draait hier zonder wachtwoord, dus alleen de firewall houdt het internet buiten. Staat de server in een privénetwerk, dan staat het inrichten poort 6379 (Redis) en 11211 (Memcached) alleen vanuit dat netwerk toe. Zonder privénetwerk kan niets ze bereiken tot je op de pagina netwerk een regel toevoegt voor de adressen van je andere servers.

Meilisearch-server

Een Meilisearch-server draait de zoekmachine Meilisearch als systeemservice op poort 7700, in productiemodus. De master key wordt gegenereerd als de server wordt aangemaakt en één keer getoond, samen met het sudo-wachtwoord, als Meilisearch master key. Staat de server in een privénetwerk, dan staat het inrichten poort 7700 alleen vanuit dat netwerk toe; voeg anders een regel toe op de pagina netwerk. Stel het privé-adres van de server en de sleutel in je applicatie in (voor Laravel Scout: MEILISEARCH_HOST en MEILISEARCH_KEY).

Servers in een privénetwerk

Database-, cache- en Meilisearch-servers die je in een privénetwerk aanmaakt, krijgen meteen firewallregels voor hun services. Je app-, web- en workerservers in hetzelfde netwerk kunnen dan zonder verdere instellingen verbinden:

Type Poorten toegestaan vanuit het privénetwerk
Databaseserver 3306 (MySQL, MariaDB) of 5432 (PostgreSQL)
Cacheserver 6379 (Redis), 11211 (Memcached)
Meilisearch-server 7700

De regels staan het adresbereik van het netwerk toe, bijvoorbeeld 10.0.0.0/16. Kent Vimonto Deploy het bereik niet, dan gebruikt het de /16 rond het privé IP-adres van de server. Je vindt de regels op de pagina netwerk van de server, gemarkeerd als Standaard; je kunt ze verwijderen of er eigen regels naast zetten. Het internet blijft buiten: de firewall weigert al het andere inkomende verkeer.

Servers zonder privénetwerk, ook een eigen VPS, krijgen deze regels niet: voeg dan zelf een regel toe voor elke server die erbij moet.

Load balancer

Een load balancer draait alleen Nginx, met poort 80 en 443 open, en verdeelt het verkeer voor een domein over je app- en webservers. Hij heeft geen PHP. De enige soort site die je erop kunt aanmaken is een Load balancer-site (onder Nieuwe site), en die soort site kan alleen op een load balancer-server staan.

Op de pagina Load balancing van de site kies je:

  • de Methode: Round robin (elke server om de beurt, naar gewicht), Minste verbindingen (de server met de minste open verbindingen) of IP-hash (elke bezoeker blijft bij één server, op basis van zijn IP-adres);
  • de servers waar hij verkeer naartoe stuurt: met Server toevoegen kies je een actieve app- of webserver van je organisatie, met een Poort, een Gewicht (hoger krijgt meer verkeer) en desgewenst als Reserveserver, die alleen verkeer krijgt als de andere servers uitvallen (niet met IP-hash, dat Nginx niet combineert met reserveservers). Met Bewerken wijzig je later de poort, het gewicht en de reserve-instelling. Het verkeer gaat via het privénetwerk als beide servers in hetzelfde netwerk staan.

Elke app-server heeft een site nodig voor hetzelfde domein. De load balancer geeft het IP-adres van de bezoeker door aan de app-servers, en ook of die via HTTPS binnenkwam; de sites daar vertrouwen die informatie alleen van deze load balancer. De load-balanced site heeft een eigen domein nodig voordat je app-servers toevoegt, omdat die niet kunnen antwoorden voor zijn on-deploy.link-adres. Zolang er nog geen app-server is toegevoegd, krijgen bezoekers een 503. Lees in load balancing hoe je het helemaal opzet.

Veelgestelde vragen

Begin ik met één app-server of met aparte servers?

Begin met één app-server. Dat is de eenvoudigste en goedkoopste opzet en die kan veel verkeer aan. Splits een databaseserver, cacheserver of workerservers af als één server niet meer genoeg is, of als je webservers los wilt opschalen.

Hoe praten aparte servers met elkaar?

Zet ze bij het aanmaken in hetzelfde privénetwerk. Database-, cache- en Meilisearch-servers staan hun poorten dan al toe vanuit dat netwerk (zie servers in een privénetwerk); voor de rest sta je de poort toe vanaf het adresbereik van het netwerk op de pagina Netwerk van de ontvangende server. Gebruik het privé IP-adres op het overzicht van elke server in de instellingen van je applicatie.

Kan ik later een database aan een webserver toevoegen?

Het inrichten installeert wat het type nodig heeft wanneer de server wordt aangemaakt. Kies een app-server als je een database op dezelfde machine wilt, of maak een databaseserver aan en verbind daarmee.