diff --git a/06_argocd_installation/README.md b/06_argocd_installation/README.md index 6f95f74..78c935a 100644 --- a/06_argocd_installation/README.md +++ b/06_argocd_installation/README.md @@ -11,11 +11,8 @@ Zuerst muss das Repository hinzugefügt und die Basis-Ressourcen (Namespace & Ga helm repo add argo https://argoproj.github.io/argo-helm helm repo update -# Vorbereitungen treffen (Gateway & Namespace) -kubectl apply -f argo-prepare.yaml - # Installation via Helm -helm upgrade --install argocd argo/argo-cd --namespace argocd -f argo-values.yaml +helm upgrade --install argocd argo/argo-cd --namespace argocd -f argocd-values.yaml ``` --- @@ -62,4 +59,4 @@ Um Abstürze des `repo-server` zu vermeiden, wurden explizite Ressourcen-Limits - **Controller:** 1Gi Memory / 500m CPU --- -*Zuletzt aktualisiert am 06. März 2026 von Gemini CLI* +*Zuletzt aktualisiert am 07. Juni 2026* diff --git a/06_argocd_installation/argo-prepare.yaml b/06_argocd_installation/argo-prepare.yaml deleted file mode 100644 index ed33af1..0000000 --- a/06_argocd_installation/argo-prepare.yaml +++ /dev/null @@ -1,41 +0,0 @@ ---- -apiVersion: v1 -kind: Namespace -metadata: - name: argocd ---- -apiVersion: gateway.networking.k8s.io/v1 -kind: Gateway -metadata: - name: argocd-gateway - namespace: argocd - labels: - bgp.cilium.io/ip-pool: default # Damit bekommt das Gateway eine IP aus deinem Pool - annotations: - # Damit external-dns diesen Gateway findet und einen DNS-Eintrag erstellt - # (falls external-dns Gateway API unterstützt, was es tut) - cert-manager.io/cluster-issuer: cloudflare-cluster-issuer -spec: - gatewayClassName: cilium - listeners: - - name: https - hostname: "argocd.k8s.hnrx.net" - protocol: HTTPS - port: 443 - allowedRoutes: - namespaces: - from: All - tls: - mode: Terminate - certificateRefs: - - name: argocd-gateway-tls - - name: http - hostname: "argocd.k8s.hnrx.net" - protocol: HTTP - port: 80 - allowedRoutes: - kinds: - - kind: HTTPRoute - - kind: GRPCRoute - namespaces: - from: All \ No newline at end of file diff --git a/06_argocd_installation/argo-values.yaml b/06_argocd_installation/argocd-values.yaml similarity index 69% rename from 06_argocd_installation/argo-values.yaml rename to 06_argocd_installation/argocd-values.yaml index 3a7dac2..9288c7d 100644 --- a/06_argocd_installation/argo-values.yaml +++ b/06_argocd_installation/argocd-values.yaml @@ -2,11 +2,42 @@ global: domain: "argocd.k8s.hnrx.net" extraObjects: + - apiVersion: gateway.networking.k8s.io/v1 + kind: Gateway + metadata: + name: argocd-gateway + labels: + bgp.cilium.io/ip-pool: default # Damit bekommt das Gateway eine IP aus deinem Pool + annotations: + # Damit external-dns diesen Gateway findet und einen DNS-Eintrag erstellt + # (falls external-dns Gateway API unterstützt, was es tut) + cert-manager.io/cluster-issuer: cloudflare-cluster-issuer + spec: + gatewayClassName: cilium + listeners: + - name: argocd-http + hostname: "argocd.k8s.hnrx.net" + protocol: HTTP + port: 80 + allowedRoutes: + namespaces: + from: Same + - name: argocd-https + hostname: "argocd.k8s.hnrx.net" + protocol: HTTPS + port: 443 + allowedRoutes: + namespaces: + from: Same + tls: + certificateRefs: + - kind: Secret + name: argocd-gateway-tls + - apiVersion: secrets.phase.dev/v1alpha1 kind: PhaseSecret metadata: name: argocd-phase-secret - namespace: argocd labels: app.kubernetes.io/part-of: argocd spec: @@ -64,40 +95,13 @@ dex: name: argocd-authentik-client-secret server: + httproute: enabled: true parentRefs: - name: argocd-gateway - namespace: argocd - sectionName: https hostnames: - "argocd.k8s.hnrx.net" - rules: - - matches: - - path: - type: PathPrefix - value: / - backendRefs: - - name: argocd-server - port: 80 - - grpcroute: - enabled: true - parentRefs: - - name: argocd-gateway - namespace: argocd - sectionName: http - hostnames: - - "argocd.k8s.hnrx.net" - rules: - - matches: - - method: - type: Exact - service: "cluster.argoproj.v1alpha1.repositoryservice" - method: "List" - backendRefs: - - name: argocd-server - port: 443 repoServer: resources: diff --git a/07_bootstrap_argocd/shared-external-gateway.yaml b/07_bootstrap_argocd/shared-external-gateway.yaml index 6e520b3..ed94809 100644 --- a/07_bootstrap_argocd/shared-external-gateway.yaml +++ b/07_bootstrap_argocd/shared-external-gateway.yaml @@ -10,7 +10,7 @@ metadata: # (falls external-dns Gateway API unterstützt, was es tut) cert-manager.io/cluster-issuer: cloudflare-cluster-issuer spec: - gatewayClassName: envoy-gateway-class + gatewayClassName: cilium listeners: - name: http hostname: "*.hnrx.net" diff --git a/07_bootstrap_argocd/shared-gateway.yaml b/07_bootstrap_argocd/shared-gateway.yaml index a73800a..61b2b6c 100644 --- a/07_bootstrap_argocd/shared-gateway.yaml +++ b/07_bootstrap_argocd/shared-gateway.yaml @@ -11,7 +11,7 @@ metadata: # (falls external-dns Gateway API unterstützt, was es tut) cert-manager.io/cluster-issuer: cloudflare-cluster-issuer spec: - gatewayClassName: envoy-gateway-class + gatewayClassName: cilium listeners: - name: https hostname: "*.k8s.hnrx.net" @@ -21,6 +21,5 @@ spec: namespaces: from: All tls: - mode: Terminate certificateRefs: - name: shared-gateway-tls \ No newline at end of file