第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 を参照してください。

metadata

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

array (string)

追加のカーネル引数。

cpu

object

CPU は、CPU 関連のパラメーターのセットを定義します。

globallyDisableIrqLoadBalancing

boolean

globallyDisableIrqLoadBalancing は、IRQ ロードバランシングを分離 CPU セットに対して無効にするかどうかを切り替えます。このオプションを true に設定すると、分離 CPU セットの IRQ ロードバランシングが無効になります。オプションを "false" に設定すると、irq-load-balancing.crio.io/cpu-quota.crio.io アノテーションを使用する場合は、IRQ がすべての CPU 間で分散されます。ただし、IRQ-load-balancing.crio.io/cpu-quota.crio.io アノテーションを使用すると、Pod の CPU ごとに IRQ を分散させることができます。デフォルトは False です。

hugepages

object

hugepages は、Huge Page 関連のパラメーターのセットを定義します。複数のサイズで同時に Huge Page を設定することができます。たとえば、hugepages は 1G と 2M で設定できます。いずれの値も Performance Profile コントローラーによってノードに設定されます。hugepages のデフォルトサイズを 1G に設定すると、ノードから 2M 関連のフォルダーがすべて削除され、ノードで 2M の Huge Page を設定することができないことに注意してください。

machineConfigLabel

object (string)

MachineConfigLabel は、Operator が作成する MachineConfig に追加するラベルを定義します。これは、このパフォーマンスプロファイルを対象とする MachineConfigPool の MachineConfigSelector に置き換える必要があります。デフォルトは、NodeSelector label key> のように "machineconfiguration.openshift.io/role=<same role です。

machineConfigPoolSelector

object (string)

machineConfigPoolSelector は、Operator によって作成された KubeletConfigs などのリソースの MachineConfigPoolSelector で使用する MachineConfigPool ラベルを定義します。デフォルトは、NodeSelector label key> のように "machineconfiguration.openshift.io/role=<same role です。

net

object

net は、ネットワーク関連機能のセットを定義します

nodeSelector

object (string)

nodeSelector は、Operator によって作成される Tuned などのリソースの NodeSelectors で使用する Node ラベルを定義します。おそらく、このパフォーマンスプロファイルを対象とする MachineConfigPool の NodeSelector のノードラベルと一致する必要はありません。machineConfigLabels または machineConfigPoolSelector が設定されていない場合、前述のフィールドのデフォルト値を計算できるようにするために、特定の NodeSelector 形式 <domain>/<role>: "" が発生することが予想されます。

--numa \

object

NUMA は、トポロジー対応アフィニティーに関連するオプションを定義します

realTimeKernel

object

realTimeKernel は、リアルタイムカーネル関連のパラメーターのセットを定義します。設定されていない場合、RT カーネルがインストールされません。

workloadHints

object

workloadHints は、さまざまなタイプのワークロードのヒントを定義します。これにより、ノードの上に適用する必要がある tuned およびカーネル引数のセットを正確に定義できます。

3.1.2. .spec.cpu

説明
CPU は、CPU 関連のパラメーターのセットを定義します。
object
必須
  • 分離
  • reserved
プロパティータイプ説明

balanceIsolated

boolean

BalanceIsolated は、分離された CPU セットが負荷分散の作業の対象となるかどうかを切り替えます。このオプションを "false" に設定すると、分離 CPU セットは静的になります。つまり、複数の CPU で作業するには、ワークロードは各スレッドを明示的に特定の CPU に割り当てる必要があります。これを true に設定すると、ワークロードを CPU 全体で分散できます。これを false に設定すると、保証されたワークロードに対して最も予測可能なパフォーマンスが得られますが、CPU の負荷分散の複雑さはアプリケーションにオフロードされます。デフォルトは True です。

分離

string

isolated は、可能な限りアプリケーションスレッドに最もランタイムを与えるために使用される CPU のセットを定義します。つまり、CPU から多くの余分なタスクを削除することを意味します。CPU マネージャーは、予約された CPU 以外のワークロードを実行するために任意の CPU を選択できることに注意することが重要です。ワークロードが分離された CPU 上で実行されるようにするため:1.予約済み CPU と分離された CPU の集合には、すべてのオンライン CPU 2 が含まれている必要があります。isolated CPUs フィールドは、予約された CPU フィールドで補完的なものである必要があります。

offlined

string

offline は、未使用の CPU セットを定義し、オフラインに設定する

reserved

string

reserved は、kubelet によって開始されるコンテナーワークロードに使用されない CPU のセットを定義します。

shared

string

Shared は、これらのワークロードによってすでに使用されている分離された排他的リソースとともに、排他的ではない追加の CPU を必要とする、保証されたワークロード間で共有される CPU のセットを定義します。

3.1.3. .spec.hugepages

説明
hugepages は、Huge Page 関連のパラメーターのセットを定義します。複数のサイズで同時に Huge Page を設定することができます。たとえば、hugepages は 1G と 2M で設定できます。いずれの値も Performance Profile コントローラーによってノードに設定されます。hugepages のデフォルトサイズを 1G に設定すると、ノードから 2M 関連のフォルダーがすべて削除され、ノードで 2M の Huge Page を設定することができないことに注意してください。
object
プロパティータイプ説明

