1.14.5. Placement での ManagedClusterSets の使用
Placement
リソースは、namespace レベルのリソースで、placement namespace にバインドされる ManagedClusterSets
から ManagedClusters
セットを選択するルールを定義します。
必要なアクセス権限: クラスター管理者またはクラスターセット管理者。
1.14.5.1. 配置の概要
マネージドクラスターによる配置の仕組みについては、以下を参照してください。
-
Kubernetes クラスターは、cluster スコープの
ManagedClusters
としてハブクラスターに登録されます。 -
managedcluster
は、クラスタースコープのManagedClusterSets
に編成されます。 -
ManagedClusterSets
はワークロード namespace にバインドされます。 -
namespace スコープの
Placements
は、ManagedClusterSets
の一部を指定して、ManagedClusters
候補の作業セットを選択します。 Placements
は、ラベルと要求セレクターを使用して作業セットから選択します。重要:
Placement
では、placement namespace にManagedClusterSet
がバインドされていない場合、ManagedCluster
は選択されません。
Placement
仕様には以下のフィールドが含まれます。
ClusterSets
は、ManagedClusters
の選択元のManagedClusterSets
を表します。-
指定されていない場合は、Placement namespace にバインドされる
ManagedClusterSets
からManagedClusters
が選択されます。 -
指定されている場合は、
ManagedClusters
がこのセットの交差部分から選択され、ManagedClusterSets
は Placement namespace にバインドされます。
-
指定されていない場合は、Placement namespace にバインドされる
NumberOfClusters
は、配置要件を満たすManagedClusters
の中から選択する数を表します。指定されていない場合は、配置要件を満たすすべての
ManagedClusters
が選択されます。-
Predicates
は、ラベルおよび要求セレクターでManagedClusters
を選択する述語のスライスを表します。述語は ORed です。 prioritizerPolicy
は優先順位のポリシーを表します。モード
はExact
、Additive、
または""
のいずれかになります。ここで""
はデフォルトで Additive になります。-
Additive
モードでは、設定値が特に指定されていない Prioritizer はデフォルト設定で有効になっています。現在のデフォルト設定では、Steady と Balance の重みは 1 で、他の Prioritizer は 0 になります。デフォルトの設定は、今後変更される可能性があるので、優先順位が変更される可能性があります。Additive
モードでは、すべての Prioritizer を設定する必要はありません。 -
Exact
モードでは、設定値で特に指定されていない Prioritizer の重みがゼロになります。Exact
モードでは、必要な Prioritizer の完全なセットを入力する必要がありますが、リリースごとに動作が変わることはありません。
-
設定
とは、Prioritizer の設定を表します。Name
は、Prioritizer の名前です。Prioritizer の有効な名前のリストを参照してください。-
Balance
: クラスター間の決定を分散します。 -
Steady
: 既存のデシジョンが安定していることを確認します。 -
ResourceAllocatableCPU
&ResourceAllocatableMemory
: 割り当て可能なリソースに基づいてクラスターを分類します。
-
-
weight
は Prioritizer の重みを定義します。値は [0,10] の範囲に指定する必要があります。それぞれの prioritizer は、[-100, 100] の範囲でクラスターの整数スコアを計算します。クラスターの最後のスコアは、以下の式sum(weight * prioritizer_score)
で決定されます。重みが大きい場合は、Prioritizer はクラスターの選択で重みの高いものを受け取ることを意味し、一方、重みが 0 の場合は Prioritizer が無効であることを示します。