«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
Recent Posts
Recent Comments
관리 메뉴

_z_z_

6월_4주차. 컨테이너와 도커 본문

쪼드잇/위클리페이퍼

6월_4주차. 컨테이너와 도커

hyohyo_zz 2025. 6. 30. 15:05
더보기

Q1. 컨테이너 기술과 Docker를 명확히 구분하여 설명하세요. 컨테이너 기술이 Docker 이전에도 존재했던 개념임을 언급하고, Docker가 컨테이너 기술을 구현한 하나의 도구라는 관점에서 설명해주세요. 또한, Docker 외에 컨테이너 기술을 구현한 다른 도구의 예시를 들어보세요.,

Q2. 컨테이너 오케스트레이션의 개념과 필요성을 설명하고, Docker 단독 사용 환경과 비교하여 컨테이너 오케스트레이션이 해결하는 주요 문제점 3가지(자동 확장, 자가 복구, 선언적 인프라)를 설명하세요.

1 - 1. 컨테이너 기술

애플리케이션과 그 실행에 필요한 모든 환경을 운영체제 수준에서 격리된 상태로 패키징하여 실행하는 기술

  • 가상머신과 달리 전체 OS를 포함하지 않고, 호스트 OS의 커널을 공유해 가볍고 빠름
  • 리눅스의 cgroups, namespaces 등 커널 기능에 기반해 이미 도커 이전 부터 존재했음
  • ex) LXC(Linux Containers), Solaris Zones, OpenVZ 등

1 - 2. Docker

컨테이너 기술을 구현한 하나의 도구이자 플랫폼

  • 복잡했던 LXC 기반의 컨테이너 생성을 간편한 CLI와 API로 쉽게 사용가능하게 함
  • 주요 기능으론
    • 이미지 생성/버전 관리 ( Dockerfile, Docker Hub)
    • 컨테이너 생성/실행 관리
    • 네트워킹, 볼륨 등 다양한 기능 통합

1 - 3. 도커 외 컨테이너 기술 도구 예시

  • LXC : 도커의 기반이 된 초기 컨테이너 기술, 커널 기능을 직접 사용
  • containerd : 도커에서 분리된 저수준 컨테이너 런타임
  • CRI-O : Kubernetes에서 직접 컨테이너 실행을 위한 경량 런타임
  • Podman : 도커 대체로 각광받음, 데몬리스 실행 가능

 

 


2. 컨테이너 오케스트레이션

대규모 컨테이너 환경에서 컨테이너들의 배포, 스케일링, 네트워크 구성, 복구, 업그레이드 등을 자동으로 관리해주는 기술

  • 단일 호스트에서 컨테이너를 실행하던 도커 단독환경에선 복잡한 인프라 운영에 한계
  • 이를 극복하기 위해 등장한것이 Kubernetes, Docker Swarm 등의 오케스트레이션 도구임

 

Docker 단독 사용 vs 컨테이너 오케스트레이션의 문제해결

1) 자동 확장(Auto-scaling)

  • Docker 단독 환경의 한계 : 수작업으로 컨테이너 개수 조절 필요
  • 오케스트레이션의 해결 방식 : 부하에 따라 Pod 자동 증가/감소(Kubernetes HPA)

2) 자가 복구(Self-healing)

  • Docker 단독 환경의 한계 : 컨테이너가 죽으면 직접 재시작 필요
  • 오케스트레이션의 해결 방식 : 장애 감지 시 자독 재시작, 재스케줄링

3) 선언적 인프라(Declarative Infrastructure)

  • Docker 단독 환경의 한계 : 실행 명령으로만 관리 → 상태 관리 어려움
  • 오케스트레이션의 해결 방식 : yaml 등으로 원하는 상태 선언 → 오케스트레이터가 자동 유지