美文网首页
容器的资源限制

容器的资源限制

作者: 谜00016 | 来源:发表于2018-10-18 14:09 被阅读8次

上一篇文章中我们初步学会使用了stress这个工具,稍微回顾一下我们的Dockerfile

FROM ubuntu//基础镜像ubuntu
RUN apt-get update && apt-get install -y stress//执行安装命令
ENTRYPOINT ["/usr/bin/stress"]//可执行命令stress
CMD []//类似占位,stress参数

很明显通过这个Dockerfile打成的镜像运行之后可以做到像运行stress命令一样的效果。现在我们进入正题,如何限制容器的资源占用,比如cpu,比如内存。

限制内存

这里先插一篇文章,关于 【Linux】Swap与Memory

 docker run --memory 200M 484 --vm 1 --vm-bytes 500M --verbose

对上述命令做个简要说明,我们使用docker run命令来运行我们已经打成的容器(484为容器的开头ip),--memory参数表示限定该容器最大可分配内存为200M,--vm 1 --vm-bytes 500M --verbose为stress工具命令(含义在上一篇已经提到)。整个命令的含义就是运行一个容器,给这个容器分配200M内存,然后使用stress工具测试当分配500M内存运行时,该容器会发生什么情况?这样做到目的就是观察--memory这个参数是否起作用了,因为使用--memory已经限制了容器内存为200M,当stress需要分配500M内存的时候明显不能满足,这样容器就退出了,证明--memory起了作用。

限制CPU

此处我们主要使用的参数是--cpu-shares=int,注意这个参数代表的是 cpu使用的相对权重 ( 官方解释 CPU shares (relative weight))。具体含义见截图,我们打开三个窗口,分别执行

docker run --cpu-shares=5 --name=test1 484 --cpu 1//窗口1

docker run --cpu-shares=10 --name=test2 484 --cpu 1//窗口2

top//窗口3

这样我们可以通过截图很明显的观察到test1和test2占用cpu的权重大约等于1:2(即5:10)。


image.png image.png image.png

相关文章

  • 容器的资源限制

    在上一篇文章中我们初步学会使用了stress这个工具,稍微回顾一下我们的Dockerfile 很明显通过这个Doc...

  • Docker-容器

    容器 进入容器方法 其余操作 资源限制 内存 Swap是什么 CPU IO读写限制 容器实现的底层技术 cgrou...

  • Docker的系统资源限制及验证

    1、限制容器的资源 默认情况下,容器没有资源限制,可以使用主机内核调度程序允许的尽可能多的给定资源。Docker提...

  • 如何设置Docker容器中Java应用的内存

    Dokcer 容器如何限制内存 我们知道docker使用Linux内核的 CGroup 来实现限制容器的资源使用...

  • 容器实战

    认识容器 Namespace帮助容器来实现各种计算资源的隔离,Cgroups主要限制的是容器能够使用的某种资源量。...

  • K8S-[一]Pod调度

    Pod中影响调度的主要属性 一.调度依据 resources--资源限制 resources分为 容器资源限制(该...

  • docker 容器资源限制

    限定memory docker run --memory=200M jack/ubuntu-stress --vm...

  • docker容器资源限制

    选项 描述 -m,–memory 容器可以使用的最大内存量 –memory-swap 允许交换到磁盘的内存量 –m...

  • docker容器资源限制

    示例: 内存限额: 允许容器最多使用500M内存和100M的Swap,并禁用 OOM Killer: docker...

  • docker容器技术学习笔记(3)

    容器资源限制 一个 docker host 上会运行若干容器,每个容器都需要 CPU、内存和 IO 资源。对于 K...

网友评论

      本文标题:容器的资源限制

      本文链接:https://www.haomeiwen.com/subject/mfrjzftx.html