Serverlaboratorium

Cognitec har det siste året bygget et serverlaboratorium (hjemmelab) for å kunne lære mer om teknologier som virtualisering, containere – og Kubernetes. I den forbindelse har det blitt satt opp tre minimaskiner, blant annet HP Elitedesk G4 og G6 som vist på bildet (bildet er KI-generert).

Her er liste over noe av programvaren som er installert i laboratoriet, hvor det aller meste er åpen kildekode:

  • Proxmox VE for å kjøre virtuelle maskiner og LXC Linux-containere med Ceph plattform for distribuert lagring
  • Virtuelle Ubuntu-servere og Windows 2022/2025 servere som kjører på Proxmox
  • Proxmox Backup Server for sikkerhetskopiering av VM-er og containere til et Synology NAS
  • Dockge for å kjøre Docker containere via docker compose
  • Authentik som identitetsleverandør for sikker pålogging mot eksponerte tjenester
  • Talos Kubernetes med Container Storage Interface (CSI)-drivere for å automatisk opprette av lagringsvolumer mot Ceph på Proxmox og mot eksternt Synology NAS
  • Wireshark med tunnel inn i Kubernetes-klyngen
  • Traefik som reverse proxy server både kjørende som Docker-container og kjørende i Kubernetes for å eksponere tjenester i virtuelle maskiner og i Kubernetes

Proxmox VE, basert på Debian Linux, har blitt svært populært for å kjøre virtuelle maskiner, spesielt etter at Broadcom fjernet gratisversjonen av VMware ESXi. Plattformen støtter både KVM for full virtualisering og LXC for lette containere. Med et brukervennlig webgrensesnitt kan du enkelt administrere klynger, utføre live migrering, ta snapshots og sikre høy tilgjengelighet (HA). Dette gjør Proxmox til et kraftfullt verktøy for å bygge fleksible og kostnadseffektive virtualiseringsløsninger, enten du eksperimenterer hjemme eller drifter et profesjonelt datasenter.

Talos er et minimalistisk, sikkerhetsfokusert operativsystem laget spesielt for å kjøre Kubernetes-noder. Det erstatter tradisjonelle Linux-distribusjoner med et uforanderlig (immutable) system der alt styres deklarativt via YAML-konfigurasjon – uten SSH eller pakkehåndtering. Talos gir dermed en svært konsistent, automatiserbar og sikker plattform for Kubernetes. Dette gjør det til et ideelt valg for utviklere og bedrifter som ønsker å strømlinjeforme Kubernetes-oppsett og sikre robust drift i krevende miljøer.

I kombinasjon med DNS fra Cloudflare og Traefik-spesifikke annotasjoner i Kubernetes, kan man for eksempel kjøre opp en nytt WordPress-portal på et nytt subdomene bare ved hjelp av en enkelt Helm-kommando.

Ved å bruke tre servere får man et robust grunnlag for høy tilgjengelighet (High Availability) og et stabilt klynge-quorum – altså flertallsbeslutningen som avgjør hvilken node som “eier” tilstanden i et distribuert system. Dette er spesielt viktig både for Proxmox-klyngen, som da kan flytte virtuelle maskiner automatisk ved feil på én node, og for Ceph-lagringen, som krever minst tre noder for å kunne speile og rebalansere data uten å miste tilgjengelighet. Også i Kubernetes gir tre kontrollnoder (Control Plane) et pålitelig cluster med redundans i etcd-databasen, slik at systemet fortsetter å fungere selv om én node skulle gå ned. Resultatet er et serverlaboratorium som oppfører seg som et ekte datasenter – komplett med feiltoleranse, replikering og kontinuerlig drift.

Man kan selvsagt stille spørsmålet: Hvorfor sette opp egne servere når alt nå kjøres i skyen? Vel, noe av hensikten er å lære seg lavnivåoppsett av kjøremiljøer for virtuelle maskiner og Kubernetes. Dessuten ville tilsvarende datakraft – med tanke på minne (192 GB), CPU og lagring – kostet betydelig mer hos en skyleverandør. Laboratoriet brukes først og fremst til opplæring, og dermed er ikke høy oppetid like kritisk som i et profesjonelt miljø. Som en bonus bidrar serverne også med litt ekstra varme på kontoret i vintermånedene.