1. 资源限制
apiVersion: v1 kind: Pod metadata: name: backend spec: containers: - name: db image: mysql resources: requests: memory: "256Mi" cpu: "500m" # 容器默认有 1024 CPU 配额。 因此,500m 表示使用 0.5核 limits: memory: "512Mi" cpu: "1000m" - name: wp image: wordpress resources: requests: memory: "512Mi" cpu: "250m" limits: memory: "512Mi" cpu: "1000m"
2. 资源配额(ResourceQuota)
apiVersion: v1 kind: ResourceQuota metadata: name: quota namespace: deployment spec: hard: cpu: "1" memory: 500Mi persistentvolumeclaims: "10" pods: "2" replicationcontrollers: "20" resourcequotas: "1" secrets: "10" services: "5"
这里对 deployment 这个命名空间的 cpu、内存、pod 数等等做了限制。所有创建在这个命名空间下的对象加起来,只要有一项超出配额,则创建不成功。如我要创建一个需要使用 1000Mi 内存的 Pod,则直接报错。