プロファイル適用性: レベル1
LimitRangeポリシーは、特定のネームスペース内のPodまたはコンテナごとの個別のリソースを、最大の計算およびストレージリソースを強制することによって制約します。ネームスペースごとに作成できるLimitRange制約は1つだけです。
監査
次のコマンドを実行して、制限範囲ポリシーを確認してください:
kubectl get limitranges --all-namespaces
LimitRangeポリシーを追加してコンテナリソースを制約します。
修復
各コンテナに対して、デフォルトのリクエストと制限、および最小および最大リクエストを含む制限範囲ポリシーを作成します。
LimitRangeサポートはKubernetes 1.10以降でデフォルトで有効になっています。以下のYAMLファイルは、各コンテナのデフォルトのリクエストと制限、および最小と最大のリクエストを指定するLimitRangeを示しています。
apiVersion: v1 kind: LimitRange metadata: name: cpu-min-max-demo-lr spec: limits - default: cpu: 1 defaultRequest: cpu: 0.5 max: cpu: 2 min: cpu 0.5 type: Container
LimitRangeは次の方法でnamespaceに適用できます:
kubectl apply -f <example-LimitRange>.yaml --namespace=<Enter-Namespace>
LimitRange構成が適用されると、名前空間内で作成されたすべてのコンテナに、指定されていない場合はデフォルトのCPUリクエストと制限が割り当てられます。名前空間内のすべてのコンテナは、最小値以上かつ最大CPU値以下のCPUリクエストを持つ必要があり、そうでない場合はコンテナがインスタンス化されません。