为了账号安全,请及时绑定邮箱和手机立即绑定

kubernetes中的内存表示单位Mi和M的区别

标签:
Kubernetes

记得以前看过一篇文章(现在找不到了),那篇文章讲到了申请memory的单位M,它认为1M=1024K=1024x1024字节,但在k8s中的M表示的意义是不同的,今天特意看了一下官方文档,并实验了一把,特此记录。
官网解释:Meaning of memoryMi表示(1Mi=1024x1024),M表示(1M=1000x1000)(其它单位类推, 如Ki/K Gi/G
创建两个pod, 一个申请1Mi, 另一个申请1M, 通过log来查看他们的区别。
nginx1.yaml

apiVersion: v1kind: Podmetadata:  name: nginxspec:  containers:  - name: nginx1
    image: nginx:test
    ports:    - containerPort: 80    resources:      limits:        cpu: 200m
        memory: 128Mi
      requests:        cpu: 0.1
        memory: 1Mi

nginx2.yaml

apiVersion: v1kind: Podmetadata:  name: nginx2spec:  containers:  - name: nginx2
    image: nginx:test
    ports:    - containerPort: 80    resources:      limits:        cpu: 200m
        memory: 128Mi
      requests:        cpu: 0.1
        memory: 1M

nginx1.yaml(Mi)申请资源的信息如下,可以看到Memory=1024*1024

I0716 11:05:43.555791   31331 factory.go:469] About to try and schedule pod nginx
I0716 11:05:43.555804   31331 scheduler.go:165] Attempting to schedule pod: default/nginx
I0716 11:05:43.555866   31331 predicates.go:565] Predicate: MilliCPU=100 Memory=1048576 NvidiaGPU=0 OpaqueIntResources=map[]

nginx2.yaml(M)申请资源的信息如下,Memory=1000*1000

I0716 11:05:58.404826   31331 factory.go:469] About to try and schedule pod nginx2
I0716 11:05:58.404840   31331 scheduler.go:165] Attempting to schedule pod: default/nginx2
I0716 11:05:58.404904   31331 predicates.go:565] Predicate: MilliCPU=100 Memory=1000000 NvidiaGPU=0 OpaqueIntResources=map[]

         

             




作者:Mark_Zhang
链接:https://www.jianshu.com/p/f798b02363e8


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消