6.13. 클러스터의 노드에 특정 CPU 할당
정적 CPU 관리자 정책을 사용하는 경우 특정 노드에서 중요한 시스템 프로세스에 대해 예약된 CPU 목록을 명시적으로 정의할 수 있습니다. 중요한 시스템 프로세스를 위해 CPU를 예약하면 클러스터의 안정성을 보장할 수 있습니다.
예를 들어 CPU가 24개인 시스템에서 컨트롤 플레인에 0~3번 CPU를 예약하여 컴퓨팅 노드에서 4~23번 CPU를 사용하도록 할 수 있습니다.
6.13.1. 노드의 CPU 예약 링크 복사링크가 클립보드에 복사되었습니다!
reservedSystemCPUs 매개변수를 정의하기 위해 KubeletConfig CR(사용자 정의 리소스)을 생성하여 특정 노드에서 중요한 시스템 프로세스에 대해 예약된 CPU 목록을 명시적으로 정의할 수 있습니다. 중요한 시스템 프로세스를 위해 CPU를 예약하면 클러스터의 안정성을 보장할 수 있습니다.
이 목록은 systemReserved 매개변수를 사용하여 예약할 수 있는 CPU를 대체합니다.
systemReserved 매개변수에 대한 자세한 내용은 "OpenShift Container Platform 클러스터의 노드에 대한 리소스 할당"을 참조하십시오.
사전 요구 사항
- 구성하려는 노드 유형에 대한 MCP(Machine config pool)와 연결된 라벨이 있습니다.
프로세스
KubeletConfigCR의 YAML 파일을 생성합니다.apiVersion: machineconfiguration.openshift.io/v1 kind: KubeletConfig metadata: name: set-reserved-cpus spec: kubeletConfig: reservedSystemCPUs: "0,1,2,3" machineConfigPoolSelector: matchLabels: pools.operator.machineconfiguration.openshift.io/worker: "" #...다음과 같습니다.
metadata.name- CR의 이름을 지정합니다.
spec.kubeletConfig.reservedSystemCPUs- MCP와 연결된 노드에 예약할 CPU의 코어 ID를 지정합니다.
spec.machineConfigPoolSelector.matchLabels- MCP에서 레이블을 지정합니다.
CR 오브젝트를 생성합니다.
$ oc create -f <file_name>.yaml