컨테이너에서 프로세서 선호도를 구현하는 방법은 무엇입니까?

컨테이너에서 프로세서 선호도를 구현하는 방법은 무엇입니까?

kubernetes를 사용하면 특정 워크로드에 대한 노드 선호도를 설정할 수 있다는 것을 알았습니다. 다양한 컨테이너 기술(예: 도커, 로켓 등)에 프로세스를 코어에 고정할 수 있는 기능이 있는지 궁금합니다. 아니면 다중 테넌트 환경에서 이것이 가능합니까? 아마도 이는 베어메탈 설정을 의미하는 것일까요?

답변1

시스템이 SMP(대칭적 다중 처리)와 여러 물리적 CPU, CPU 코어 및 논리적 CPU의 일부 조합을 지원하는 경우 Docker 컨테이너를 특정 CPU 리소스에 할당할 수 있습니다.

CPU 및 Docker 컨테이너와 관련된 예제 명령

여기에 표시된 예에서는 docker run 명령을 사용하여 컨테이너를 생성할 때 mycontainer Docker 컨테이너를 특정 CPU 리소스에 할당하는 방법을 다룹니다. 명령을 실행할 때 환경에 맞게 Docker 컨테이너 이름과 CPU 구성 요소 번호를 바꿔야 합니다.

이 명령은 mycontainer Docker 컨테이너를 첫 번째 CPU(CPU0)에 할당합니다.

# docker run --cpuset 0 /bin/bash mycontainer

여러 CPU를 지정할 수 있습니다. 이 명령은 mycontainer Docker 컨테이너를 CPU 0과 1에 할당합니다.

# docker run --cpuset 0,1 /bin/bash mycontainer

CPU 범위를 지정할 수 있습니다. 이 명령은 mycontainer Docker 컨테이너를 CPU 0, 1, 2에 할당합니다.

# docker run --cpuset 0-2 /bin/bash mycontainer

관련 정보