Cloud/Docker 2

Docker Architecture 그림으로 이해하기

도커를 더욱 이해하기 위해서 아래 그림을 직접 그려보았다. Docker 개요 사람들은 왜 도커를 사용할까 도커를 사용하면 복잡한 앱을 여러 컨테이너로 통합하여 실행할 수 있다. (하나로 합치는 것이 아닌 연결된 msa) 추가로 alpine이 붙는 이미를 사용하면 더욱 가벼워진다. vm과 비교를 해보면 VM - 하이퍼바이저 위에 [따로 kernel Space와 User Space만들어줌 ]→ 가상화 컨테이너 - 하이퍼바이저와 Kernel Space 위에 [User Space 만들어줌] → 가상화 무거운 Kernel Space가 컨테이너에는 빠져있기 때문에 이처럼 경량화가 가능하다. 이처럼 커널이 빠질 수 있는 것은 LXC라는 기술 덕분이다. LXC Linux Container 기술을 이용하며 kernel의..

Cloud/Docker 2024.04.09

Docker CPU 제어하기

Docker는 CPU 제한을 하지 않으면 unlimited로 무제한으로 사용한다. 컨테이너에서 제한하면 이에 따라 cgroup이 리소스를 제공한다. CPU Time Scheduling CPU 사용시간 제어 - 기본값은 1024이다. lscpu 위의 커맨드로 현재 hostos의 cpu를 확인할 수 있다. docker run -d --name=cpu-1024 --cpu-shares=1024 leecloudo/stress:1.0 stress --cpu 4 docker run 할 떄 위 처럼 옵션을 주면, cpu 작업 시간을 제한할 수 있다. cpu register에 등록되어 제어가 된다. 위에처럼 stress로 부하테스트를 하면 이렇게 htop에서 cpu가 가득 차는 것을 확인할 수 있다. student@ho..

Cloud/Docker 2024.03.25