AMD GPU演算子
AMD GPUオペレータ・クラスタ・アドオンを有効にすると、次のキー/値ペアを引数として渡すことができます。
| キー(APIおよびCLI) | キーの表示名(コンソール) | 説明 | 必須/オプション | デフォルト値 | 値の例 |
|---|---|---|---|---|---|
affinity |
affinity |
アフィニティ・スケジューリング・ルールのグループ。 プレーン・テキストまたはBase64でエンコードされたJSON形式。 未使用者:
可能な等価:
|
オプション | null | null |
nodeSelectors |
ノード・セレクター |
ノード・セレクタおよびノード・ラベルを使用して、アドオン・ポッドが実行されるワーカー・ノードを制御できます。 ポッドをノードで実行するには、ポッドのノード・セレクタのキー/値がノードのラベルと同じである必要があります。
プレーン・テキストまたはBase64でエンコードされたJSON形式。 未使用者:
可能な等価:
|
オプション | null | {"foo":"bar", "foo2": "bar2"}ポッドは、 |
numOfReplicas |
レプリカの数 | アドオン・デプロイメントのレプリカの数。 未使用者:
可能な等価:
|
必須 | 1クラスタごとにアドオン・デプロイメントのレプリカを1つ作成します。 |
2クラスタごとにアドオン・デプロイメントのレプリカを2つ作成します。 |
rollingUpdate |
ローリング更新 |
maxSurgeおよびmaxUnavailableによるローリング更新の望ましい動作を制御します。 プレーン・テキストまたはBase64でエンコードされたJSON形式。 未使用者:
可能な等価:
|
オプション | null | null |
tolerations |
許容範囲 |
taintおよびtolerationsを使用して、アドオン・ポッドが実行されるワーカー・ノードを制御できます。 taintがあるノード上でポッドを実行するには、ポッドに対応する許容範囲が必要です。
プレーン・テキストまたはBase64でエンコードされたJSON形式。 可能な等価:
|
オプション | null | [{"key":"tolerationKeyFoo", "value":"tolerationValBar", "effect":"noSchedule", "operator":"exists"}]この許容値を持つポッドのみが、 |
topologySpreadConstraints |
topologySpreadConstraints |
指定されたトポロジ間で一致するポッドを分散する方法。 プレーン・テキストまたはBase64でエンコードされたJSON形式。 未使用者:
|
オプション | null | null |
AMD GPU Operatorクラスタ・アドオンの構成引数を設定する場合は、次の点に注意してください:
- サンプル値のTest RunnerおよびDevice Config Manager ConfigMap名は、AMD GPU Operatorネームスペースで事前に作成されたConfigMapsを参照します。
- DRAドライバを有効にするには、同じアドオン更新で
draDriver.enableをtrueに、devicePlugin.enableDevicePluginをfalseに設定します。 imagePullPolicy、devicePluginImagePullPolicyおよびnodeLabellerImagePullPolicyでは、サポートされている値はAlways、IfNotPresentおよびNeverです。- これらのパラメータから提供される許容範囲配列は、アドオンのデフォルトとマージされます。指定された許容差は、デフォルトの許容差を同じキーと効果で置き換えます。それ以外の場合は追加されます。
| キー(APIおよびCLI) | キーの表示名(コンソール) | 説明 | 必須/オプション | デフォルト値 | 値の例 |
|---|---|---|---|---|---|
skipNodeFeatureDiscoveryDependencyCheck |
スキップノード機能検出依存関係チェック | アドオンがノード機能検出の依存関係チェックをスキップするかどうかを制御します。 | オプション | false |
true |
selector |
セレクタ | AMD GPUオペレータによって管理されるKubernetesノードを選択します。 | オプション | {"feature.node.kubernetes.io/amd-gpu":"true"} |
{"node.kubernetes.io/instance-type":"BM.GPU.MI300X.8"} |
devicePlugin |
デバイスプラグイン | AMD GPUデバイス・プラグインおよびノード・ラベラーを構成します。 | オプション | {"enableDevicePlugin":true,"devicePluginImagePullPolicy":"IfNotPresent","devicePluginTolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"enableNodeLabeller":true,"nodeLabellerImagePullPolicy":"IfNotPresent","nodeLabellerTolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"kubeletSocketPath":"/var/lib/kubelet/device-plugins","hostNetwork":false,"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1}} |
{"enableDevicePlugin":true,"devicePluginImagePullPolicy":"Always","devicePluginTolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"devicePluginArguments":{"resource_naming_strategy":"single"},"enableNodeLabeller":true,"nodeLabellerImagePullPolicy":"Always","nodeLabellerTolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"nodeLabellerArguments":["compute-memory-partition","compute-partitioning-supported","memory-partitioning-supported"],"kubeletSocketPath":"/var/lib/kubelet/device-plugins","hostNetwork":true,"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1}} |
metricsExporter |
metricsExporter | AMD GPUメトリックの収集および公開を構成します。 | オプション | {"enable":true,"serviceType":"ClusterIP","port":5000,"nodePort":32500,"imagePullPolicy":"IfNotPresent","tolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"hostNetwork":false,"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1},"rbacConfig":{"enable":false,"disableHttps":false,"staticAuthorization":{"clientName":"","enable":false}},"prometheus":{"serviceMonitor":{"enable":false,"interval":"30s","honorLabels":true,"honorTimestamps":false}}} |
{"enable":true,"serviceType":"NodePort","port":5001,"nodePort":32501,"imagePullPolicy":"IfNotPresent","config":{},"tolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"hostNetwork":true,"selector":{"feature.node.kubernetes.io/amd-gpu":"true"},"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1},"rbacConfig":{"enable":true,"disableHttps":false},"prometheus":{"serviceMonitor":{"enable":false,"interval":"30s","honorLabels":true,"honorTimestamps":false}},"resource":{"limits":{"cpu":"1","memory":"1Gi"},"requests":{"cpu":"100m","memory":"128Mi"}},"podAnnotations":{"prometheus.io/scrape":"true"},"podResourceAPISocketPath":"/var/lib/kubelet/pod-resources","serviceAnnotations":{"prometheus.io/scrape":"true"}} |
testRunner |
テストランナー | 選択したノードでAMD GPUヘルス検証および診断テストを構成します。 | オプション | {"enable":false,"imagePullPolicy":"IfNotPresent","tolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"logsLocation":{"hostPath":"/var/log/amd-test-runner","logsExportSecrets":[],"mountPath":"/var/log/amd-test-runner"},"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1}} |
{"enable":true,"imagePullPolicy":"IfNotPresent","config":{"name":"test-runner-config-map"},"logsLocation":{"hostPath":"/var/log/amd-test-runner","mountPath":"/var/log/amd-test-runner","logsExportSecrets":[]},"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1},"tolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"selector":{"feature.node.kubernetes.io/amd-gpu":"true"}} |
configManager |
構成マネージャ | デバイス構成マネージャを介してAMD GPUパーティション化プロファイルを構成します。 | オプション | {"enable":false,"imagePullPolicy":"IfNotPresent","configManagerTolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1}} |
{"enable":true,"imagePullPolicy":"IfNotPresent","config":{"name":"config-manager-config"},"selector":{"feature.node.kubernetes.io/amd-gpu":"true"},"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1},"configManagerTolerations":[{"key":"amd-dcm","operator":"Equal","value":"up","effect":"NoExecute"}]} |
draDriver |
ドライバ | AMD GPUのKubernetes動的リソース割当てを構成します。 | オプション | {"enable":false,"imagePullPolicy":"IfNotPresent","tolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1}} |
{"enable":true,"imagePullPolicy":"IfNotPresent","tolerations":[{"key":"amd.com/gpu","operator":"Equal","value":"present","effect":"NoSchedule"}],"cmdLineArguments":{},"selector":{"feature.node.kubernetes.io/amd-gpu":"true"},"upgradePolicy":{"upgradeStrategy":"RollingUpdate","maxUnavailable":1}} |
controllerManager |
コントローラマネージャ | AMD GPUオペレータ・コントローラのデプロイメントを構成します。 | オプション | {"replicas":1,"resources":{"limits":{"cpu":"1000m","memory":"1Gi"},"requests":{"cpu":"100m","memory":"256Mi"}},"imagePullPolicy":"Always","nodeSelector":{},"affinity":{"nodeAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"weight":1,"preference":{"matchExpressions":[{"key":"node-role.kubernetes.io/control-plane","operator":"Exists"}]}}]}},"tolerations":[{"key":"amd-gpu-unhealthy","operator":"Exists","effect":"NoSchedule"},{"key":"node-role.kubernetes.io/master","operator":"Equal","effect":"NoSchedule"},{"key":"node-role.kubernetes.io/control-plane","operator":"Equal","effect":"NoSchedule"}],"simEnable":false} |
{"replicas":2,"resources":{"requests":{"cpu":"120m","memory":"192Mi"}},"imagePullPolicy":"IfNotPresent","nodeSelector":{"kubernetes.io/os":"linux"},"affinity":{"nodeAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"weight":10,"preference":{"matchExpressions":[{"key":"kubernetes.io/os","operator":"In","values":["linux"]}]}}]}},"tolerations":[{"key":"validation.amd.com/controller","operator":"Exists","effect":"NoSchedule"}],"simEnable":false} |