본문으로 건너뛰기
격리 런타임

격리 런타임 — 컨테이너 아래 경계를 한 겹 더 깔 때

runc는 namespace와 cgroup으로 컨테이너를 나눕니다. 그 아래에는 호스트 커널 하나가 그대로 남아 있고, 노드 위 모든 파드가 그 커널을 공유합니다. 이 챕터는 그 공유 커널 아래에 진짜 VM이나 유저스페이스 커널을 한 겹 더 넣었을 때 무엇을 얻고 무엇을 내주는지를 다룹니다. Kata Containers, KubeVirt, gVisor는 같은 질문에 서로 다른 방식으로 답하는 세 물건이고, 셋을 한 축에 놓고 비교할 근거는 개별 벤치마크마다 조건이 제각각이라 흩어져 있습니다. 이 챕터는 그 조각들을 모읍니다.

런타임 챕터가 “일이 어디로 옮겨가나"를 묻는다면, 이 챕터는 “경계가 어디에 생기고 그 경계의 요금은 누가 내나"를 묻습니다. 격리를 한 겹 추가하는 결정은 계산을 없애지 않습니다. 계산이 지나가는 경로를 늘리고, 그 경로마다 값을 매깁니다.

문서 지도

문서다루는 것
01 Kata · KubeVirt · gVisor세 물건이 경계를 긋는 위치, 위협 모델과 2026년 CVE 현황, Kata의 VM 크기 산정과 제약, 성능 실측 11개 축, KubeVirt의 파드-VM 구조와 운영 제약, 시나리오별 판단

공통 축

  • 격리는 위치에 따라 다른 값을 물린다. runc는 커널을 공유하고, gVisor는 유저스페이스에서 syscall을 재구현하며, Kata·KubeVirt는 진짜 VM을 세운다.
  • CPU와 메모리 대역폭은 세 접근 모두 오차범위 안이다. 비용은 계산이 아니라 경계를 건너는 빈도에 붙는다.
  • 벤치마크는 측정 조건이 다르면 같은 막대에 올릴 수 없다. 부팅 시간 하나만 봐도 논문마다 측정 구간의 정의가 다르다.
  • 오버헤드 상수는 워크로드 크기와 무관하게 고정이다. 그래서 작은 파드를 많이 띄우는 클러스터일수록 상대 손해가 커진다.
  • 보안은 이분법이 아니다. VM 경계는 공유 커널보다 두껍지만 하이퍼바이저와 virtio 장치라는 새 표면을 대가로 받는다.
마지막 수정 일자