kubernetes快速入门15-容器资源需求和限制

网友投稿 291 2022-10-27

kubernetes快速入门15-容器资源需求和限制

kubernetes快速入门15-容器资源需求和限制

一个容器对资源的需要有两个方面:

requests,所需资源的最低保障,这是作为k8s调度器进行调度的衡量条件的指标 limits,资源限制,所需资源的上限,是硬限制

CPU

一颗物理核心cpu在通过超线程技术会被虚拟成多颗逻辑cpu,在docker中一颗逻辑cpu等于1000millicores,那500m的cpu就行于0.5颗逻辑cpu。

内存

进率为1000时,单位为: E, P, T, G, M, K

进率为1024时,单位为:Ei, Pi, Ti, Gi, Mi, Ki

当对pod进行资源限制后,在pod的详细信息里会自动配置"Qos class"字段,字段有如下值:

Guranteed: 确保,保证。pod中每个容器同时设置了cpu和内存的requests和limits, 且cpu.limits=cpu.requests,memory.limits=memory=request,该种pod优先级最高 Burstable: 至少。pod中至少一个容器设置cpu或内存资源的requests属性,该种pod的优先级居中 BestEffort: pod中没有任何一个容器设置了requests或limits属性;该种pod的优先级别最低

资源限制配置参数

KIND: Pod VERSION: v1 FIELDS: spec containers <[]Object> resources limits 允许的最大资源计算量 memory: cpu: requests 请求的最少资源计算量 memory: cpu:

资源限制事例

k8s@node01:~/my_manifests/scheduler$ cat resources-limits.yaml apiVersion: v1 kind: Pod metadata: name: myapp spec: containers: - name: myapp-pod image: ikubernetes/myapp:v1 imagePullPolicy: IfNotPresent resources: requests: cpu: "200m" memory: "128Mi" limits: cpu: "200m" memory: "128Mi" k8s@node01:~/my_manifests/scheduler$ kubectl apply -f resources-limits.yaml pod/myapp created # 查看Pod详细信息 k8s@node01:~/my_manifests/scheduler$ kubectl describe pods/myapp ... Limits: cpu: 200m memory: 128Mi Requests: cpu: 200m memory: 128Mi ... QoS Class: Guaranteed ... # 因requests和limits一样,QoS Class为Guaranteed

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:苹果或将会采用USB TYPE-C接口
下一篇:WebClient抛UnsupportedMediaTypeException异常解决
相关文章

 发表评论

暂时没有评论,来抢沙发吧~