Lxc

LXC (LinuX Containers)는 단일 컨트롤 호스트 상에서 여러개의 고립된 리눅스 시스템 (컨테이너)들을 실행하기 위한 운영 시스템 레벨 가상화 방법이다. 리눅스 커널은 cgroups를 절충하여 가상화 머신을 시작할 필요 없이 자원 할당 (CPU, 메모리, 블록 I/O, 네트워크 등)을 한다. Cgroups는 또한 애플리케이션 입장에서 프로세스 트리, 네트워크, 사용자 ID, 마운트된 파일 시스템 등의 운영 환경을 완전히 고립시키기 위해 namespace isolation을 제공한다. LXC는 cgroups와 namespace를 결합하여 애플리케이션을 위한 고립된 환경을 제공한다. Docker 또한 실행 드라이버의 하나로 LXC를 사용할 수 있으며 이를 통해 이미지 관리와 개발 서비스를 제공한다.

LXC는 Linux 커널에서 컨테이너 관련 기능이 구현되기 시작한 2008 년경부터 커널 기능만을 이용하여 컨테이너 역할을 할 수 있는 소프트웨어로 개발되고 있다. Linux 커널을 패치 할 필요없이 커널에 구현되어있는 컨테이너에 관련된 기능을 활용하여 컨테이너 관리 작업을 할 수 있다.