我们使用deployment控制器来创建pod资源,一般会设置容器资源限制,也就是 resources 。一般来说会设置limits和requests 里的cpu和内存值。我们先说下这两个维度:

1、资源需求request:即运行Pod的节点必须满足运行Pod的最基本需求才能运行Pod。
   如: Pod运行至少需要2G内存,1核CPU
   2、资源限额limits:即运行Pod期间,可能内存使用量会增加,那最多能使用多少内存,这就是资源限额。

比如:

# kubectl  describe  node   node1.duozubao.cn.......................Allocated resources:(Total limits may be over 100 percent, i.e., overcommitted.)Resource           Requests    Limits             #这里显示的就是 资源的需求 和 限额--------           --------    ------cpu                250m (12%)  0 (0%)memory             0 (0%)      0 (0%)ephemeral-storage  0 (0%)      0 (0%)Requests:  就是需求限制,也叫软限制Limits:最大限制,也叫硬限制通常来说:Limits >= Requests并且requests 和 limits 通常要一起配置,若只配置了requests,而不配置limits,则很可能导致Pod会吃掉所有资源。

如果不指定 CPU 限制 limits

如果你没有为容器指定 CPU 限制,则会发生以下情况之一:

  • 容器在可以使用的 CPU 资源上没有上限。因而可以使用所在节点上所有的可用 CPU 资源。

  • 容器在具有默认 CPU 限制的名字空间中运行,系统会自动为容器设置默认限制。 集群管理员可以使用 LimitRange 指定 CPU 限制的默认值。

如果你设置了 CPU 限制但未设置 CPU 请求

如果你为容器指定了 CPU 限制值但未为其设置 CPU 请求,Kubernetes 会自动为其 设置与 CPU 限制相同的 CPU 请求值。类似的,如果容器设置了内存限制值但未设置 内存请求值,Kubernetes 也会为其设置与内存限制值相同的内存请求。

CPU 请求和限制的初衷

通过配置你的集群中运行的容器的 CPU 请求和限制,你可以有效利用集群上可用的 CPU 资源。 通过将 Pod CPU 请求保持在较低水平,可以使 Pod 更有机会被调度。 通过使 CPU 限制大于 CPU 请求,你可以完成两件事:

  • Pod 可能会有突发性的活动,它可以利用碰巧可用的 CPU 资源。
  • Pod 在突发负载期间可以使用的 CPU 资源数量仍被限制为合理的数量。

参考的文档:

