연재 시리즈

쿠버네티스 네트워크 스터디 6주차 - Ingress 동작 이해

악분 2022. 2. 22. 19:54
반응형

스터디 목차

 

 

안녕하세요. 이 글은 facebook 쿠버네티스 그룹에서 올라온 "쿠버네티스 네트워크 스터디" 5주차 내용을 정리했습니다.

스터디 모집글: https://www.facebook.com/groups/k8skr/posts/3202691746679143

 

1. 6주차 두번째 주제

6주차 두번째 주제는 Ingress controller 동작 이해입니다.

 

2. ingress 동작

첫 번째 시간에 ingress controller pod가 ingress설정에 따라 서비스로 패킷을 전달한다고 설명했었습니다. 이렇게 네트워크 흐름이 진행되면 생각보다 많은 NAT 작업이 여러번 수행됩니다. 벌써 눈에 보이는 것만 2곳 입니다.

 

쿠버네티스는 불필요한 작업(오버헤드)를 줄이기 위해 ingress controller가 서비스 endpoints정보를 모니터링합니다. 첫 번째 시간(https://malwareanalysis.tistory.com/277)에서 구성했던 pod를 자세히 보면, ingress가 서비스를 바라보고 있는 것이 아니라 service가 가리키는 endpoints를 바라봅니다.

 

스터디 공유자료에서 정말 이해하기 쉽게 설명한 자료를 가져왔습니다. 그림에서 보다시피 ingress controller pod가 service를 거치지 않고 바로 대상pod로 향합니다.

출처: 스터디 공유자료

 

3. ingress controller의 role, rolebinding

ingress controller는 대상 서비스의 endpoints를 가져와야하기 때문에 clusterrole, role이 설정되어 있습니다.

 

kubectl -n ingress-nginx describe role ingress-nginx | grep endpoints

 

kubectl describe clusterrole ingress-nginx | grep endpoints

반응형