K8S 네트워크 기본

Seung·2022년 3월 13일
0

K8S

목록 보기
11/14

pod의 내부 네트워크

  • 동일한 네트워크 환경을 공유
    한 pod 내부의 컨테이너들은 모두 같은 네트워크 환경을 공유한다.
    이는 각 컨테이너들이 동일한 네트워크 네임스페이스 안에 속하기 때문이다.
    한 pod 내의 컨테이너들은 로컬 호스트를 통해서 네트워크를 공유할 수 있으며,
    이 뜻은 서로 동일한 포트를 사용할 수 없음을 나타내기도 한다.

  • 외부와 통신
    Pod의 네트워크 네임스페이스는 veth라는 인터페이스를 통해서 외부와 통신할 수 있다.

  • pod 내부의 컨테이너들이 같은 네트워크 네임스페이스를 공유하는 원리
    이는 Pod가 생성되면서 제일 먼저 실행되는 Pause 컨테이너 덕분이다.
    pause라는 프로세스가 제일 먼저 실행되면서 이후 생성될 컨테이너들이 pause process를 상속받게 되고, 새롭게 생성된 컨테이너들은 같은 네트워크 네임스페이스를 공유할 수 있게 되는 것이다.


kubenet

  • 기본적인 네트워크 플러그인
    K8s에서 제공하는 기본적인 네트워크 플러그인으로 크로스 노드 네트워크 정책이나
    고급 기능은 구현되어 있지 않다.

CNI(Container Network Interface)

K8S 네트워크에 오버레이 네트워크를 구성해주고,
pod와 호스트 인터페이스를 연결해주는 부분을 별도로 모듈로 분리한 플러그인

  • 커널 라우팅
  • 동적 라우팅
  • pod 인터페이스를 생성 및 IP, 서브넷, 라우팅 테이블 설정
  • proxy ARP

ex) calico, weave net...


Reference

https://medium.com/finda-tech/overview-8d169b2a54ff

profile
인프라 마스터가 되고 싶어요

0개의 댓글