Cloud Computing/Kubernetes
Kubernetes - Ingress
HwanJae
2021. 1. 26. 17:45
이번에는 두 가지 부분에서 Kubernetes의 Ingress가 어떻게 사용되는지 확인해보려 한다.
- Service LoadBalancing
- Canary Update
Service LoadBalancing
하나의 사이트를 운영중일 때 각 기능별로 Pod를 나누게 된다면 한 쪽의 기능에 문제가 생겼을 때 다른 기능에는 영향이 끼치지 않는다는 점이 Pod관리의 장점일 것이다. 각 기능은 다시 도메인에 /path를 붙여줌으로써 사용자가 각 서비스에 접근할 수 있도록 해주어야 하는데, Kubernetes에서는 이러한 도메인 구분을 Ingress를 통해 나눌 수 있다.
Ingress를 사용하기 위해서는 Ingress Controller가 필요한데 Nginx, Kong 등을 통해서 환경을 실행해줄 수 있겠다.
Canary Update
Canary의 경우 저번 포스팅에서 알아봤던 것 처럼 버전1의 애플리케이션 들이 구동중인 상태에서 테스트용 환경의 버전2 애플리케이션을 실행시키는 방식으로 작동하는 Update 방식이다.
이 버전1의 애플리케이션과 버전2의 애플리케이션을 다시 Ingress로 묶어준다면, 설정된 트래픽 수치에 맞게 트래픽을 분산시켜 사용자가 따로 접근할 수 있도록 운영하는 것이 가능해진다.