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

70 lines
3.5 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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: ''
### 在该命名空间中,所有非终止状态的 Pod其内存限额总量不能超过该值
limits.memory:
### 在该命名空间中,所有 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