24.3. スケジューリング用のリソース量の設定
スケジューラーがノードを完全に割り当て、エビクションを防止できるようにするために、スケジューリングで利用できるノードリソースの数量を制御できます。
system-reserved
を、Pod のデプロイおよび system-daemon 用にスケジューラーで利用可能にするリソース量と等しくなるようにします。system-reserved
リソースは、sshd および NetworkManager などのオペレーティングシステムのデーモン用に予約されています。エビクションは、Pod が割り当て可能なリソースの要求量よりも多くのリソースを使用する場合に生じます。
ノードは 2 つの値を報告します。
-
Capacity
: マシンにあるリソースの量です。 -
Allocatable
: スケジューリング用に利用できるリソースの量です。
割り当て可能なリソースの量を設定するには、適切な ノード設定マップ を編集して、eviction-hard
または eviction-soft
の system-reserved
パラメーターを追加するか、または変更します。
kubeletArguments:
eviction-hard: 1
- "memory.available<500Mi"
system-reserved:
- "memory=1.5Gi"
- 1
- このしきい値は、
eviction-hard
またはeviction-soft
のいずれかになります。
system-reserved
設定に適切な値を決定するには、ノード要約 API を使用してノードのリソース使用状況を判別します。詳細は、割り当てられたリソース用のノードの設定 を参照してください。
変更を有効にするために OpenShift Container Platform サービスを再起動します。
# systemctl restart atomic-openshift-node