2.11. クォータ制限付きジョブの実行
Red Hat build of Kueue を有効にして Kubernetes ジョブを実行すると、定義したクォータ制限内でリソースの割り当てを管理できます。これにより、予測可能なリソースの可用性、クラスターの安定性、およびパフォーマンスの最適化に役立ちます。
2.11.1. 利用可能なローカルキューの特定 リンクのコピーリンクがクリップボードにコピーされました!
ジョブをキューに送信する前に、ローカルキューの名前を見つける必要があります。
前提条件
- クラスター管理者によって OpenShift Container Platform クラスターに Red Hat build of Kueue がインストールおよび設定されている。
-
クラスター管理者によって
kueue-batch-user-role
クラスターロールが割り当てられている。 -
OpenShift CLI (
oc
) がインストールされている。
手順
次のコマンドを実行し、namespace 内で使用可能なローカルキューをリスト表示します。
oc -n <namespace> get localqueues
$ oc -n <namespace> get localqueues
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME CLUSTERQUEUE PENDING WORKLOADS user-queue cluster-queue 3
NAME CLUSTERQUEUE PENDING WORKLOADS user-queue cluster-queue 3
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.11.2. Red Hat build of Kueue で実行するジョブの定義 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat build of Kueue で実行するジョブを定義する場合は、次の基準を満たしていることを確認してください。
-
kueue.x-k8s.io/queue-name
ラベルを使用して、ジョブの送信先となるローカルキューを指定します。 - 各ジョブ Pod のリソース要求を含めます。
Red Hat build of Kueue はジョブを一時停止し、リソースが利用可能になったときにジョブを開始します。Red Hat build of Kueue は、ジョブと同じ名前の Workload
オブジェクトとして表される、対応するワークロードを作成します。
前提条件
- クラスター管理者によって OpenShift Container Platform クラスターに Red Hat build of Kueue がインストールおよび設定されている。
-
クラスター管理者によって
kueue-batch-user-role
クラスターロールが割り当てられている。 -
OpenShift CLI (
oc
) がインストールされている。 - ジョブを送信するローカルキューの名前を特定した。
手順
Job
オブジェクトを作成します。ジョブの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行してジョブを実行します。
oc create -f <filename>.yaml
$ oc create -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して出力を確認し、作成したジョブに対して Pod が実行されていることをチェックします。
oc get job <job-name>
$ oc get job <job-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME STATUS COMPLETIONS DURATION AGE sample-job-sk42x Suspended 0/1 2m12s
NAME STATUS COMPLETIONS DURATION AGE sample-job-sk42x Suspended 0/1 2m12s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して出力を確認し、ワークロードがジョブの namespace で作成されたことをチェックします。
oc -n <namespace> get workloads
$ oc -n <namespace> get workloads
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME QUEUE RESERVED IN ADMITTED FINISHED AGE job-sample-job-sk42x-77c03 user-queue 3m8s
NAME QUEUE RESERVED IN ADMITTED FINISHED AGE job-sample-job-sk42x-77c03 user-queue 3m8s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow