클러스터 외부에서 클러스터 내부 서비스로 HTTP와 HTTPS 경로를 노출합니다. 트래픽 라우팅은 인그레스 리소스에 정의된 규칙에 의해 컨트롤된다.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: snackbar
namespace: snackbar
labels:
project: snackbar
spec:
rules:
- host: order.snackbar.com # Host Header가 일치하는 요청만 매칭
http:
paths:
- pathType: Prefix # /로 시작하는 모든 경로에 매칭
path: /
backend: # order 서비스의 80포트로 포워딩
service:
name: order
port:
number: 80
- host: payment.snackbar.com # Host Header가 일치하는 요청만 매칭
http:
paths:
- pathType: Prefix # /로 시작하는 모든 경로에 매칭
path: /
backend: # order 서비스의 80포트로 포워딩
service:
name: payment
port:
number: 80
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: snackbar
namespace: snackbar
labels:
project: snackbar
spec:
rulse:
- http:
paths:
- pathType: Prefix
path: /order
backend:
service:
name: order
port:
number: 80
- pathType: Prefix
path: /payment
backend:
service:
name: payment
port:
number: 80
spec:
defaultBackend:
service:
name: order
port:
number: 80
reference :
- https://kubernetes.io/ko/docs/concepts/services-networking/ingress/
- Kubernetes와 Docker로 한 번에 끝내는 컨테이너 기반 MSA