在 Kubernetes
中,ResourceQuota
(资源配额)是一种机制,用于对命名空间中的资源使用进行限制和控制。它可以帮助管理员在 Kubernetes
集群中实施资源管理策略,确保不同的命名空间或用户不会滥用资源或超出预定的限制。
ResourceQuota
控制器是 Kubernetes
中的一部分,它负责监控和执行 ResourceQuota
对象的策略。控制器会定期检查每个命名空间的资源使用情况,并与 ResourceQuota
对象中定义的限制进行比较。如果某个命名空间的资源使用超出了限制,控制器将采取相应的措施来限制该命名空间的资源使用。
通过 ResourceQuota
,管理员可以限制每个命名空间的 CPU、内存、存储等资源的使用量。它还可以限制 Pod、服务、配置映射等对象的数量。通过定义适当的 ResourceQuota
对象,管理员可以确保资源在集群中得到合理的分配和使用。
在 Kubernetes
源码中,ResourceQuota
控制器的实现可以在 pkg/controller/resourcequota
目录下找到。该目录中的文件包含了 ResourceQuota
控制器的业务逻辑和处理逻辑。
1 | // pkg/controller/resourcequota/resource_quota_controller.go |
REF:
1.resource-quotas
2.quota-api-object
3.admission_control_resource_quota
4.pkg/controller/resourcequota/resource_quota_controller.go