From cb532c3bd17f70e10536475452554c3660151783 Mon Sep 17 00:00:00 2001 From: Mayne0213 Date: Thu, 25 Dec 2025 20:21:26 +0900 Subject: [PATCH] FEAT(traefik): add per-application ingress managem - Added ingress.yaml for code-server, kubernetes-dashboard, and umami - Updated kustomization files to include ingress resources - Migrated from centralized ingress management to per-app architecture --- code-server/ingress.yaml | 42 ++++++++++++++++++++++++++++++++++ code-server/kustomization.yaml | 1 + umami/ingress.yaml | 37 ++++++++++++++++++++++++++++++ umami/kustomization.yaml | 1 + 4 files changed, 81 insertions(+) create mode 100644 code-server/ingress.yaml create mode 100644 umami/ingress.yaml diff --git a/code-server/ingress.yaml b/code-server/ingress.yaml new file mode 100644 index 0000000..309534f --- /dev/null +++ b/code-server/ingress.yaml @@ -0,0 +1,42 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: code-server-ingress + namespace: dev-tools + annotations: + nginx.ingress.kubernetes.io/ssl-redirect: "true" + cert-manager.io/cluster-issuer: "letsencrypt-prod" + # WebSocket 지원 (code-server에 필요) + nginx.ingress.kubernetes.io/websocket-services: "code-server" + # 프록시 타임아웃 설정 (장시간 연결 유지) + nginx.ingress.kubernetes.io/proxy-connect-timeout: "3600" + nginx.ingress.kubernetes.io/proxy-send-timeout: "3600" + nginx.ingress.kubernetes.io/proxy-read-timeout: "3600" +spec: + ingressClassName: haproxy + tls: + - hosts: + - vscode0213.kro.kr + - www.vscode0213.kro.kr + secretName: code-server-tls + rules: + - host: vscode0213.kro.kr + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: code-server + port: + number: 8080 + - host: www.vscode0213.kro.kr + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: code-server + port: + number: 8080 diff --git a/code-server/kustomization.yaml b/code-server/kustomization.yaml index 9792a4d..2544696 100644 --- a/code-server/kustomization.yaml +++ b/code-server/kustomization.yaml @@ -6,3 +6,4 @@ resources: # - argocd/code-server.yaml - vault/code-server-password.yaml - rbac.yaml + - ingress.yaml diff --git a/umami/ingress.yaml b/umami/ingress.yaml new file mode 100644 index 0000000..4d1e804 --- /dev/null +++ b/umami/ingress.yaml @@ -0,0 +1,37 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: umami-ingress + namespace: analytics + annotations: + nginx.ingress.kubernetes.io/rewrite-target: / + nginx.ingress.kubernetes.io/ssl-redirect: "true" + cert-manager.io/cluster-issuer: "letsencrypt-prod" +spec: + ingressClassName: haproxy + tls: + - hosts: + - umami0213.kro.kr + - www.umami0213.kro.kr + secretName: umami-tls + rules: + - host: umami0213.kro.kr + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: umami + port: + number: 3000 + - host: www.umami0213.kro.kr + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: umami + port: + number: 3000 diff --git a/umami/kustomization.yaml b/umami/kustomization.yaml index 42af82c..f9d54d6 100644 --- a/umami/kustomization.yaml +++ b/umami/kustomization.yaml @@ -5,3 +5,4 @@ resources: # ArgoCD Application 리소스는 infrastructure/kustomization.yaml에서 관리 # - argocd/umami.yaml - vault/umami-password.yaml + - ingress.yaml