8.2. Topology Manager ポリシー
Topology Manager は、CPU マネージャーや Device Manager などの Hint Provider からトポロジーのヒントを収集し、収集したヒントを使用して Pod
リソースを調整することで、すべての Quality of Service (QoS) クラスの Pod
リソースを調整します。
Topology Manager は、cpumanager-enabled
という名前の KubeletConfig
カスタムリソース (CR) で割り当てる 4 つの割り当てポリシーをサポートしています。
none
ポリシー- これはデフォルトのポリシーで、トポロジーの配置は実行しません。
best-effort
ポリシー-
best-effort
トポロジー管理ポリシーを持つ Pod のそれぞれのコンテナーの場合、kubelet は、そのコンテナーの優先 NUMA ノードアフィニティーに従って、必要なすべてのリソースを NUMA ノード上に調整しようとします。リソース不足のために割り当てが不可能な場合でも、Topology Manager は Pod を許可しますが、割り当ては他の NUMA ノードと共有されます。 restricted
ポリシー-
restricted
トポロジー管理ポリシーを持つ Pod のそれぞれのコンテナーの場合、kubelet は要求を満たすことのできる NUMA ノードの理論上の最小数を決定します。実際の割り当てに該当数の NUMA ノード数が必要な場合、Topology Manager は受付を拒否し、Pod をTerminated
状態にします。NUMA ノードの数が要求を満たすことができる場合、Topology Manager は Pod を許可し、Pod の実行を開始します。 single-numa-node
ポリシー-
single-numa-node
トポロジー管理ポリシーがある Pod のそれぞれのコンテナーの場合、Pod に必要なすべてのリソースを同じ NUMA ノードに割り当てることができる場合は、kubelet は Pod を許可します。単一の NUMA ノードアフィニティーが使用できない場合には、Topology Manager は Pod をノードから拒否します。これにより、Pod は Pod の受付失敗と共にTerminated
(終了)状態になります。