3장. PerformanceProfile [performance.openshift.io/v2]


설명
PerformanceProfile은 performanceprofiles API 스키마입니다.
유형
object

3.1. 사양

속성유형설명

apiVersion

string

APIVersion은 버전이 지정된 이 오브젝트 표현의 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값을 거부할 수 있습니다. 추가 정보: https://Git.k8s.io/community/contributors/devel/sig-architecture/API-conventions.md#resources

kind

string

kind는 이 오브젝트가 나타내는 REST 리소스에 해당하는 문자열 값입니다. 서버는 클라이언트에서 요청을 제출한 끝점에서 이를 유추할 수 있습니다. CamelCase로 업데이트할 수 없습니다. 추가 정보: https://Git.k8s.io/community/contributors/devel/sig-architecture/API-conventions.md#types-kinds

메타데이터

ObjectMeta

표준 오브젝트의 메타데이터입니다. 추가 정보: https://Git.k8s.io/community/contributors/devel/sig-architecture/API-conventions.md#metadata

spec

object

PerformanceProfileSpec은 PerformanceProfile의 원하는 상태를 정의합니다.

status

object

PerformanceProfileStatus는 관찰되는 PerformanceProfile 상태를 정의합니다.

3.1.1. .spec

설명
PerformanceProfileSpec은 PerformanceProfile의 원하는 상태를 정의합니다.
유형
object
필수 항목
  • cpu
  • nodeSelector
속성유형설명

additionalKernelArgs

배열(문자열)

추가 커널 인수 설정.

cpu

object

CPU는 CPU 관련 매개변수 세트를 정의합니다.

globallyDisableIrqLoadBalancing

boolean

GloballyDisableIrqLoadBalancing은 Isolated CPU 세트에 대해 IRQ 로드 밸런싱이 비활성화될지 여부를 전환합니다. 옵션을 "true"로 설정하면 Isolated CPU 세트에 대한 IRQ의 부하 분산이 비활성화됩니다. 옵션을 "false"로 설정하면 모든 CPU에서 IRQ가 균형을 유지할 수 있지만 irq-load-balancing.crio.io/cpu-quota.crio.io 주석을 사용할 때 IRQ의 부하 분산을 Pod별로 비활성화할 수 있습니다. 기본값은 "false"입니다.

hardwareTuning

object

HardwareTuning은 분리 및 예약된 cpus에 대한 CPU 주파수 세트를 정의합니다.

hugepages

object

HugePages는 대규모 페이지 관련 매개변수 세트를 정의합니다. 여러 크기 값을 동시에 사용하여 대규모 페이지를 설정할 수 있습니다. 예를 들어 hugepages는 1G 및 2M로 설정할 수 있으며 성능 프로필 컨트롤러에 의해 두 값이 모두 노드에 설정됩니다. hugepages 기본 크기를 1G로 설정하면 노드에서 모든 2M 관련 폴더가 제거되며 노드에서 2M hugepages를 구성할 수 없습니다.

kernelPageSize

string

KernelPageSize는 커널 페이지 크기를 정의합니다. 4k는 기본값이며 64k는 aarch64에서만 지원됩니다.

machineConfigLabel

object(문자열)

MachineConfigLabel은 Operator가 생성하는 MachineConfig에 추가할 레이블을 정의합니다. 이 성능 프로필을 대상으로 하는 MachineConfigPool의 MachineConfigSelector에서 사용해야 합니다. 기본값은 "machineconfiguration.openshift.io/ROLE=<same ROLE as in NodeSelector label key>"입니다.

machineConfigPoolSelector

object(문자열)

MachineConfigPoolSelector는 Operator가 생성한 KubeletConfig와 같은 리소스의 MachineConfigPoolSelector에서 사용할 MachineConfigPool 레이블을 정의합니다. 기본값은 "machineconfiguration.openshift.io/ROLE=<same ROLE as in NodeSelector label key>"입니다.

net

object

네트워크는 일련의 네트워크 관련 기능을 정의합니다.

nodeSelector

object(문자열)

NodeSelector는 Operator가 생성한 Tuned와 같은 리소스의 NodeSelector에서 사용할 Node 레이블을 정의합니다. 이 성능 프로필을 대상으로 하는 MachineConfigPool의 NodeSelector에 있는 노드 레이블과 일치하지 않아도 됩니다. machineConfigLabels 또는 machineConfigPoolSelector가 설정되지 않은 경우 이전에 언급한 필드의 기본값을 계산할 수 있도록 특정 NodeSelector 형식 <domain>/<ROLE>: ""을 예상합니다.

numa

object

NUMA에서 토폴로지 인식 유사성과 관련된 옵션 정의

realTimeKernel

object

