본문 바로가기

프로그래밍 공부/Docker

1. LXC(Liunx Containers) 무엇인가?

반응형

LXC는 리눅스 커널 기능만 이용하여 컨테이너 역할을 할 수 있는 소프웨어를 개발하였다.

커널기술 cgroups와 namespace를 결합하여 프로세스를 단독으로 격리시킬 수 있는 환경을 제공한다.

LXC 구조

위 그림을 보시면

- cgroups(control groups의 약자)을 이용하여 프로세스들이 자원의 사용 할 수 있게 CPU, Memory, Network, Device, I/O을 제한하고 격리시켜 제공하며,

 - namespace는 커널의 리소스를 격리된공간을 만들어주는 리눅스 커널 기능으로, HOST OS로 부터 Mount, UTS, IPC, PID, Network, User  등을 격리시켜준다.

 

즉. LXC는 cgroups와 namespace를 이용하여 격리된 공간을 만들어준다.

 

* Mount - 마운트 포인트 격리

* UTS - hostname과 domainname을 격리

* IPC - (프로세스 간 통신(Inter-Process Communication) 자원을 격리

* PID - Process ID 격리

* Network - 네트워크 인터페이스 격리

* User - UID, GID 격리

'프로그래밍 공부 > Docker' 카테고리의 다른 글

0. Docker 및 Liunx 목차  (0) 2019.09.17
3. Liunx Namespace  (0) 2019.09.13
2. Liunx cgroups(Control groups) 란?  (0) 2019.09.13