# Kubernetes Configuration Cluster configuration for the roamflow k3s cluster. ## Structure ``` kube-config/ ├── apps/ # Application deployments │ ├── headlamp/ # Kubernetes dashboard │ └── ... ├── infrastructure/ # Cluster infrastructure │ └── ... └── scripts/ # Deployment scripts └── deploy.sh ``` ## Usage ### Deploy a specific app ```bash ./scripts/deploy.sh headlamp ``` ### Deploy all apps ```bash ./scripts/deploy.sh --all ``` ## Cluster Access ```bash # Start SSH tunnel ssh -f -N -L 6443:127.0.0.1:6443 roamflow-1 # Use kubectl KUBECONFIG=~/.kube/config-roamflow kubectl get pods -A ``` ## Apps | App | Namespace | Description | URL | |-----|-----------|-------------|-----| | headlamp | headlamp | Kubernetes dashboard | headlamp.duylai.duckdns.org | | gitea | gitea | Git hosting | gitea.duylai.duckdns.org | | vikunja | vikunja | Task management | tasks.duylai.duckdns.org | ## Memory Configuration The following memory limits have been adjusted to prevent OOM kills: | Service | Limit | Request | |---------|-------|---------| | PostgreSQL (per pod) | 768Mi | 512Mi | | Pgpool | 512Mi | 384Mi | | Valkey | 192Mi | 128Mi | These are saved in `apps/gitea/values.yaml` for future upgrades.