RealTimeKernel은 실시간 커널 관련 매개변수 세트를 정의합니다. 설정하지 않으면 RT 커널이 설치되지 않습니다.

workloadHints

object

WorkloadHints는 다양한 유형의 워크로드에 대한 팁을 정의합니다. 이를 통해 노드 상단에 적용해야 하는 정확한 tuned 및 kernel 인수 세트를 정의할 수 있습니다.

3.1.2. .spec.cpu

설명
CPU는 CPU 관련 매개변수 세트를 정의합니다.
유형
object
필수 항목
  • 격리됨
  • reserved
속성유형설명

balanceIsolated

boolean

BalanceIsolated는 Isolated CPU 세트가 부하 분산 작업 로드에 적합한지 여부를 토글합니다. 이 옵션을 "false"로 설정하면 Isolated CPU 세트가 static이 됩니다. 즉, 워크로드가 여러 CPU에서 작동하려면 각 스레드를 특정 CPU에 명시적으로 할당해야 합니다. "true"로 설정하면 CPU 간에 워크로드의 균형을 조정할 수 있습니다. "false"로 설정하면 보장되는 워크로드에 대해 가장 예측 가능한 성능이 제공되지만 CPU 부하 분산의 복잡성을 애플리케이션에 부과합니다. 기본값은 "true"입니다.

격리됨

string

Isolated는 애플리케이션 스레드에 가능한 한 많은 실행 시간을 제공하는 데 사용할 CPU 세트를 정의합니다. 즉 CPU에서 가능한 한 많은 외부 작업을 제거하는 것입니다. CPU 관리자는 예약된 CPU를 제외하고 워크로드를 실행할 모든 CPU를 선택할 수 있습니다. 워크로드가 분리된 CPU에서 실행되도록 하려면 다음을 수행합니다. 예약된 CPU와 분리된 CPU의 병합에는 모든 온라인 CPU 2가 포함되어야 합니다. isolated CPU 필드는 예약된 CPU에 대한 보완 필드여야 합니다.

오프라인

string

오프라인은 사용하지 않고 오프라인으로 설정되는 CPU 세트를 정의합니다.

reserved

string

reserved는 kubelet에서 시작한 컨테이너 워크로드에 사용할 CPU 세트를 정의합니다.

공유됨

string

Shared는 해당 워크로드에서 이미 사용 중인 독점적이지 않은 추가 cpus가 필요한 보장된 워크로드 간에 공유되는 CPU 세트를 정의합니다.

3.1.3. .spec.hardwareTuning

설명
HardwareTuning은 분리 및 예약된 cpus에 대한 CPU 주파수 세트를 정의합니다.
유형
object
속성유형설명

isolatedCpuFreq

integer

IsolatedCpuFreq는 분리된 cpus에서 설정할 최소 빈도를 정의합니다.

reservedCpuFreq

integer

ReservedCpuFreq는 예약된 cpus에서 설정할 최대 빈도를 정의합니다.

3.1.4. .spec.hugepages

설명
HugePages는 대규모 페이지 관련 매개변수 세트를 정의합니다. 여러 크기 값을 동시에 사용하여 대규모 페이지를 설정할 수 있습니다. 예를 들어 hugepages는 1G 및 2M로 설정할 수 있으며 성능 프로필 컨트롤러에 의해 두 값이 모두 노드에 설정됩니다. hugepages 기본 크기를 1G로 설정하면 노드에서 모든 2M 관련 폴더가 제거되며 노드에서 2M hugepages를 구성할 수 없습니다.
유형
object
속성유형설명

defaultHugepagesSize

string

DefaultHugePagesSize는 커널 부팅 매개변수 아래에 대규모 페이지의 기본 크기를 정의합니다.

pages

array

Pages는 부팅 시 할당할 대규모 페이지를 정의합니다.

pages[]

object

HugePage는 할당된 특정 크기의 대규모 페이지 수를 정의합니다.

3.1.5. .spec.hugepages.pages

설명
Pages는 부팅 시 할당할 대규모 페이지를 정의합니다.
유형
array

3.1.6. .spec.hugepages.pages[]

설명
HugePage는 할당된 특정 크기의 대규모 페이지 수를 정의합니다.
유형
object
속성유형설명

count

integer

Count는 대규모 페이지의 양을 정의하고 'hugepages' 커널 부팅 매개변수에 매핑합니다.

노드

integer

Node는 hugepages가 할당되는 NUMA 노드를 정의합니다. 지정하지 않으면 페이지가 NUMA 노드 간에 동일하게 할당됩니다.

size

string

size은 대규모 페이지 크기를 정의하고 'hugepagesz' 커널 부팅 매개변수에 매핑됩니다.

3.1.7. .spec.net

