관련 PR 링크
feat : nginx.ingress.kubernetes.io/proxy-body-size: 10m 추가 · biday5/biday-msa@4454f24
작업하게 된 이유
- Kubernetes 환경에서 트래픽 라우팅, 로드 밸런싱 및 보안을 관리할 필요가 있었음.
- 외부 인증 서비스(OAuth2)와의 연동을 통해 인증 및 로그인 처리.
- 트래픽 분배 및 보안 강화를 위해 Nginx Ingress Controller 설정 필요.
작업 과정
- Ingress 리소스 설정:
- 다양한 경로에 대해 트래픽을
gateway-server
서비스로 라우팅.
api.biday.shop
도메인에 대해 HTTPS 적용.
- Nginx Ingress Controller 설치:
- Kubernetes 클러스터에 Nginx Ingress Controller 배포 및 설정.
- TLS 설정:
tls-certs
인증서를 사용하여 보안 연결 설정.
- 로드 밸런싱 및 트래픽 분배:
- 경로 기반 로드 밸런싱 적용 (예:
/api
, /login
등).
- 파일 크기 제한 설정:
nginx.ingress.kubernetes.io/proxy-body-size
애너테이션을 통해 파일 업로드 크기 제한 설정.
- OAuth2 인증 연동:
- 외부 인증 서비스와의 연동을 위한 경로 설정(
/oauth2/authorization/naver
, /oauth2/callback/naver
).
CI/CD 파이프라인 구축