« 上一篇下一篇 »

如何限制单个容器可用的CPU资源,合理分配每个容器可调用的资源?

 这篇文章主要介绍了docker CPU限制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1、--cpu=<value>

        1)指定一个容器可以使用多少可用的CPU资源,但无法让容器始终在一个或某几个CPU上运行

        2)例如:如果主机有2个CPU,设置--cpus="1.5",则可以报称容器醉倒 容纳一半的CPU,相当于设置--cpu-period="100000"和--cpu-quota="150000"

4核服务器中启动centos基础镜像,并设置使用1核CPU

1docker run -itd --cpus="1" --name=centos centos7 /bin/bash
进入容器,开启4核CPU测试

 

查看容器的资源状态

1docker stats 08e1adecf3b7


查看服务器的CPU资源(由于测试服务器还有其他服务在使用,CPU资源比极高,正常是25%左右)

1top


2、--cpuset-cpus=<value>

        1)限制容器可以使用指定的CPU或内核

        2)容器可以使用逗号分隔的列表或以连字符分隔的CPU范围。第一个CPU编号为0,有效值可能是0-3(使用第一、第二、第三和第四CPU)或1,3(使用第二或第四CPU)

3、--cpu-period=<value>

        1)指定CPU CFS调度程序周期,该周期与--cpu-quota一起使用。

        2)默认值为100000微秒(100毫秒)。大多数用户不会更改默认设置。对于大多数用例,--cpus是一种更方便的代替方法

4、--cpu-quota=<value>

            1)设置COU CFS配额

            2)对于大数用例,--cpus是一种更方便的替代方法

5、--cpu-shares

        1)设置CPU权重。默认值为1024。

        2)当CPU资源充足时,设置CPU的权重没有意义。只有在容器争用CPU资源的情况下,CPU的权重才能让不同的CPU用量

到此这篇关于docker CPU限制的实现的文章就介绍到这了,更多相关docker CPU限制内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持云群网络