설명
네트워크는 일련의 네트워크 관련 기능을 정의합니다.
유형
object
속성유형설명

devices

array

장치에는 CPU.Reserved와 동일한 넷큐 수로 설정될 네트워크 장치 표현 목록이 포함되어 있습니다. 장치를 지정하지 않으면 기본값은 all devices입니다.

devices[]

object

장치는 장치 이름, 벤더 ID, 모델 ID, PCI 경로 및 MAC 주소와 같은 여러 옵션으로 네트워크 장치를 표시하는 방법을 정의합니다.

userLevelNetworking

boolean

UserLevelNetworking이 활성화된 경우 - 모든 또는 지정된 네트워크 장치 대기열 크기를 예약된 CPU 양으로 설정합니다. 기본값은 "false"입니다.

3.1.8. .spec.net.devices

설명
장치에는 CPU.Reserved와 동일한 넷큐 수로 설정될 네트워크 장치 표현 목록이 포함되어 있습니다. 장치를 지정하지 않으면 기본값은 all devices입니다.
유형
array

3.1.9. .spec.net.devices[]

설명
장치는 장치 이름, 벤더 ID, 모델 ID, PCI 경로 및 MAC 주소와 같은 여러 옵션으로 네트워크 장치를 표시하는 방법을 정의합니다.
유형
object
속성유형설명

deviceID

string

네트워크 장치 ID(모델)는 16비트 16진수로 표시됩니다.

interfaceName

string

일치해야 하는 네트워크 장치 이름입니다. 양수 또는 음수가 있는 쉘 스타일 와일드카드 구문을 사용합니다.

vendorID

string

네트워크 장치 벤더 ID는 16비트 Hexmadecimal 번호로 표시됩니다.

3.1.10. .spec.numa

설명
NUMA에서 토폴로지 인식 유사성과 관련된 옵션 정의
유형
object
속성유형설명

topologyPolicy

string

TopologyManager가 활성화된 경우 적용되는 정책의 이름의 기본값은 Operator가 "best-effort"로 설정됩니다.

3.1.11. .spec.realTimeKernel

설명
RealTimeKernel은 실시간 커널 관련 매개변수 세트를 정의합니다. 설정하지 않으면 RT 커널이 설치되지 않습니다.
유형
object
속성유형설명

enabled

boolean

Enabled는 실시간 커널 패키지를 설치해야 하는지 여부를 정의합니다. 기본값은 "false"입니다.

3.1.12. .spec.workloadHints

설명
WorkloadHints는 다양한 유형의 워크로드에 대한 팁을 정의합니다. 이를 통해 노드 상단에 적용해야 하는 정확한 tuned 및 kernel 인수 세트를 정의할 수 있습니다.
유형
object
속성유형설명

highPowerConsumption

boolean

HighPowerConsumption은 노드를 높은 전력 소비 모드로 구성해야 하는지를 정의합니다. 이 플래그는 전력 소비에 영향을 미치지만 CPU 대기 시간이 향상됩니다. 기본값은 false입니다.

mixedCpus

boolean

MixedCpus를 사용하면 노드에서 mixed-cpu-node-plugin을 활성화합니다. 기본값은 false입니다.

perPodPowerManagement

boolean

PerPodPowerManagement는 Pod별 전원 관리에서 노드를 구성해야 하는지 여부를 정의합니다. PerPodPowerManagement 및 HighPowerConsumption 팁을 함께 활성화할 수 없습니다. 기본값은 false입니다.

realTime

boolean

RealTime은 실시간 워크로드에 대해 노드를 구성해야 하는지 여부를 정의합니다. 기본값은 true입니다.

3.1.13. .status

설명
PerformanceProfileStatus는 관찰되는 PerformanceProfile 상태를 정의합니다.
유형
object
속성유형설명

conditions

array

Condition은 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다.

conditions[]

object

Condition은 Operator의 조정 기능 상태를 나타냅니다.

runtimeClass

string

RuntimeClass에는 Operator가 생성한 RuntimeClass 리소스의 이름이 포함됩니다.

tuned

string

Tuned는 이 Operator가 생성한 튜닝 값이 포함된 Tuned 사용자 정의 리소스 오브젝트를 가리킵니다.

3.1.14. .status.conditions

설명
Condition은 현재 상태에 대한 사용 가능한 최신 관찰을 나타냅니다.
유형
array

3.1.15. .status.conditions[]

설명
Condition은 Operator의 조정 기능 상태를 나타냅니다.
유형
object
필수 항목
  • status
  • type
속성유형설명

lastHeartbeatTime

string

 

lastTransitionTime

string

 

message

string

 

reason

string

 

status

string

 

type

string

ConditionType은 Operator의 조정 기능 상태입니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동