k8s 资源配置
k8s 资源配置
·
节点资源查看
apiVersion: v1
kind: Pod
metadata:
name: mysql
spec:
containers:
- name: db
image: mysql
env:
- name: MYSQL_ROOT_PASSWORD
value: "123456"
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
在K8s中定义Pod中运行容器有两个维度的限制:
- 资源需求(requests):即运行Pod的节点必须满足运行Pod的最基本需求才能运行Pod。
如: Pod运行至少需要2G内存,1核CPU - 资源限额(limits):即运行Pod期间,可能内存使用量会增加,那最多能使用多少内存,这就是资源限额。
配置demo
不指定内存限制
如果没有为一个容器指定内存限制,则自动遵循以下情况之一:
- 容器可无限制地使用内存。容器可以使用其所在节点所有的可用内存, 进而可能导致该节点调用 OOM Killer。 此外,如果发生 OOM Kill,没有资源限制的容器将被杀掉的可行性更大。
- 运行的容器所在命名空间有默认的内存限制,那么该容器会被自动分配默认限制。 集群管理员可用使用 LimitRange 来指定默认的内存限制。
参考:
https://blog.csdn.net/w2009211777/article/details/123984428
https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/
更多推荐
已为社区贡献65条内容
所有评论(0)