6.5. 선택사항: NUMA 리소스에 대한 폴링 작업 구성
nodeGroup 의 NUMA 리소스 Operator에서 제어하는 데몬은 사용 가능한 NUMA 리소스에 대한 업데이트를 검색합니다. NUMAResourcesOperator CR(사용자 정의 리소스)에서 spec.nodeGroups 사양을 구성하여 이러한 데몬에 대한 폴링 작업을 미세 조정할 수 있습니다. 이를 통해 폴링 작업에 대한 고급 제어가 제공됩니다. 이러한 사양을 구성하여 스케줄링 동작을 개선하고 독점적인 스케줄링 결정을 해결합니다.
구성 옵션은 다음과 같습니다.
-
infoRefreshMode: kubelet을 폴링하기 위한 트리거 조건을 결정합니다. NUMA 리소스 Operator는 결과 정보를 API 서버에 보고합니다. -
infoRefreshPeriod: 폴링 업데이트 간 기간을 결정합니다. podsFingerprinting: 노드에서 실행 중인 현재 Pod 세트에 대한 포인트-시간 정보가 폴링 업데이트에서 노출되는지 확인합니다.참고podsFingerprinting은 기본적으로 활성화되어 있습니다.podsFingerprinting은NUMAResourcesSchedulerCR의cacheResyncPeriod사양에 대한 요구 사항입니다.cacheResyncPeriod사양을 사용하면 노드에서 보류 중인 리소스를 모니터링하여 더 정확한 리소스 가용성을 보고할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc)를 설치합니다. -
cluster-admin권한이 있는 사용자로 로그인합니다. - NUMA Resources Operator를 설치합니다.
절차
NUMAResourcesOperatorCR에서spec.nodeGroups사양을 구성합니다.apiVersion: nodetopology.openshift.io/v1 kind: NUMAResourcesOperator metadata: name: numaresourcesoperator spec: nodeGroups: - config: infoRefreshMode: Periodic 1 infoRefreshPeriod: 10s 2 podsFingerprinting: Enabled 3 name: worker- 1
- 유효한 값은 마침표 ,
Events,입니다.PeriodicAndEventsPeriodic을 사용하여infoRefreshPeriod에서 정의한 간격에 따라 kubelet을 폴링합니다.이벤트를사용하여 모든 Pod 라이프사이클 이벤트에서 kubelet을 폴링합니다. 두 메서드를 모두 활성화하려면PeriodicAndEvents를 사용합니다. - 2
- 마침표 또는
새로 고침 모드에 대한 폴링 간격을 정의합니다. 새로 고침 모드가PeriodicAndEventsEvents인 경우 필드는 무시됩니다. - 3
- 유효한 값은
Enabled또는Disabled입니다.Enabled로 설정하는 것은NUMAResourcesScheduler의cacheResyncPeriod사양에 대한 요구 사항입니다.
검증
NUMA 리소스 Operator를 배포한 후 다음 명령을 실행하여 노드 그룹 구성이 적용되었는지 확인합니다.
$ oc get numaresop numaresourcesoperator -o json | jq '.status'
출력 예
... "config": { "infoRefreshMode": "Periodic", "infoRefreshPeriod": "10s", "podsFingerprinting": "Enabled" }, "name": "worker" ...