K 8 sのスケジューリングポリシー
1823 ワード
ScuedulorはK 8 sのスケジューラです
shedulerは単独のプログラムとして実行され、起動後もAPI Serverを堅牢に維持し、取得する
Kubernetesのスケジューラはプラグイン化された形式で実現され、ユーザーのカスタマイズと二次開発を容易にする.ユーザーはスケジューラをカスタマイズし、プラグインとしてKubernetesと統合したり、他のスケジューラを統合したりすることができ、異なるタイプのタスクをスケジュールしやすくなります.
Kubernetesスケジューラのソースコードはkubernetes/plugin/にあり、一般的なコードディレクトリ構造は以下の通りである. より大きいかどうか . をフィルタリングする でない限り衝突しません.
predicate中に適切なノードがない場合、podは条件を満たすノードが現れるまでpending状態になります.
Prioritiesの第2段階で、複数の条件を満たすノードが発生した場合、優先度はどのように計算されますか? を使うべきではありません. 高くなる.
Kubernetesのスケジューリングポリシーは、主にグローバルスケジューリングとランタイムスケジューリングの2つに分けられます.ここで、グローバルスケジューリングポリシーはスケジューラの起動時に構成され、実行時スケジューリングポリシーは主に選択ノード(
NodeSelector,ノード親和性(nodeAffinity),pod親和性と逆親和性(podAffinityとpodAntiAffinity).Node Affinity、
podAffinity/AntiAffinityおよび後述の汚点(Taints)や許容(tolerations)などの特性は、Kubertes 1.6ではいずれもBeta段階にある.
転載先:https://www.cnblogs.com/spillage/p/10429800.html
shedulerは単独のプログラムとして実行され、起動後もAPI Serverを堅牢に維持し、取得する
PodSpec.NodeName
は空のpodであり、各podに対してbindingが作成され、そのpodがどのノードに配置されるべきかを示すKubernetesのスケジューラはプラグイン化された形式で実現され、ユーザーのカスタマイズと二次開発を容易にする.ユーザーはスケジューラをカスタマイズし、プラグインとしてKubernetesと統合したり、他のスケジューラを統合したりすることができ、異なるタイプのタスクをスケジュールしやすくなります.
Kubernetesスケジューラのソースコードはkubernetes/plugin/にあり、一般的なコードディレクトリ構造は以下の通りである.
kubernetes/plugin/pkg/
`-- scheduler //
|-- algorithm
| |-- predicates //
| `-- priorities //
| `-- util
|-- algorithmprovider
| `-- defaults //
Predicate —— ,
PodFitsResources
:ノード上の残りのリソースがpod要求のリソースPodFitsHost
:podがNodeNameを指定している場合は、ノード名がNodeNameと一致するかどうかを確認します.PodFitsHostPorts
:ノードで既に使用するportがpod出願のportと衝突するかどうかPodSelectorMatches
:podで指定されたlabelと一致しないノードNoDiskConflict
:mountのvolumeとpodで指定されたvolumeは、両方が読み取り専用predicate中に適切なノードがない場合、podは条件を満たすノードが現れるまでpending状態になります.
Prioritiesの第2段階で、複数の条件を満たすノードが発生した場合、優先度はどのように計算されますか?
BalancedResourceAllocation
:ノード上のCPUとMemoryの使用率が近いほど重みが高くなります.これは上と一緒に使うべきで、単独でImageLocalityPriority
:ミラーを使用するノードが既に存在する傾向があり、ミラーの総サイズ値が大きいほど重みがKubernetesのスケジューリングポリシーは、主にグローバルスケジューリングとランタイムスケジューリングの2つに分けられます.ここで、グローバルスケジューリングポリシーはスケジューラの起動時に構成され、実行時スケジューリングポリシーは主に選択ノード(
NodeSelector,ノード親和性(nodeAffinity),pod親和性と逆親和性(podAffinityとpodAntiAffinity).Node Affinity、
podAffinity/AntiAffinityおよび後述の汚点(Taints)や許容(tolerations)などの特性は、Kubertes 1.6ではいずれもBeta段階にある.
転載先:https://www.cnblogs.com/spillage/p/10429800.html