云计算核心技术Docker教程:Docker CPU管理
Docker在默认情况下,容器使用的资源是不受限制的。也就是可以使用主机内核调度器所允许的最大资源。如果不对容器可以使用的 CPU 资源进行限制,一旦发生容器内程序异常使用 CPU 的情况,很可能把整个主机的 CPU 资源耗尽,从而导致更大的灾难。
本文将介绍如何设置容器可以使用的 CPU 资源。
Docker 的资源限制和隔离完全基于 Linux cgroups。对 CPU 资源的限制方式也和 cgroups 相同。Docker 提供的 CPU 资源限制选项可以在多核系统上限制容器能利用哪些 vCPU。而对容器最多能使用的 CPU 时间有两种限制方式:一是有多个 CPU 密集型的容器竞争 CPU 时,设置各个容器能使用的 CPU 时间相对比例。二是以绝对的方式设置容器在每个调度周期内最多能使用的 CPU 时间。
docker run命令和 CPU 限制相关的所有选项如下:
--cpuset-cpus="" 允许使用的 CPU 集,值可以为 0-3,0,1
-c,--cpu-shares=0 CPU 共享权值(相对权重)
cpu-period=0 限制 CPU CFS 的周期,范围从 100ms~1s,即[1000, 1000000]
--cpu-quota=0 限制 CPU CFS 配额,必须不小于1ms,即 >= 1000
--cpuset-mems="" 允许在上执行的内存节点(MEMs),只对 NUMA 系统有效
其中--cpuset-cpus用于设置容器可以使用的 vCPU 核。-c,--cpu-shares用于设置多个容器竞争 CPU 时,各个容器相对能分配到的 CPU 时间比例。
docker提供了cpu-period、cpu-quota两个参数控制容器可以分配到的CPU时钟周期。cpu-period是用来指定容器对CPU的使用要在多长时间内做一次重新分配,而cpu-quota是用来指定在这个周期内,最多可以有多少时间用来跑这个容器。跟cpu-shares不同的是这种配置是指定一个绝对值,而且没有弹性在里面,容器对CPU资源的使用绝对不会超过配置的值。
cpu-period和cpu-quota的单位为微秒(μs)。cpu-period的最小值为1000微秒,最大值为1秒(10^6 μs),默认值为0.1秒(100000 μs)。cpu-quota的值默认为-1,表示不做控制。
例如设置容器可以在哪些 CPU 核上运行:
docker run -it --cpuset-cpus="0,6" --name Centos centos /bin/bash
设置容器中的进程可以在 cpu 0 和 cpu 6上执行。
温馨提示:本网使用的部分文字和图片来源于互联网,若有版权问题,请与我们联系!
相关文章推荐
-
云计算应用程序部署中的常见问题解析
企业不能完成必要的前期规划以便于确定哪一个应用程序更适用于 云计算 部署。 需要大型机支持的应用程序、在UNIX集群服务上运行的应用程序以及众多运行在大型机上的现有应用程序都是注定不会迁移至 云计算 的。这些程序是很复杂的,而基于X86软硬件环境的部
-
解决新能源汽车核心问题 比亚迪IGBT项目正式动工
日前,我们从官方获悉,比亚迪IGBT项目在长沙正式动工。 IGBT(Insulated Gate Bipolar Transistor)学名叫做绝缘栅双极型晶体管,是一种大功率的电力电子器件,主要用于变频器逆变和其他逆变
-
云计算促使软件革命
云计算 ,简单的讲就是可以通过互联网进行文件和应用管理,而不需要在本地管理硬件设备上建立主机并进行存储或处理管理。 数据存储、安全性和传输已进行了一系列的改进,现在个人和企业可以通过第三方设备远程存储数据。因这些数据和 软件 并非物理存储,所
-
Intel 10nm++ Tiger Lake晶圆首曝:核心面积增大20%
CES 2020大展上Intel首次公开了下一代移动平台Tiger Lake(或将命名为十一代酷睿)的部分细节,采用10nm+工艺,集成新的Willow Cove CPU核心、Xe LP GPU核心,IPC性能提升超过两位数,同时大大增强
-
CPU虚拟化助力云计算大行其道
虚拟化 已经从数据中心的新技术变成了主流技术。Gartner预测到2016年,x86硬件支持的80%工作负荷将转移到虚拟机上运行。以前通常一个数据中心中会存在大量利用不足的服务器,购买和管理这些设备耗费大量时间和资金成本,还不包括供电和散热。 虚拟化 有助于
-
云计算时代:企业如何选择IaaS服务商?
当人们想到 云计算 的服务,最容易想到的是基础设施。而基础设施服务( IaaS )能够提供给客户的服务是运营商运行在 云计算 基础设施上的应用程序,用户可以在各种设备上通过搜客户端界面访问,如浏览器。消费者不需要管理或控制任何 云计算 基础设施,包括
