Kubernetes中ResourceQuota的最佳实践:优化资源分配
*managed-nfs-storage.storageclass.storage.k8s.io/requests.storage: "5G"**:特定存储类别下的PVC请求的存储总量不超过5GiB。**requests.storage: "10G"**:所有持久卷声明(PVC)请求的存储总量不超过10GiB。**requests.cpu: "4"**:所有Pod请求的CPU总和不超过4个核心。*
·
Kubernetes中ResourceQuota(资源配额)对象的不同配置示例
计算资源配额示例
apiVersion: v1
kind: ResourceQuota
metadata:
name: compute-resources
namespace: test
spec:
hard:
requests.cpu: "4"
requests.memory: 10Gi
limits.cpu: "6"
limits.memory: 12Gi
- apiVersion: v1:表示该资源使用的API版本。
- kind: ResourceQuota:表明这是一个资源配额对象。
- metadata:
- name: compute-resources:资源配额的名称。
- namespace: test:资源配额所属的命名空间。
- spec:
- hard:定义具体的资源配额限制。
- requests.cpu: “4”:所有Pod请求的CPU总和不超过4个核心。
- requests.memory: 10Gi:所有Pod请求的内存总和不超过10GiB。
- limits.cpu: “6”:所有Pod的CPU限制总和不超过6个核心。
- limits.memory: 12Gi:所有Pod的内存限制总和不超过12GiB。
- hard:定义具体的资源配额限制。
存储资源配额示例
apiVersion: v1
kind: ResourceQuota
metadata:
name: storage-resources
namespace: test
spec:
hard:
requests.storage: "10G"
managed-nfs-storage.storageclass.storage.k8s.io/requests.storage: "5G"
- apiVersion: v1:表示该资源使用的API版本。
- kind: ResourceQuota:表明这是一个资源配额对象。
- metadata:
- name: storage-resources:资源配额的名称。
- namespace: test:资源配额所属的命名空间。
- spec:
- hard:定义具体的资源配额限制。
- requests.storage: “10G”:所有持久卷声明(PVC)请求的存储总量不超过10GiB。
- managed-nfs-storage.storageclass.storage.k8s.io/requests.storage: “5G”:特定存储类别下的PVC请求的存储总量不超过5GiB。
- hard:定义具体的资源配额限制。
对象数量配额示例
apiVersion: v1
kind: ResourceQuota
metadata:
name: object-counts
namespace: test
spec:
hard:
pods: "10"
count/deployments.apps: "3"
count/services: "3"
- apiVersion: v1:表示该资源使用的API版本。
- kind: ResourceQuota:表明这是一个资源配额对象。
- metadata:
- name: object-counts:资源配额的名称。
- namespace: test:资源配额所属的命名空间。
- spec:
- hard:定义具体的资源配额限制。
- pods: “10”:Pod的数量不超过10个。
- count/deployments.apps: “3”:Deployment的数量不超过3个。
- count/services: “3”:Service的数量不超过3个。
- hard:定义具体的资源配额限制。
查看配额
可以使用以下命令查看特定命名空间的资源配额:
kubectl get quota -n test
这个命令将显示命名空间test
中的所有资源配额及其使用情况。
更多推荐
已为社区贡献6条内容
所有评论(0)