패스잇
인프라 & 클라우드 · 심화

Kubernetes가 다양한 컨테이너 런타임(Docker, containerd, CRI-O 등)과 상호작용할 수 있도록 하는 Container Runtime Interface(CRI)의 역할과 중요성에 대해 설명하고, 만약 특정 요구사항(예: 보안 강화, 성능 최적화)을 위해 기존 런타임 대신 자체 개발한 커스텀 컨테이너 런타임을 Kubernetes 클러스터에 통합해야 한다면, 어떤 단계를 거쳐야 하며 어떤 기술적 고려사항이 있을지 설명해 주십시오.

힌트 · CRI의 gRPC 서비스 인터페이스 구현, OCI(Open Container Initiative) 표준 준수, 그리고 런타임 통합 시 Pod의 라이프사이클 관리 및 로깅/모니터링 연동 방안을 중심으로 설명할 수 있습니다.

CRI컨테이너 추상화런타임 플러그인OCI (Open Container Initiative)kubelet

모범답안

Kubernetes의 CRI는 컨테이너 런타임과의 추상화 계층 역할을 합니다. 이를 통해 Kubernetes는 Docker, containerd, CRI-O 등 다양한 런타임을 동일한 방식으로 관리할 수 있습니다. CRI는 gRPC 인터페이스를 통해 kubelet과 런타임 간 통신을 정의하며, OCI 표준 준수를 통해 컨테이너 이미지 및 런타임 호환성을 보장합니다.

자체 커스텀 런타임을 통합하려면, 먼저 CRI 인터페이스를 구현해야 합니다. 즉, 컨테이너 생성, 시작, 중지, 삭제 등 Pod 라이프사이클 관리를 위한 gRPC API를 개발해야 합니다. 또한, OCI 호환 이미지 포맷을 지원하고, 기존 런타임의 보안 및 성능 최적화 기능을 커스텀 런타임에 반영해야 합니다. 통합 후에는 kubelet이 커스텀 런타임을 인식하도록 설정하고, 로깅 및 모니터링 시스템과의 연동 방안도 마련해야 합니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 Docker / Kubernetes 면접 질문

← Docker / Kubernetes 면접 질문 전체 보기