..
containerd: 쿠버네티스의 가볍고 강력한 컨테이너 런타임
1. containerd란?
containerd는 컨테이너의 생명 주기(Lifecycle)를 관리하기 위한 핵심 기능을 제공하는 오픈소스 컨테이너 런타임입니다. 이미지 전송 및 관리, 컨테이너 실행, 저수준의 스토리지 및 네트워크 관리 등을 수행합니다.
2. 왜 Docker 대신 containerd인가?
과거 쿠버네티스는 컨테이너 관리를 위해 Docker를 범용적으로 사용했습니다. 하지만 Docker는 컨테이너 실행 기능 외에도 볼륨 관리, 컴포즈, 보안 인터페이스 등 쿠버네티스가 필요로 하지 않는 많은 기능이 포함된 ‘무거운’ 도구였습니다.
이에 따라 쿠버네티스 진영은 필요한 핵심 기능(컨테이너 실행/관리)만 추출하여 더 가볍고 표준화된 containerd를 기본 런타임으로 채택하게 되었습니다.
3. ctr: containerd 전용 CLI
containerd는 데몬 형태로 동작하며, 이를 직접 제어하기 위해 ctr이라는 명령줄 도구를 사용합니다.
- 이미지 관리:
pull,push,ls명령을 통해 이미지를 제어합니다. - 컨테이너 관리:
create,start,stop,rm등을 지원합니다. - 상태 모니터링: 현재 컨테이너의 리소스 사용량이나 메타데이터를 즉시 확인할 수 있습니다.
containerd는 복잡함을 걷어내고 “컨테이너를 돌리는 본연의 임무”에만 집중한, 쿠버네티스 생태계의 표준 엔진입니다.