겉바속촉

[DOCKER] 도커_작동 구조 본문

IT 일기 (상반기)/DOCKER

[DOCKER] 도커_작동 구조

겉바속촉 2020. 12. 30. 13:26
728x90
반응형

 

DOCKER에 대해서

 

공부해보도록 하겠습니다

 

!^^!

 

 

 

 

 

 


 

 

1. Namespace_컨테이너를 구획화하는 장치

 

구획화 = 리소스에 대해 격리하는 것

  • PID namespace -> 각 프로세스에 할당된 고유한 id
  • Network namespace
  • UID namespace
  • MOUNT namespace
  • UTS namespace
  • IPC namespace

 

2. cgroups_릴리스 관리 장치

 

  • 도커에서 여러 컨테이너가 공유하여 작동하는 데 cgroups(control groups)사용하여 자원 할당 등을 관리
  • 컨테이너 리소스 할당 관리

 

 

3. 네트워크 구성_가상 브리지/ 가상 NIC

 

  • 가상 브리지 = docker0    -->   ip a로 확인하면 docker0가 보입니다
  • 가상 NIC = Network Interface Card  -->  eth0 (물리 NIC)을 제공하기 위한 인터페이스
  • eth 0  --->  일종의 공인 ip (나갈때)  내부에서는 사설 ip

   예를 들어, 컨테이너 A와  컨테이너 B가 각각 다른 포트번호를 가지고 있는 상태입니다.

                 그리고 각각 172.17.0.2 와  172.17.0.3 을 할당받은 상태이구요:)

 

                 외부통신을하려면 물리 NIC를 통해 나가야 하는 데 공인IP처럼 생각해서 10.0.0.10 이라고 가정할게요

 

                 그러면 컨테이너 A와 컨테이너 B는 공인 IP로 바껴서 나가야 하는데

                 나갈 때는 11번, 12번 등으로 나갈 수 있습니다:)

 

 

NAT = Network Address Translation 

  • 공인ip와 사설ip가 일대일인 상황 ---> 그래서 동시에 여러 클라이언트가 액세스 불가능
  • 프라이빗 ip주소가 할당된 클라이언트가 액세스할 때 NAT라우터는 프라이빗 IP주소 ===> 글로벌 IP주소 로 변환

 

NAPT = Network Address Port Translation

  • 프라이빗 ip주소와 함께 포트번호까지 같이 변환시킴
  • 인터넷상의 서버 역시 응답할 때 포트번호로 구분해서 보냄 ===> 포트에 맞는 것이 반응
  • 하나의 글로벌 ip주소와 여러개의 프라이빗 ip주소 변환이 가능

 

 

4. Docker 이미지의 데이터 관리 장치

 

 

Docker 이미지 : read-only Infra = binary 파일

  • read, write 공간이 하나 더 필요
  • read, write 기능을 지원하는 것이 union File System
  • 하나의 디렉토리로 read-only 공간과  read-write 공간을 제공

 

 

 

 

 

728x90
반응형