为容器和 Pods 分配 CPU 资源 | Kubernetes本页面展示如何为容器设置 CPU request(请求) 和 CPU limit(限制)。 容器使用的 CPU 不能超过所配置的限制。 如果系统有空闲的 CPU 时间,则可以保证给容器分配其所请求数量的 CPU 资源。Before you begin 你必须拥有一个 Kubernetes 的集群,同时你的 Kubernetes 集群必须带有 kubectl 命令行工具。 建议在至少有两个节点的集群上运行本教程,且这些节点不作为控制平面主机。 如果你还没有集群,你可以通过 Minikube 构建一个你自己的集群,或者你可以使用下面任意一个 Kubernetes 工具构建: Katacoda 玩转 Kubernetes To check the version, enter kubectl version. Minikube, run the following command to enable metrics-server: -- 集群中的每个节点必须至少有 1 个 CPU 可用才能运行本任务中的示例。本页的一些步骤要求你在集群中运行 metrics-server 服务。如果你的集群中已经有正在运行的 metrics-server 服务,可以跳过这些步骤。如果你正在运行Minikube,请运行以下命令启用 metrics-server:minikube addons enable metrics-server 查看 metrics-server(或者其他资源度量 API metrics.https://kubernetes.io/zh/docs/tasks/configure-pod-container/assign-cpu-resource/

k8s中对pod设置限制只设置了limits相关推荐

  1. K8S中的pod、services、容器的概念和区别

    K8S中的pod.services.容器的概念和区别 k8s的部署架构 kubernetes中有两类资源,分别是master和nodes,master和nodes上跑的服务如下图: 1 kube-ap ...

  2. K8S中的pod自动扩容与缩容

    k8s应用自动扩容缩容方案 原因: 在实际的业务场景中,我们经常会遇到某个服务需要扩容的场景(例如:测试对服务压测.电商平台秒杀.大促活动.或由于资源紧张.工作负载降低等都需要对服务实例数进行扩缩容操 ...

  3. K8S中删除pod,又被重新创建的问题解决

    情况如下: k8s中的default空间中,有个Nginx的pod 执行删除命令: kubectl delete pod nginx-55f8fd7cfc-4wxzp 删除后,又重新创建了一个pod, ...

  4. K8S日常问题-k8s中大量pod 状态 evicted

    背景 在查看k8s的环境的时候,突然发现存在n多个pod状态为Evicted.差不多得有几百个.在这里插入图片描述 eviction,即驱赶的意思,意思是当节点出现异常时,kubernetes将有相应 ...

  5. R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置x轴的标签文本使用粗体字体)

    R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置x轴的标签文本使用粗体字体) 目录

  6. R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置y轴的标签文本使用粗体字体)

    R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置y轴的标签文本使用粗体字体) 目录

  7. k8s中hostname, hosts文件, DNS和代理问题, service和pod的访问问题

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 验证一个域名的ip地址可以使用 nslookup xx.xx..xx 在kubernets中不同命名空间的服务相互访问 涉及到的是Pod和Servic ...

  8. 【好文收藏】k8s中Pod 无法正常解析域名:部署 DNS 调试工具排查

    k8s 中 Pod 无法正常解析域名:部署 DNS 调试工具排查 问题描述 最近将 Kubernetes 升级到 1.18.1 版本,不过升级完后,查看工作节点的部分 Pod 无法启动,查看消息全是 ...

  9. K8s中Pod健康检查源代码分析

    了解k8s中的Liveness和Readiness Liveness:  表明是否容器正在运行.如果liveness探测为fail,则kubelet会kill掉容器,并且会触发restart设置的策略 ...

  10. 关于K8s中Pod调度[选择器,指定节点,主机亲和性]方式和节点[coedon,drain,taint]标记的Demo

    写在前面 嗯,整理K8s中pod调度相关笔记,这里分享给小伙伴 博文内容涉及: kube-scheduler组件的简述 Pod的调度(选择器.指定节点.主机亲和性)方式 节点的coedon与drain ...

最新文章

  1. Game-Tech小游戏专场第二趴,这次帝都见
  2. python有什么简单项目_python有什么简单项目适合初学者?
  3. OAuth2.0授权码认证流程介绍
  4. Stream、FileStream、MemoryStream的区别
  5. SQL Server2008附加数据库失败
  6. 查看文章影响因子的插件_Scholarscope--在新版PubMed中实现基于影响因子的文献筛选...
  7. flask 获取前端form内容_flask 项目中使用 bootstrapFileInput(进阶篇)
  8. tum数据集_数值预报尚能战否?来自数据驱动的挑战
  9. Kronos Research推出结合WOO质押机制的新资管产品规模已达1500万美元
  10. SpringBoot整合Swagger生成接口文档
  11. 《博弈论》— 人生何处不博弈
  12. 为什么计算机桌面图标不见了,为什么电脑桌面上的图标全不见了?
  13. wireshark如何抓取本机包
  14. Diabetic Retinopathy Detection
  15. 如何使用Dareboost改善网站性能(和转化)
  16. python代码,轻松完成贪吃蛇小游戏
  17. 对c语言课程的总结和认识,c语言课程设计总结8篇
  18. 造血干细胞扩增、转染以及基因编辑优化解决方案
  19. AMEsim16安装启动后加载液压模块与车辆动力学模块
  20. 使用IP切换器的优点和缺点是什么?

热门文章

  1. 【论文笔记】在CommonsenseQA 上追平人类: 通过External Attention 增强 Self-Attention
  2. 墨菲定律 二八法则 马太效应 手表定理等
  3. 深度Linux的安装
  4. Win10小娜搜索空白什么都不显示怎么办,开始菜单,搜索空白
  5. 安装VMware ESXi
  6. 跟我学大数据分析之五:2019中国城市发展潜力排名
  7. 共模信号 差模信号 差动放大器
  8. C++类型转换以及文件读写的总结
  9. 浅谈路由CSRF危害,和非主流姿势
  10. exists和no exists 在sql中的区别