kubernetes-yaml/description/Strategy/ResourceQuotas/description-item.yml

70 lines
3.5 KiB
YAML
Raw Normal View History

2023-12-15 16:39:01 +08:00
# ResourceQuota 资源配额说明官方文档https://v1-22.docs.kubernetes.io/zh/docs/concepts/policy/resource-quotas
# API 版本
apiVersion: v1
# 资源类型
kind: ResourceQuota
# 元数据
metadata:
## 名称
name: 此 ResourceQuota 的名称
## 命名空间
namespace: 此 ResourceQuota 所属的命名空间
# 数据
spec:
## 配额
hard:
### 在该命名空间中,所有非终止状态的 Pod其 CPU 需求总量不能超过该值
cpu: '1000'
### 在该命名空间中,所有非终止状态的 Pod其内存需求总量不能超过该值
memory: 200Gi
### 在该命名空间中,所有非终止状态的 Pod其 CPU 限额总量不能超过该值
limits.cpu: '1000'
### 在该命名空间中,所有非终止状态的 Pod其内存限额总量不能超过该值
limits.memory: 200Gi
### 在该命名空间中,所有 PVC存储资源的需求总量不能超过该值
requests.storage: 1Ti
### 在该命名空间中,对于 <storage-class-name> 类型的 PVC存储资源的需求总量不能超过该值
<storage-class-name>.storageclass.storage.k8s.io/requests.storage: 300Gi
### 在该命名空间中,允许的 PVC 总量
persistentvolumeclaims: '1000'
### 在该命名空间中,允许的 <storage-class-name> 类型的 PVC 总量
<storage-class-name>.storageclass.storage.k8s.io/persistentvolumeclaims: '300'
### 在该命名空间中,允许存在的 ReplicationController 总数上限
replicationcontrollers: '1000'
### 在该命名空间中,允许存在的 ResourceQuota 总数上限
resourcequotas: '100'
### 在该命名空间中,允许存在的 ConfigMap 总数上限
configmaps: '1000'
### 在该命名空间中,允许存在的 Secret 总数上限
secrets: '1000'
### 在该命名空间中,允许存在的 Service 总数上限
services: '100'
### 在该命名空间中,允许存在的 LoadBalancer 类型的 Service 总数上限
services.loadbalancers: '100'
### 在该命名空间中,允许存在的 NodePort 类型的 Service 总数上限
services.nodeports: '100'
### 在该命名空间中,允许存在的非终止状态的 Pod 总数上限
pods: '100'
## 配额作用域
scopeSelector:
matchExpressions:
### 匹配所有引用了所指定的优先级类的 Pods【 operator 可选In包含、NotIn不包含、Exists存在、DoesNotExist不存在values 可选low、medium、high】
- scopeName: PriorityClass
operator: In
values:
- high
### 匹配所有 spec.activeDeadlineSeconds 不小于 0 的 Pod不能和 NotTerminating 同时存在)【 operator 必须为 Exists不能设置 values 】
- scopeName: Terminating
operator: Exists
### 匹配所有 spec.activeDeadlineSeconds 是 nil 的 Pod不能和 Terminating 同时存在)【 operator 必须为 Exists不能设置 values 】
- scopeName: NotTerminating
operator: Exists
### 匹配所有 Qos 是 BestEffort 的 Pod不能和 NotBestEffort 同时存在)【 operator 必须为 Exists不能设置 values 】
- scopeName: BestEffort
operator: Exists
### 匹配所有 Qos 不是 BestEffort 的 Pod不能和 BestEffort 同时存在)【 operator 必须为 Exists不能设置 values 】
- scopeName: NotBestEffort
operator: Exists
### 匹配那些设置了跨名字空间 (反)亲和性条件的 Pod
- scopeName: CrossNamespaceAffinity