, , ,

Mijn cloud homelab

Quint Monfils avatar
Mijn cloud homelab

Tijdens mijn stage bij Systemec begon het idee van een homelab weer te borrelen. Bij Systemec ben ik in aanraking gekomen met Microsoft 365 en heb ik een omgeving met Wazuh opgezet. Ik had zin om te experimenteren met servers, om gewoon lekker zelf dingen op te zetten en te prutsen. Iets wat ik eigenlijk sinds mijn eigen Nextcloud installatie niet meer echt had gedaan. Het was dus hoog tijd om weer eens een server te huren en weer eens aan de slag te gaan! Zoals van ouds 😎

Wat heb ik tot nu toe al gemaakt?

De afgelopen tijd heb ik een heleboel gemaakt in mijn cloud homelab, maar niet zonder slag of stoot. Maar laat ik beginnen bij het begin:

Docker

Net nadat mijn server was opgezet, ben ik meteen gaan nadenken: wat wil ik op mijn server gebruiken, wat moet hij doen en wat ga ik installeren? De VPS die ik heb gehuurd, ga ik gebruiken als een controleserver, om in de toekomst mijn andere servers te monitoren en te beheren. Om dat schaalbaar te doen, heb ik Docker geïnstalleerd.

Voor de lezer die niet weet wat Docker is: stel je voor dat je een applicatie in een soort digitale doos stopt, met álles wat hij nodig heeft om te draaien. In plaats van losse installaties op je server, kun je met Docker meerdere van die dozen (containers dus) draaien zonder dat ze elkaar in de weg zitten. Het is voor mij een manier om snel, overzichtelijk en gecontroleerd te werken, zonder dat ik meteen mijn hele systeem naar de ‘penarie’ help 😁

Ik vergelijk het wel eens met mini-virtuele machines, al zijn de verschillen erg groot. Ik heb deze Docker omgeving geïnstalleerd met Portainer, een open-source programma die Docker eigenlijk visueel maakt. Zie de foto hieronder hoe dat eruit ziet:

Nginx

Omdat ik natuurlijk mijn netwerk wil laten groeien op ten duur en niet alleen met IP-adressen en poortnummers wil werken, gebruik ik NGINX Proxy Manager. Daarmee kan ik mijn zelfgehoste applicaties koppelen aan domeinnamen, zoals monitor.domeinnaam.nl. Dat is niet alleen overzichtelijker, maar geeft mij ook veel controle over mijn diensten en de bereikbaarheid.

Uptime Kuma

Tot slot, om mijn websites en diensten in de gaten te houden, gebruik ik een open-source programma genaamd Uptime Kuma. Hiermee kan ik via HTTP(S) checks eenvoudig monitoren of alles nog online is. Als er iets uitvalt, krijg ik meteen een via Discord een melding. Zo weet ik onmiddelijk wanneer mijn websites offline en kan ik hier meteen naar handelen.

Wat wil ik nog toevoegen?

In de toekomst wil ik graag een tool toevoegen waarmee ik op afstand mijn devices kan overnemen. Een programma zoals Meshcentral, of Rustdesk. Zo kan ik altijd en overal mijn eigen apparaten beheren, superhandig als er iets misgaat en ik niet fysiek in de buurt ben (bij mijn computer thuis bijvoorbeeld. Misschien draai ik dit op mijn huidige controleserver, of misschien richt ik er een aparte server voor in. Dat moet ik nog even uitvogelen, maar alleen tijd zou dat kunnen vertellen.

Daarnaast lijkt het me een goed idee om een tweede server op te zetten, speciaal voor het hosten van websites en het draaien van een monitoringpakket zoals Zabbix. Misschien kan ik hier zelfs websites voor familie/vrienden hosten en mezelf natuurlijk. Uiteraard wil ik ook deze server volledig inrichten met Docker, en beheren via Portainer, want om eerlijk te zijn, dat is toch gewoon vet?