나는 도커를 사용하여 서비스 묶음을 컨테이너화하고 있습니다. 때로는 컨테이너 서비스가 많이 교환됩니다. 제 호스트 시스템의 sysctl을 통해 vm.swappiness
을 1
으로 변경했습니다. 그러나 docker의 메모리 cgroup은 여전히 오래된 (기본값) 값 60을 갖습니다. 따라서 모든 특정 컨테이너의 cgroup은 parent와 동일한 값을 갖습니다.도커 컨테이너 swappiness 변경
sysctl vm.swappiness
> vm.swappiness = 1
cat /sys/fs/cgroup/memory/docker/memory.swappiness
> 60
cat /sys/fs/cgroup/memory/docker/${CONTAINER_ID}/memory.swappiness
> 60
모든 시도는 실패 permission denied
(memory.swappiness
파일에 원하는 값으로 반향) swappiness 수동으로 변경한다.
제목 : 컨테이너 스왑을 어떻게 제한 할 수 있습니까? 나는 커널 3.13
와 ubuntu 12.04
사용하고
내 고정 표시기 버전은 버전 0.2
의 (LXC되지 않음)의 원시 실행 드라이버 1.1.2
입니다. 커널은 cgroup_enable=memory swapaccount=1
으로로드됩니다.