8.3.3. 制限範囲の作成
LimitRange オブジェクトを定義することで、特定のプロジェクト内の Pod、コンテナー、イメージ、イメージストリーム、または永続ボリューム要求 (PVC) に対して、特定のリソース制限を設定できます。制限範囲を設定することで、そのプロジェクトにおけるリソース消費量を制限できます。
手順
必要な仕様で
LimitRangeオブジェクトを作成します。apiVersion: "v1" kind: "LimitRange" metadata: name: "resource-limits" spec: limits: - type: "Pod" max: cpu: "2" memory: "1Gi" min: cpu: "200m" memory: "6Mi" - type: "Container" max: cpu: "2" memory: "1Gi" min: cpu: "100m" memory: "4Mi" default: cpu: "300m" memory: "200Mi" defaultRequest: cpu: "200m" memory: "100Mi" maxLimitRequestRatio: cpu: "10" - type: openshift.io/Image max: storage: 1Gi - type: openshift.io/ImageStream max: openshift.io/image-tags: 20 openshift.io/images: 30 - type: "PersistentVolumeClaim" min: storage: "2Gi" max: storage: "50Gi"各項目の説明:
metadata.name-
LimitRangeオブジェクトの名前を指定します。 spec.limit.type.Pod- Pod の制限を指定します。必要に応じて、CPU とメモリーの最小値と最大値を指定します。
spec.limit.type.Container- コンテナーの制限を指定します。必要に応じて、CPU とメモリーの最小値と最大値を指定します。
spec.limit.type.default-
コンテナーの場合、
Pod仕様で指定されていない場合に、コンテナーが使用できるデフォルトの CPU またはメモリー量を指定します。このパラメーターは任意です。 spec.limit.type.defaultRequest-
コンテナーの場合、
Pod仕様で指定されていない場合に、コンテナーが要求できるデフォルトの CPU またはメモリー量を指定します。このパラメーターは任意です。 spec.limit.type.maxLimitRequestRatio-
コンテナーの場合、
Pod仕様内で指定可能な制限対要求の最大比率を指定します。このパラメーターは任意です。 spec.limit.type.openshift.io/Image- イメージオブジェクトの制限を指定します。OpenShift イメージレジストリーにプッシュできるイメージの最大サイズを設定します。
spec.limit.type.openshift.io/ImageStream-
イメージストリームの制限を指定します。必要に応じて、
ImageStreamオブジェクトファイルに含めることができるイメージタグと参照の最大数を設定します。 spec.limit.type.openshift.io/PersistentVolueClaim- 永続的なボリューム要求の制限を指定します。要求可能なストレージ容量の最小値と最大値を設定します。
オブジェクトを作成します。
$ oc create -f <limit_range_file> -n <project>各項目の説明:
<limit_range_file>- 作成した YAML ファイルの名前を指定します。
<project>- 制限を適用するプロジェクトを指定します。