This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.3.2.2. スケジューラーポリシーファイルの作成
デフォルトのスケジューリング動作を変更するには、必要な述語および優先順位を使用して JSON ファイルを作成します。次に、JSON ファイルから設定マップを生成し、設定マップを使用するように cluster
スケジューラーオブジェクトを指定します。
手順
スケジューラーポリシーを設定するには、以下を実行します。
必要な述語と優先順位を使って
policy.cfg
という名前の JSON ファイルを作成します。スケジューラー JSON ファイルのサンプル
Copy to Clipboard Copied! Toggle word wrap Toggle overflow スケジューラー JSON ファイルに基づいて設定マップを作成します。
oc create configmap -n openshift-config --from-file=policy.cfg <configmap-name>
$ oc create configmap -n openshift-config --from-file=policy.cfg <configmap-name>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 設定マップの名前を入力します。
以下に例を示します。
oc create configmap -n openshift-config --from-file=policy.cfg scheduler-policy
$ oc create configmap -n openshift-config --from-file=policy.cfg scheduler-policy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
configmap/scheduler-policy created
configmap/scheduler-policy created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow スケジューラー Operator カスタムリソースを編集して設定マップを追加します。
oc patch Scheduler cluster --type='merge' -p '{"spec":{"policy":{"name":"<configmap-name>"}}}' --type=merge
$ oc patch Scheduler cluster --type='merge' -p '{"spec":{"policy":{"name":"<configmap-name>"}}}' --type=merge
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 設定マップの名前を指定します。
以下に例を示します。
oc patch Scheduler cluster --type='merge' -p '{"spec":{"policy":{"name":"scheduler-policy"}}}' --type=merge
$ oc patch Scheduler cluster --type='merge' -p '{"spec":{"policy":{"name":"scheduler-policy"}}}' --type=merge
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Scheduler
設定リソースに変更を加えた後に、openshift-kube-apiserver
Pod の再デプロイを待機します。これには数分の時間がかかる場合があります。Pod が再デプロイされるまで、新規スケジューラーは有効になりません。openshift-kube-scheduler
namespace のスケジューラー Pod のログを表示して、スケジューラーポリシーが設定されていることを確認します。以下のコマンドは、スケジューラーによって登録される述語と優先順位をチェックします。oc logs <scheduler-pod> | grep predicates
$ oc logs <scheduler-pod> | grep predicates
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
oc logs openshift-kube-scheduler-ip-10-0-141-29.ec2.internal | grep predicates
$ oc logs openshift-kube-scheduler-ip-10-0-141-29.ec2.internal | grep predicates
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Creating scheduler with fit predicates 'map[MaxGCEPDVolumeCount:{} MaxAzureDiskVolumeCount:{} CheckNodeUnschedulable:{} NoDiskConflict:{} NoVolumeZoneConflict:{} GeneralPredicates:{} MaxCSIVolumeCountPred:{} CheckVolumeBinding:{} MaxEBSVolumeCount:{} MatchInterPodAffinity:{} PodToleratesNodeTaints:{}]' and priority functions 'map[InterPodAffinityPriority:{} LeastRequestedPriority:{} ServiceSpreadingPriority:{} ImageLocalityPriority:{} SelectorSpreadPriority:{} EqualPriority:{} BalancedResourceAllocation:{} NodePreferAvoidPodsPriority:{} NodeAffinityPriority:{} TaintTolerationPriority:{}]'
Creating scheduler with fit predicates 'map[MaxGCEPDVolumeCount:{} MaxAzureDiskVolumeCount:{} CheckNodeUnschedulable:{} NoDiskConflict:{} NoVolumeZoneConflict:{} GeneralPredicates:{} MaxCSIVolumeCountPred:{} CheckVolumeBinding:{} MaxEBSVolumeCount:{} MatchInterPodAffinity:{} PodToleratesNodeTaints:{}]' and priority functions 'map[InterPodAffinityPriority:{} LeastRequestedPriority:{} ServiceSpreadingPriority:{} ImageLocalityPriority:{} SelectorSpreadPriority:{} EqualPriority:{} BalancedResourceAllocation:{} NodePreferAvoidPodsPriority:{} NodeAffinityPriority:{} TaintTolerationPriority:{}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow