ingress
- 도메인을 이용하여 서비스에 접근할 수 있는 방법
- port는 1개이며 path, domain을 이용하여 서비스를 분기시킨다.(Ingress만 관리하면 된다)
ingress 만들기
- 도메인 테스트는 귀찮은게 많으니 IP주소를 도메인에 넣어 바로 사용할 수 있는 slipp.io를 이용한다.
- ingress는 별도의 컨트롤러가 필요하다.(보통 nginx ingress controller를 사용)
ingress yml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: echo-v1
spec:
rules:
- host: v1.echo.[minikube ip].sslip.io
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: echo-v1
port:
number: 3000
- 적혀진 도메인(
host
)으로 접근하면 해당하는 서비스(backend.service
)에 요청을 보낸다는 의미이다.
v1.echo.[minikube ip].sslip.io
에 접속하면 이름이 echo-v1
이고 port가 3000
번인 서비스로 요청을 보내겠다.
ingress 생성 흐름
- Ingress Controller는 Ingress 변화를 체크
- Ingress Controller는 변경된 내용을 Nginx에 설정하고 프로세스 재시작(Ingress 설정을 단순히 nginx 설정으로 바꾸는 것)
참고
쿠버네티스 안내서