对应到
Kubernetes的Pod容器上,就是下面这4个参数:
◎ spec.container[].resources.requests.cpu;
◎ spec.container[].resources.limits.cpu;
◎ spec.container[].resources.requests.memory;
◎ spec.container[].resources.limits.memory。
其中,limits对应资源量的上限,即最多允许使用这个上限的资源
量。由于CPU资源是可压缩的,进程无论如何也不可能突破上限,因此
设置起来比较容易。对于Memory这种不可压缩资源来说,它的Limit设
置就是一个问题了,如果设置得小了,当进程在业务繁忙期试图请求超
过Limit限制的Memory时,此进程就会被Kubernetes杀掉。因此,
Memory的Request与Limit的值需要结合进程的实际需求谨慎设置。如果
不设置CPU或Memory的Limit值,会怎样呢?在这种情况下,该Pod的资
源使用量有一个弹性范围,我们不用绞尽脑汁去思考这两个Limit的合理值,但问题也来了,考虑下面的例子:

Pod A的 Memory Request被设置为1GB,Node A当时空闲的Memory为1.2GB,符
合Pod A的需求,因此Pod A被调度到Node A上。运行3天后,Pod A的访问请求大增,
内存需要增加到1.5GB,此时Node A的剩余内存只有200MB,由于Pod A新增的内存已
经超出系统资源,所以在这种情况下,Pod A就会被Kubernetes杀掉。

重点:

尽管Requests和Limits只能被设置到容器上,但是设置Pod级别的
Requests和Limits能大大提高管理Pod的便利性和灵活性,因此在
Kubernetes中提供了对Pod级别的Requests和Limits的配置。对于CPU和
内存而言,Pod的Requests或Limits是指该Pod中所有容器的Requests或
Limits的总和(对于Pod中没有设置Requests或Limits的容器,该项的值
被当作0或者按照集群配置的默认值来计算)。下面对CPU和内存这两
种计算资源的特点进行说明。

k8s 资源管理的更多相关文章

  1. k8s资源管理(基础操作)

    1. 基础 本文实操基于k8s 1.22.1 # 可以查看资源分配情况 kubectl describe node # 全局资源情况查看 kubectl api-resources 1.1 apply ...

  2. k8s补充

    k8s补充 容器云发展及主要内容 1.云计算,交付标准(iaas--openstack) 国内:阿里云一华为云(振兴杯)百度云(私有云) 国外:AWS 2.平台即服务(PAAS) 例如:新浪云(号称免 ...

  3. k8s学习-资源管理

    在云计算领域,资源可被分为计算资源.网络资源.存储资源三大类,也可被分别称作为计算云.网络云.存储云.在以容器为核心的云平台上,应用容器镜像也是一种资源. 一.计算资源管理 计算资源在云平台上主要指应 ...

  4. 2.K8S的核心资源管理方法

    目录 1.1陈述式资源管理方法 1.1.1.管理名称空间资源 1.1.2.管理Deployment资源 1.1.3.管理Service资源 1.1.4.kubectl用法总结 1.2.声明式资源管理方 ...

  5. K8S的资源管理

    K8S的资源管理 管理K8S资源的三种基本方法: 陈述式资源管理方法-使用cli工具进行管理. 声明式资源管理方式-主要依耐资源配置清单. GUI式资源管理方法-主要依耐图形界面. 陈述式资源管理方法 ...

  6. k8s入坑之路(13)kubernetes重要资源(namespace隔离 resources资源管理 label)

    Namespace --- 集群的共享与隔离 语言中namespace概念 namespace核心作用隔离 以上是隔离的代码.namespace隔离的是: 1.资源对象的隔离:Service.Depl ...

  7. 从零开始入门 K8s | Kubernetes 调度和资源管理

    作者 | 子誉  蚂蚁金服高级技术专家 关注"阿里巴巴云原生"公众号,回复关键词"入门",即可下载从零入门 K8s 系列文章 PPT. Kubernetes 调 ...

  8. 第十三章 k8s的GUI资源管理插件--dashboard

    1.部署Kubernetes-dashboard 1.1 准备dashboard镜像 在10.4.7.200上操作 [root@hdss7-200 ~]# docker pull k8scn/kube ...

  9. 《两地书》--Kubernetes(K8s)基础知识(docker容器技术)

    大家都知道历史上有段佳话叫“司马相如和卓文君”.“皑如山上雪,皎若云间月”.卓文君这么美,却也抵不过多情女儿薄情郎. 司马相如因一首<子虚赋>得汉武帝赏识,飞黄腾达之后便要与卓文君“故来相 ...

随机推荐

  1. ajax请求在参数中添加时间戳

    ajax请求在参数中添加时间戳 参考网址

  2. 算法刷题笔记-stack-四则运算

    题目描述: 给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果.你需要给出所有可能的组合的结果.有效的运算符号包含 +, - 以及 * . 示例 1: 输入: &qu ...

  3. 力扣算法——137SingleNumberII【M】

    Given a non-empty array of integers, every element appears three times except for one, which appears ...

  4. h5唤醒手机拨打电话

    jquery  :  $("#a").attr("href","tel:110");

  5. 数据持久化之Android文件系统(一)

    阿里P7Android高级架构进阶视频免费学习请点击:https://space.bilibili.com/474380680 一.前言 文件系统一直是Android开发过程中经常接触的东西.而关于内 ...

  6. 高级UI晋升之自定义View实战(六)

    更多Android高级架构进阶视频学习请点击:https://space.bilibili.com/474380680本篇文章将从Android 自定义属性动画&Camera动画来介绍自定义V ...

  7. 【Java】Java字符串转码

    最近在开发项目中,偶尔遇到从页面上传到后台的中文数据,老是出现乱码的情况,但是对这个转码的过程又记不住,故此在此备份一下,希望对朋友们也有所帮助: String title=request.getPa ...

  8. 使用JDBC获取SQL自动增长的ID

    在项目开发中,遇到一个问题,先添加一条记录然后想立刻获取这条记录的ID值,ID由SQLServer自动增长的,如果先插入再查询的话,需要另外执行一条查询ID的SQL语句,因此有了下面的方法: 1.使用 ...

  9. gradle笔记

    gradle笔记 一.基础知识 1.1.groovy语言 Groovy适用于Java虚拟机的一种敏捷的动态语言,他是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言,使用该 ...

  10. 解决Addin开发不能断点调试的问题

    ArcMap或CAD在调试C#二次开发的插件的时候,在一些情况下不能正常进入到断点中,原因是debugger type不对应. eg. 右键单击Solution Explorer,选择Add-> ...