• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    미해결

Ingress와 Egress 대역 설정이 분리된 이유가 궁금합니다

22.03.29 23:48 작성 조회수 822

0

강의 내용 중 3-[2-3]-NetworkPolicy-[ipBlock | ipBlock-except].yaml 파일을 보면  ingress와 egress의 cidr이 서로 다릅니다. 

1. ingress와 egress cidr을 만족하는 IP를 가진 파드만 서로 통신을 할 수 있는 게 맞나요?

2. 그렇다면 ingress와 egress를 분리하는 의미는 무엇인가요? 그냥 겹치는 범위를 다른 하나의 값으로 설정하면 되는게 아닌가 해서요

답변 1

답변을 작성해보세요.

2

주도님의 프로필

주도

2022.03.30

안녕하세요, Mx님.

튜터 주도입니다.

 

질문 주신 부분은 아래와 같이 이해했습니다 :)

Q1. (ingress와 egress의 CIDR가 다른 상황에서)ingress와 egress의 CIDR가 겹치는 부분의 IP를 가진 파드만 서로 통신할 수 있는 것이 맞나요?

A1.

우선, ingress와 egress의 CIDR는 동일하지 않아도 됩니다.

 

조훈 선생님께서 설명해주신 대로, 네트워크폴리시의 정책은 3가지가 있는데

- podSelector(특정 레이블을 가진 Pod에서 들어오는/나가는 통신 허용)

- ipBlock(특정 CIDR에서 들어오는/나가는 통신 허용)

- namespaceSelector(특정 네임스페이스에 있는 Pod에서 들어오는/나가는 통신 허용)

 

이 때, ipBlock정책은 주로 쿠버네티스 클러스터 '외부' 네트워크의 트래픽을 제어하는 방법으로 사용됩니다. Pod의 IP는 임시적이고 예측할 수 없기 때문입니다 :)

 

그리고 쿠버네티스 클러스터 내부에서 Pod간 통신을 제어하는 방법으로 namespaceSelector와 podSelector정책이 쓰입니다. 

 

 

Q2.ingress와 egress를 분리하는 의미는 무엇인가요? 

A2. ingress와 egress를 분리하는 이유는 말그대로 네트워크폴리시의 policyTypes으로 인바운드와 아웃바운드 정책을 구분해서 결정할 수 있기 때문입니다.

 

NetworkPolicy와 관련해서 공식 문서를 보시면 학습에 참고가 되실 것 같습니다.

https://kubernetes.io/docs/concepts/services-networking/network-policies/ 

 

혹시 추가로 궁금하신 점이 있으면 남겨주세요

감사합니다 :)