K8S基本操作-12-Resource limits
Resource limits 資源限制
我們可以設置一個 Deployment 最少需要多少資源,與最多消耗多少資源。
具體的用法是在 containers 裏頭寫下 requests
與 limits
項目。
官方的範例:
---
apiVersion: v1
kind: Pod
metadata:
name: frontend
spec:
containers:
- name: app
image: images.my-company.example/app:v4
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
- name: log-aggregator
image: images.my-company.example/log-aggregator:v6
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
在 Kubernetes 中,CPU 資源以毫核 (millicores) 為單位進行分配。1 毫核等於 CPU 資源的千分之一,也就是 0.1%。250m 也就是 25% 單個 CPU core 使用率。
Ram 的單位可以用 Ei, Pi, Ti, Gi, Mi, Ki,來進行設置,或者是 E, P, T, G, M, k 。
也可以用以下指令檢查:
kubectl describe pod <Pod名稱>
如果要修改某個 Pod 或者 Deployment 的資源,可以直接用以下指令:
kubectl apply -f <設定檔.yaml> --force
(雖然該方法不慎優雅)