8.5.2.3. クラスターレベルのオーバーコミットの設定
OpenShift CLI を使用して Cluster Resource Override Operator を設定することで、クラスター内のオーバーコミットを制御できます。
Cluster Resource Override Operator には、Operator がオーバーコミットを制御する必要のある各プロジェクトの ClusterResourceOverride カスタムリソース (CR) およびラベルが必要です。
デフォルトでは、インストールプロセスによって、clusterresourceoverride-operator namespace のコントロールプレーンノードに 2 つの Cluster Resource Override Pod が作成されます。必要に応じて、これらの Pod をインフラストラクチャーノードなどの他のノードに移動できます。インフラストラクチャーノードは、環境の実行に必要なサブスクリプションの合計数にカウントされません。詳細は、「Cluster Resource Override Operator Pod の移動」を参照してください。
前提条件
-
制限がコンテナーに設定されていない場合、Cluster Resource Override Operator は影響を与えません。
LimitRangeオブジェクトを使用してプロジェクトのデフォルト制限を指定するか、Pod仕様で制限を設定してオーバーライドが適用されるようにする必要があります。
手順
ClusterResourceOverrideCR を編集します。apiVersion: operator.autoscaling.openshift.io/v1 kind: ClusterResourceOverride metadata: name: cluster spec: podResourceOverride: spec: memoryRequestToLimitPercent: 50 cpuRequestToLimitPercent: 25 limitCPUToMemoryPercent: 200 # ...ここでは、以下のようになります。
spec.podResourceOverride.spec.memoryRequestToLimitPercent-
コンテナーのメモリー制限を上書きする場合、その上書き率を 1-100% の範囲で指定します。デフォルトは
50です。このパラメーターは任意です。 spec.podResourceOverride.spec.cpuRequestToLimitPercent-
コンテナーの CPU 制限を上書きする場合、その上書き率を 1-100% の範囲で指定します。デフォルトは
25です。このパラメーターは任意です。 spec.podResourceOverride.spec.limitCPUToMemoryPercent-
コンテナーのメモリー制限を上書きする場合、その上書き率を指定します。1Gi の RAM の 100 パーセントでのスケーリングは、1 CPU コアに等しくなります。これは CPU 要求をオーバーライドする前に処理されます (設定した場合)。デフォルトは
200です。このパラメーターは任意です。
以下のラベルが Cluster Resource Override Operator がオーバーコミットを制御する必要のある各プロジェクトの namespace オブジェクトに追加されていることを確認します。
apiVersion: v1 kind: Namespace metadata: # ... labels: clusterresourceoverrides.admission.autoscaling.openshift.io/enabled: "true" # ...ここでは、以下のようになります。
metadata.labels.clusterresourceoverrides.admission.autoscaling.openshift.io/enabled: "true"- このプロジェクトで Cluster Resource Override Operator を使用することを指定します。