在 Kubernetes 中,你可以使用资源配额(Resource Quotas)和限制范围(Limit Ranges)来为命名空间下的 Pod 配置资源的配额。以下是一个示例,演示如何为命名空间配置 Pod 的 CPU 和内存配额:
apiVersion: v1
kind: ResourceQuota
metadata:
  name: pod-resource-quota
spec:
  hard:
    pods: "5"
    requests.cpu: "2"
    limits.cpu: "4"
    requests.memory: 4Gi
    limits.memory: 8Gi

在这个例子中,pods 表示命名空间中可以创建的 Pod 的最大数量,requests.cpu 表示所有 Pod 的 CPU 请求总量,limits.cpu 表示所有 Pod 的 CPU 使用的最大限制,而 requests.memory 和 limits.memory 分别表示内存请求总量和使用的最大限制。

此外,你还可以使用限制范围(Limit Ranges)来对单个 Pod 的资源进行更详细的限制。以下是一个简单的示例:
apiVersion: v1
kind: LimitRange
metadata:
  name: pod-limit-range
spec:
  limits:
  - type: Container
    max:
      cpu: "2"
    min:
      cpu: "0.5"
    maxLimitRequestRatio:
      cpu: 4
    default:
      cpu: "1"

在这个例子中,max.cpu 表示单个容器的 CPU 使用的最大限制,min.cpu 表示单个容器的 CPU 使用的最小限制,maxLimitRequestRatio 表示请求和限制之间的最大比率,default.cpu 表示容器的默认 CPU 请求。

请根据你的实际需求调整这些值。需要注意的是,这里的配置可能需要根据你的集群和应用程序的需求进行调整。建议查阅你使用的 Kubernetes 版本的文档,以确保正确配置资源配额和限制范围。


转载请注明出处:http://www.zyzy.cn/article/detail/9832/Kubernetes