19 lines
1.6 KiB
Markdown
19 lines
1.6 KiB
Markdown
# Cluster Repository & GitOps Guidelines
|
|
|
|
## GitOps & CI/CD Pipeline
|
|
- **`k8s-infra-vmserver` is een pure GitOps target-repository:**
|
|
- Breng **nooit** direct handmatige wijzigingen of commits aan in `k8s-infra-vmserver/workloads/cluster-infra/` (of andere componenten die via CI/CD beheerd worden).
|
|
- Dit voorkomt configuratie-drift en mergeconflicten met de geautomatiseerde deployment bots (`Gitea Actions Bot`).
|
|
- **Single Source of Truth is `cluster-infra/`:**
|
|
- Wijzigingen aan Kubernetes manifests voor infrastructuurdiensten (zoals Mosquitto, InfluxDB, PostgreSQL, DNSmasq, RabbitMQ, Telegraf, etc.) horen **uitsluitend** in `cluster-infra/<dienst>/k8s/`.
|
|
- Na een `git push` naar `cluster-infra` draait de Gitea Actions workflow (`.gitea/workflows/build-and-deploy.yaml`).
|
|
- Deze workflow synct gewijzigde manifests automatisch naar `k8s-infra-vmserver/workloads/cluster-infra/<dienst>` met het commitbericht `ci(cluster-infra): sync manifests (...)`.
|
|
- ArgoCD detecteert de commit in `k8s-infra-vmserver` en synct de workloads naar het live Kubernetes cluster.
|
|
- **Overige submodules (`HERMS`, `htpc`, `smart-home`):**
|
|
- Pas ook voor deze componenten altijd de configuratie aan in de respectievelijke bronrepository en laat de build/sync-workflows of migratiescripts het werk doen.
|
|
|
|
## Topologie & Omgeving
|
|
- Host `vmserver`: IP `10.2.0.4` (K3s/Kubernetes node).
|
|
- Kubelet health probes (`readinessProbe` / `livenessProbe`) verbinden vanaf node-IP `10.2.0.4`.
|
|
- Edge reverse proxy (Apache) draait native op `vmserver` (`10.2.0.4`) vóór Envoy Gateway / hostdiensten.
|