K8S资源限制
目录
资源限制
- 容器的资源需求,资源限制
requests:需求,最低保障
limits:限制,硬限制
CPU:
1颗逻辑CPU
1=1000millicores
500m=0.5CPU
内存:
E、P、T、G、M、K
Ei、Pi
1G=1024M
- QoS优先级:
当资源紧张时,k8s集群会按照QoS优先级杀死低优先级Pod,取保高优先级Pod运行
# kubectl describe pods Pod_Name
查看"QoS Class:"字段注释
=========================
Guranteed:高优先级
每个容器同时设置CPU和内存的requests和limits.
并且:
cpu.limits=cpu.requests
memory.limits=memory.request
Burstable:中优先级
至少有一个容器设置CPU或内存资源的requests属性
BestEffort:没有任何一个容器设置了requests或limits属性;最低优先级别;
- 配置资源清单
apiVersion: v1
kind: Pod
metadata:
name: myapp
namespace: default
spec:
containers:
- name: myapp
image: ikubernetes/myapp:v1
resources:
requests:
cpu: "200m"
memory: "128Mi"
limits:
cpu: "1"
memory: "512Mi"
cpu: "1" 使用一颗cpu
memory: "128Mi" 内存使用512M