* Hva er kubernetes? [[./images/k8s-logo.png]] ** "An Operating system for the cloud" - Mange distribusjoner! - Massevis av "kubernetes programmer" ** Distribuert konfigurasjonssystem - Nodes - Master nodes - Worker nodes - Komponenter som leser konfigurasjonen - kubelet - overlay network - service proxy - load balancer - storage manager - ingress manager - ... * Hvorfor kjøre homelab? - Læring - Kostnad - Privacy - Morro! * Hva kjører i min homelab? - Nextcloud - Gitea - Drone cicd - chat-bots - aur repo - openldap - bitwarden - mailserver - backup - jellyfin (soon(tm)) - k8s componenter! - k3s - openebs - cert-manager - loki - grafana - container registry - nginx ingress controller * Hvordan kjøre din egen k8s? - k3s - rancher - k0s - minikube - ... ** Med docker! - k3d - kind * Hardware - Single machine - Raspberry pi cluster - online vps - Virtuelle maskinger - Cross-cloud - Hybrid cloud ** Hva hvis nodes ikke er på samme nettverk? Wireguard! * Hvordan putter jeg ting i clusteret? ** Manuelt - docker hub ** Helm! [[./images/helm.png]] - artifacthub ** Fluxcd! * Gode ressurser / Ting å google ** Youtube - Jeff Geerling - TechnoTim - Just me and opensource - Level1Techs ** Reddit - selfhosted - homelab - datahoarder - k3s * Demo? #+begin_src bash k3d cluster create -p "8081:80@loadbalancer" --agents 2 kubectl get nodes kubectl get pods -A helm repo add podinfo https://stefanprodan.github.io/podinfo helm install podinfo podinfo/podinfo --set ingress.enabled=true curl -H 'Host: podinfo.local' localhost:8081 #+end_src