네트워킹
Lumie 인프라의 네트워킹 계층은 Traefik(애플리케이션 Ingress), Teleport(인프라 접근), cert-manager(TLS 자동화), CoreDNS(클러스터 DNS), Flannel(CNI)으로 구성됩니다.
Kong 게이트웨이는 K3s 내장 Traefik으로 대체되었습니다. Traefik 상세 설정을 참고하세요.
진입점 분리
클러스터에는 두 개의 독립적인 외부 진입점이 있습니다:
Traefik (애플리케이션)
- 대상 도메인:
lumie-edu.com,dev.lumie-edu.com,dev.lumie-infra.com(API 전용, 베어/→ 404) - DNS: Cloudflare 프록시 → OCI NLB 예약 IP
168.107.42.253(2026-05-24 이후) - 노드: 워커 4개 (svclb DaemonSet)
- 포트: 80(→443 리다이렉트), 443
- TLS: cert-manager + Let's Encrypt
- StripPrefix 미들웨어로
/api/<module>→/<module>변환
Teleport (인프라)
- 대상 도메인:
lumie-infra.com,*.lumie-infra.com(apex+와일드카드) - DNS: OCI 0213 NLB
158.180.89.154직접 연결 (Cloudflare 미경유) - 노드: 마스터 단일 노드 (
hostNetwork모드) - 포트: 443 (멀티플렉스: HTTPS, SSH, Kubernetes API)
- TLS: cert-manager 발급 인증서 (
teleport-tlsSecret) - 프록시 대상: ArgoCD, Zot UI, Docs, Headlamp, Gitea, SSH 접근 등
마스터 노드에서 443 포트는 Teleport가 단독 점유합니다. Traefik의
svclbDaemonSet은 마스터에서 제외(enablelb레이블 제거) 됩니다.
cert-manager
TLS 인증서 발급·갱신을 자동화합니다. Let's Encrypt ACME 프로토콜을 사용합니다.
ClusterIssuer
# letsencrypt-prod: HTTP-01 챌린지 (Traefik 경유, ingressClass: traefik)
# letsencrypt-prod (dns01 solver): DNS-01 챌린지 (Cloudflare, lumie-infra.com 와일드카드)
Ingress에 어노테이션을 추가하면 cert-manager가 자동으로 인증서를 발급합니다:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
# 인증서 상태 확인
kubectl get certificate -A
# Certificate 상세 정보
kubectl describe certificate lumie-frontend-tls -n lumie-frontend
Flannel (CNI)
K3s 기본 CNI입니다. VXLAN 터널링으로 노드 간 Pod 네트워크를 구성합니다.
| 구분 | CIDR |
|---|---|
| Pod 네트워크 | 10.42.0.0/16 |
| Service 네트워크 | 10.43.0.0/16 |
NetworkPolicy 미지원: Flannel은 NetworkPolicy를 지원하지 않습니다. 트래픽 격리는 Kyverno 정책으로 보완합니다.
CoreDNS
클러스터 내부 DNS 서비스입니다.
# 서비스 접근 형식
<service-name>.<namespace>.svc.cluster.local
# 예시
lumie-backend.lumie-backend.svc.cluster.local
minio.minio.svc.cluster.local
redis.lumie-cache.svc.cluster.local
VCN 피어링 (OCI 계정 간)
OCI-0214(마스터+워커 1,2)와 OCI-0213(워커 3,4) 간 프라이빗 통신은 Remote VCN Peering(DRG)으로 구성됩니다. 계정 간 트래픽은 공인 인터넷을 경유하지 않습니다.
관련 문서
- Traefik 상세 - StripPrefix, 리다이렉트, HelmChartConfig
- cert-manager - ClusterIssuer, 인증서 발급
- CoreDNS - 클러스터 DNS 설정
- Teleport - 제로 트러스트 인프라 접근
- 클러스터 개요 - 노드 구성, DNS 레코드