---
title: Kubernetes ResourceQuota 与 LimitRange(命名空间资源治理与验证)
date: 2025-11-26
keywords:
- ResourceQuota
- LimitRange
- Requests
- Limits
- 命名空间治理
description: 使用ResourceQuota与LimitRange在命名空间层面治理CPU/内存与对象数量,设定默认与最大最小限制,提供配置与验证方法。
categories:
- 文章资讯
- 技术教程
---
概述
ResourceQuota限制命名空间的总资源与对象配额,LimitRange为Pod与容器设定默认与边界值。两者协同可防止资源滥用并提升多租户可控性。
关键实践与参数
- 配额限制:
hard包括cpumemorypods等 - 默认限制: LimitRange设定
default与defaultRequest - 策略协同: 与PriorityClass与HPA协作治理
- 观测: 采集配额使用与事件
示例/配置/实现
apiVersion: v1
kind: ResourceQuota
metadata: { name: ns-quota, namespace: app }
spec:
hard:
requests.cpu: "4"
requests.memory: 8Gi
limits.cpu: "8"
limits.memory: 16Gi
pods: "50"
---
apiVersion: v1
kind: LimitRange
metadata: { name: ns-lr, namespace: app }
spec:
limits:
- type: Container
defaultRequest: { cpu: "250m", memory: "256Mi" }
default: { cpu: "1000m", memory: "512Mi" }
min: { cpu: "100m", memory: "128Mi" }
max: { cpu: "2000m", memory: "1Gi" }
验证
- 配额生效: 超出
pods或cpu限制的创建被拒 - 默认与边界: 未声明资源的容器自动应用默认值
- 事件与告警: 配额超限触发事件并告警
- 协作稳定: 与HPA与PriorityClass协同下资源稳定
注意事项
- 配额需结合历史与容量规划
- LimitRange默认值需适配工作负载
- 监控并定期调整配额
- 与命名空间策略与RBAC协同

发表评论 取消回复