在这里插入图片描述

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。

存储资源配额示例

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。

对象数量配额示例

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个。

查看配额

可以使用以下命令查看特定命名空间的资源配额:

kubectl get quota -n test

这个命令将显示命名空间test中的所有资源配额及其使用情况。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