강좌 & 팁
지난 11월 4일에 lwn 올라온 소식에는 control group manger 에 관련된 소식이 있었습니다.
요즘 핫하다고 하는 docker 시스템은 cgroupfs 를 이용하여 구동이 됩니다.
cgroupfs 은 여러분의 리눅스 시스템이 지원하다면 /sys/fs 에서 찾을 수 있고 만들수도 있습니다.
뭐 그러한데 그럼 CGManger 는 뭐냐.
이것은 host 에 대몬 형태로 떠 있습니다.
주로 D-bus 를 사용하는 unix-domain-socket 을 이용하고 있고
클라이언트로부터 cgroup 과 관련된 요청을 받고 처리해주는 역할을 합니다.
뭐 groupfs 에서 사용자가 처리해야 할 복잡한 일들을 고수준의 API 를 이용해서
수행할 수 있도록 하는 것이 가능합니다.
CGManager 는 안전하게 그리고 프로세스가 수행하기 위해서 특별한 권한이 필요하지 않게
컨테이너를 실행할수 있도록 지원하는 것입니다.
실제 리눅스 커널이라는 것이 결국 init 로 부터 실행되는 모든 하위 프로세스의 연결입니다.
이런한 커널의 기능과 제공되는 서비스들을 계층화 시키고 관리될 수 있도록 하여
하위의 프로세스들을 완벽히 분리하고 자원을 분배 할수 있도록 가상화하는 것에서
사용되는 주요 기술이 바로 cgroup 과 namespace 등입니다.
현재 관리되고 있는 subsystem 들이 cpu , memory, block io 가 주로 관리 되고 있습니다.
일반적으로 우리가 알고 있는 우분투, 레드햇 등등의 시스템은 1개의 커널과 1개의 플랫폼이
연결되어 구동하는 스타일인데 이제 1개의 커널에 두개 이상의 플랫폼 구동 환경이 갖추어져 가고
있는 형상입니다.
영문원본은 아래의 링크를 읽어 주세요