defaultHugepagesSize

string

DefaultHugePagesSize は、カーネルブートパラメーターでヒュージページのデフォルトサイズを定義します。

pages

array

Page は、起動時に割り当てる Huge Page を定義します。

pages[]

object

Huge Page は、特定のサイズに割り当てられた Huge Page の数を定義します。

3.1.4. spec.hugepages.pages

説明
Page は、起動時に割り当てる Huge Page を定義します。
array

3.1.5. .spec.hugepages.pages[]

説明
Huge Page は、特定のサイズに割り当てられた Huge Page の数を定義します。
object
プロパティータイプ説明

count

integer

count は、Huge Page の量を定義します。これは、'hugepages' カーネルブートパラメーターにマッピングします。

ノード

integer

node は、hugepages が割り当てられる NUMA ノードを定義します。指定されていない場合、ページは NUMA ノード間で均等に割り当てられます

size

string

size は Huge Page サイズを定義し、'hugepagesz' カーネルブートパラメーターにマッピングします。

3.1.6. .spec.net

説明
net は、ネットワーク関連機能のセットを定義します
object
プロパティータイプ説明

devices

array

デバイス には、CPU.Reserved と等しい netqueue カウントで設定されるネットワークデバイス表現のリストが含まれています。デバイスを指定しないと、デフォルトはすべてのデバイスになります。

devices

object

デバイスは、デバイス名、ベンダー ID、モデル ID、PCI パス、MAC アドレスなどの複数のオプションでネットワークデバイスを表す方法を定義します。

userLevelNetworking

boolean

userLevelNetworking の場合:すべてまたは指定されたネットワークデバイスキューのサイズを予約済み CPU の量に設定します。デフォルトは False です。

3.1.7. .spec.net.devices

説明
デバイス には、CPU.Reserved と等しい netqueue カウントで設定されるネットワークデバイス表現のリストが含まれています。デバイスを指定しないと、デフォルトはすべてのデバイスになります。
array

3.1.8. .spec.net.devices[]

説明
デバイスは、デバイス名、ベンダー ID、モデル ID、PCI パス、MAC アドレスなどの複数のオプションでネットワークデバイスを表す方法を定義します。
object
プロパティータイプ説明

deviceID

string

ネットワークデバイス ID (モデル)は、16 ビットの 16 進数の数字として再準備されます。

interfaceName

string

照合するネットワークデバイス名。正または負のシェルスタイルのワイルドカードの構文を使用します。

vendorID

string

ネットワークデバイスベンダー ID は、16 ビットの 10 進数として再規定されています。

3.1.9. .spec.numa

説明
NUMA は、トポロジー対応アフィニティーに関連するオプションを定義します
object
プロパティータイプ説明

topologyPolicy

string

TopologyManager が有効になっている Operator のデフォルトで best-effort に設定されている場合に適用されるポリシーの名前

3.1.10. .spec.realTimeKernel

説明
realTimeKernel は、リアルタイムカーネル関連のパラメーターのセットを定義します。設定されていない場合、RT カーネルがインストールされません。
object
プロパティータイプDescription

enabled

boolean

enabled は、リアルタイムカーネルパッケージをインストールする必要があるかどうかを定義します。デフォルトは False です。

3.1.11. spec.workloadHints

説明
workloadHints は、さまざまなタイプのワークロードのヒントを定義します。これにより、ノードの上に適用する必要がある tuned およびカーネル引数のセットを正確に定義できます。
object
プロパティータイプ説明

highPowerConsumption

boolean

highPowerConsumption は、ノードを高電力消費モードで設定する必要があるかどうかを定義します。フラグは消費電力に影響しますが、CPU レイテンシーが改善されます。デフォルトは false です。

mixedCpus

boolean

MixedCpus は、ノードで mixed-cpu-node-plugin を有効にします。デフォルトは false です。

perPodPowerManagement

boolean

perPodPowerManagement は、ノードを Pod の電源管理ごとに設定する必要があるかどうかを定義します。perPodPowerManagement と HighPowerConsumption ヒントは、一緒に有効にすることはできません。デフォルトは false です。

リアルタイム

boolean

realtime は、ノードをリアルタイムのワークロード用に設定すべきかどうかを定義します。デフォルトは true です。

3.1.12. .status

説明
PerformanceProfileStatus は、PerformanceProfile の監視状態を定義します。
object
プロパティータイプ説明

conditions

array

条件は、現在の状態の最新の利用可能な観測を表します。

conditions[]

object

条件は、Operator の調整機能の状態を表します。

runtimeClass

string

RuntimeClass には、Operator によって作成される RuntimeClass リソースの名前が含まれています。

tuned

string

TuneD は、この Operator によって生成されたチューニング値が含まれる Tuned カスタムリソースオブジェクトを指します。

3.1.13. .status.conditions

説明
条件は、現在の状態の最新の利用可能な観測を表します。
array

3.1.14. .status.conditions[]

説明
条件は、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 では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.