FEAT(traefik): add per-application ingress

- management
- Added ingress files for MinIO (API and Console) and pgweb
- Updated kustomization files to include ingress resources
- Migrated from centralized ingress management to per-app architecture
This commit is contained in:
2025-12-25 20:21:27 +09:00
parent 3767a6edea
commit f1b99f0bdf
5 changed files with 104 additions and 0 deletions

28
minio/ingress-api.yaml Normal file
View File

@@ -0,0 +1,28 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: minio-api
namespace: minio
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
nginx.ingress.kubernetes.io/proxy-body-size: "0"
nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
ingressClassName: haproxy
tls:
- hosts:
- s3.minio0213.kro.kr
secretName: minio-api-tls
rules:
- host: s3.minio0213.kro.kr
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: minio-service
port:
number: 9000

View File

@@ -0,0 +1,37 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: minio-console
namespace: minio
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
nginx.ingress.kubernetes.io/proxy-body-size: "0"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
ingressClassName: haproxy
tls:
- hosts:
- minio.minio0213.kro.kr
- minio0213.kro.kr
secretName: minio-console-tls
rules:
- host: minio.minio0213.kro.kr
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: minio-service
port:
number: 9001
- host: minio0213.kro.kr
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: minio-service
port:
number: 9001

View File

@@ -5,3 +5,5 @@ resources:
# ArgoCD Application 리소스는 infrastructure/kustomization.yaml에서 관리
# - argocd/minio.yaml
- vault/minio-root-password.yaml
- ingress-api.yaml
- ingress-console.yaml

36
pgweb/ingress.yaml Normal file
View File

@@ -0,0 +1,36 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: pgweb-ingress
namespace: pgweb
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "true"
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
ingressClassName: haproxy
tls:
- hosts:
- pgweb0213.kro.kr
- www.pgweb0213.kro.kr
secretName: pgweb-tls
rules:
- host: pgweb0213.kro.kr
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: pgweb
port:
number: 80
- host: www.pgweb0213.kro.kr
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: pgweb
port:
number: 80

View File

@@ -8,3 +8,4 @@ resources:
- vault/serviceaccount.yaml
- vault/secretstore.yaml
- vault/pgweb-secret.yaml
- ingress.yaml