Kluster setup and IaaC using argoCD
Initial setup
Requirements:
- A running k3s instance
sealedsecrets
deployed
Installing argo and the app-of-apps
kubectl apply -k infrastructure/argocd
This will install argocd and its CRDs in a dedicated namespace. The app-of-apps is configured under kluster-deployments/
and deployed as well. This will bootstrap all other apps, as described in ./kluster-deployments
.
The app-of-apps will bootstrap a fully featured cluster with the following components
- postgres instance with backups
- backup of all nfs PVCs using restic
- traefik (along with metallb as a publicly accessible reverse proxy)
- an nfs-provisioner creating PVCs on-demand
- gitea
- a range of selfhosted apps:
- nextcloud
- jellyfin
- adguard-home
- homarr
- homeassistant
- immich
- ...
Adding an application
Description