Wat is er geïnstalleerd op je k3s-server?
- k3s uit het stabiele kanaal van het officiële installatieprogramma, op de actuele versie op het moment van installeren
- Een cluster met één node, met de Kubernetes-API op poort 6443 en een certificaat dat je IP-adres bevat
- De Traefik ingress controller op de poorten 80 en 443
- CoreDNS, local-storage en metrics-server, zoals meegeleverd met k3s
- De eigen containerd-runtime van k3s, zonder geïnstalleerde Docker
- Een kubeconfig-bestand op /etc/rancher/k3s/k3s.yaml, alleen leesbaar voor root
- Firewall met de poorten 22, 80, 443 en 6443 open, en de pod- en servicenetwerken toegestaan
Welke grootte heb je nodig voor k3s?
De officiële documentatie van k3s vraagt minimaal 2 CPU-cores en 2 GB RAM op een servernode, dus deze installatie begint bij 2 cores. k3s draait op 2 GB, maar dat laat weinig ruimte voor je apps. Als vuistregel kijk je naar 4 GB voor een paar kleine pods en naar 8 GB voor een database of meer services. RAM en CPU groeien vanuit je paneel; de server herstart één keer, en je gegevens en IP-adres blijven hetzelfde. Permanente volumes blijven op dezelfde schijf.
| Gebruik | Grootte | Prijs | Kiezen |
|---|---|---|---|
| Starter | 2 GB RAM · 2 vCore · 40 GB NVMe | $4.51/mnd | |
| Gemiddeld | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mnd | |
| Krachtig | 8 GB RAM · 4 vCore · 120 GB NVMe | $13.62/mnd |
Voor wie is het?
- Ontwikkelaars die Kubernetes willen leren op een eigen cluster
- Teams die een kleine app uitrollen met manifests of Helm
- Pipelines die met kubectl uitrollen
- Iedereen die lokale manifests op een echte server wil testen
Wat gebeurt er na je bestelling?
- Zet de CPU op minimaal 2 cores, kies je grootte en rond je betaling af.
- Je server start op en k3s installeert zichzelf. Wacht op het tabblad Overzicht tot de rij App zegt dat k3s klaar is.
- Haal het bestand op: scp root@IP:/etc/rancher/k3s/k3s.yaml ~/.kube/config. Dit overschrijft een bestaand bestand, dus kopieer dat eerst.
- Vervang in de regel server van het bestand 127.0.0.1 door het IP-adres van je server.
- Probeer het: kubectl get nodes. De node hoort Ready te tonen.
- Rol je app uit en maak hem bereikbaar op de poorten 80 en 443 met een Ingress.
Bij elke server
- Dagelijkse back-up inbegrepen in de prijs
- Onbeperkt verkeer
- Volledige rootrechten
- Schaal RAM en CPU later op of af, en laat de schijf groeien
- Locatie: Istanbul · IST-1.
Goed om te weten
- k3s.yaml is de volledige toegangssleutel van het cluster, dus deel hem niet. Poort 6443 staat open naar internet en de toegang gebruikt het certificaat in dit bestand; je kunt hem met ufw beperken tot je eigen IP-adres.
- Het cluster heeft één node, dus je apps liggen kort stil terwijl de server herstart.
- k3s verlengt de certificaten in de beheer-kubeconfig bij elke start. Haal je lokale kopie af en toe opnieuw op, zodat hij niet verloopt.
- De installatie voegt geen certificaatbeheer toe. Voor HTTPS op je Ingresses definieer je het certificaat zelf.
- Upgrades gebeuren niet vanzelf. De officiële manier is het installatieprogramma opnieuw uitvoeren met dezelfde instellingen, want instellingen die je weglaat gaan verloren.
- Een tweede node heeft 8472/UDP en 10250/TCP nodig. De officiële documentatie zegt dat 8472 niet aan internet blootgesteld mag worden, dus sta alleen het IP-adres van die server toe.
Vragen en antwoorden over k3s
Wat is k3s, en wat is het verschil met Kubernetes?
k3s is een volledig conforme, lichtgewicht Kubernetes-distributie. kubectl en je manifests werken op dezelfde manier. Onderdelen zoals Traefik, CoreDNS en lokale opslag worden samen met k3s geïnstalleerd, dus je hoeft ze niet apart toe te voegen.
Hoeveel RAM heeft k3s nodig?
De officiële documentatie vraagt minimaal 2 cores en 2 GB RAM op een servernode. Als vuistregel is 2 GB genoeg voor k3s zelf, is 4 GB een goed begin voor een paar apps en 8 GB voor een database en meer services.
Hoe maak ik verbinding met mijn k3s-cluster?
Haal het bestand op met scp root@IP:/etc/rancher/k3s/k3s.yaml ~/.kube/config, vervang daarin 127.0.0.1 door het IP-adres van je server en voer kubectl get nodes uit. Op de server zelf werkt ook k3s kubectl.
Hoe maak ik mijn app bereikbaar op k3s?
Definieer een Service en een Ingress. De Traefik ingress controller luistert op de poorten 80 en 443 en stuurt verzoeken door naar je service. Voeg voor HTTPS je eigen certificaat toe als Secret.
Hoe werken permanente volumes op k3s?
k3s bevat de Local Path Provisioner met de opslagklasse local-path. Volumes worden aangemaakt onder /var/lib/rancher/k3s/storage op de server, dus ze zitten in de nachtelijke back-up. De laatste 7 dagen blijven bewaard en dit zit in de prijs.
Kan ik Helm met k3s gebruiken?
Ja. De tool helm op je computer verbindt met hetzelfde kubeconfig-bestand. k3s past ook zelf bestanden toe die je in /var/lib/rancher/k3s/server/manifests zet, en dat geldt ook voor HelmChart-resources.