docs: remove old 00_installation_instructions.md in directory 07 after renaming to README.md
This commit is contained in:
@@ -1,68 +0,0 @@
|
|||||||
# 🎡 ArgoCD Bootstrapping (App-of-Apps)
|
|
||||||
|
|
||||||
Diese Sektion beschreibt den Übergang von der manuellen Installation zur vollautomatischen GitOps-Verwaltung des gesamten Clusters.
|
|
||||||
|
|
||||||
## 🏗️ 1. Das Konzept
|
|
||||||
Wir nutzen das **Bootstrap-Prinzip**, um ArgoCD anzuweisen, sich selbst und alle anderen Applikationen zu verwalten. Sobald die Bootstrap-Ressourcen angewendet werden, scannt ArgoCD das Repository und rollt die definierten Stacks automatisch aus.
|
|
||||||
|
|
||||||
### 📊 Architektur-Übersicht
|
|
||||||
```mermaid
|
|
||||||
graph TD
|
|
||||||
Root[ArgoCD Bootstrap] --> |Deploy| AS1[ApplicationSet: Cluster Infra]
|
|
||||||
Root --> |Deploy| AS2[ApplicationSet: Homelab Apps]
|
|
||||||
|
|
||||||
AS1 --> |Scans 08_cluster_infrastructure/*| AppInfra[Core Tools: Monitoring, VPA, etc.]
|
|
||||||
AS2 --> |Scans 09_homelab_apps/*| AppHome[User Apps: Immich, Ghostfolio, etc.]
|
|
||||||
|
|
||||||
subgraph "Git Repository"
|
|
||||||
D8[Verzeichnis 08]
|
|
||||||
D9[Verzeichnis 09]
|
|
||||||
end
|
|
||||||
|
|
||||||
AS1 -.-> D8
|
|
||||||
AS2 -.-> D9
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 🛠️ 2. Bootstrap Komponenten
|
|
||||||
|
|
||||||
### 📂 Projekte (`argocd-project-*.yaml`)
|
|
||||||
Bevor Applikationen erstellt werden können, müssen die logischen Gruppierungen (**Projects**) in ArgoCD vorhanden sein:
|
|
||||||
- **cluster-infra:** Für systemnahe Tools.
|
|
||||||
- **homelab:** Für Benutzer-Applikationen.
|
|
||||||
|
|
||||||
### 🤖 Automatisierung (`ApplicationSets`)
|
|
||||||
Wir nutzen `ApplicationSet`-Ressourcen, um Applikationen dynamisch basierend auf der Verzeichnisstruktur im Git zu erstellen:
|
|
||||||
- **`argocd-apps.yaml`:** Übernimmt alle Ordner aus `08_cluster_infrastructure/`.
|
|
||||||
- **`homelab-apps.yaml`:** Übernimmt alle Ordner aus `09_homelab_apps/`.
|
|
||||||
|
|
||||||
### 🚀 Shared Gateways
|
|
||||||
In diesem Verzeichnis werden auch die **zentralen Gateways** definiert, die von allen Applikationen gemeinsam genutzt werden:
|
|
||||||
- `shared-gateway.yaml`: Interner Traffic (`*.k8s.hnrx.net`).
|
|
||||||
- `shared-external-gateway.yaml`: Externer Traffic (`*.hnrx.net`).
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 🚀 3. Ausführung (Bootstrapping)
|
|
||||||
|
|
||||||
Um das Bootstrapping zu starten, werden alle Ressourcen in diesem Ordner einmalig manuell auf den Cluster angewendet:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# 1. Projekte erstellen
|
|
||||||
kubectl apply -f argocd-project-cluster-infra.yaml
|
|
||||||
kubectl apply -f argocd-project-homelab.yaml
|
|
||||||
|
|
||||||
# 2. Shared Gateways bereitstellen
|
|
||||||
kubectl apply -f shared-gateway.yaml
|
|
||||||
kubectl apply -f shared-external-gateway.yaml
|
|
||||||
|
|
||||||
# 3. ApplicationSets aktivieren (Der "Magic" Moment)
|
|
||||||
kubectl apply -f argocd-apps.yaml
|
|
||||||
kubectl apply -f homelab-apps.yaml
|
|
||||||
```
|
|
||||||
|
|
||||||
Ab diesem Zeitpunkt übernimmt ArgoCD die Kontrolle. Jedes neue Verzeichnis in `08_` oder `09_` wird automatisch als neue Applikation erkannt und deployed. 🚀
|
|
||||||
|
|
||||||
---
|
|
||||||
*Zuletzt aktualisiert am 06. März 2026 von Gemini CLI*
|
|
||||||
Reference in New Issue
Block a user