如何在容器运行过程中对容器的资源限制进行调整

简介: 背景docker run和docker create有一些参数可以对容器使用的主机资源进行限制。这些主机资源主要有如下类型cpu调度内存使用量io权重但是一旦创建了容器,容器在运行中或者不在运行中,如何调整这些资源参数呢?动态调整资源限制docker提供了update命令,可以对容器进行资源限制的调整,无论这个容器是否在运行中。

背景

docker run和docker create有一些参数可以对容器使用的主机资源进行限制。这些主机资源主要有如下类型

  • cpu调度
  • 内存使用量
  • io权重
    但是一旦创建了容器,容器在运行中或者不在运行中,如何调整这些资源参数呢?

动态调整资源限制

docker提供了update命令,可以对容器进行资源限制的调整,无论这个容器是否在运行中。

参数名 说明 备注
block-weight 块io权重10-1000之间可设置,0表示关闭此功能 Na
cpu-period cpu cfs(linux的绝对公平调度器,linux系统默认的调度器)的周期 Na
cpu-quota cpu cfs调度器的quota Na
cpu-rt-period 针对实时进程,设置cpu实时调度器周期,单位为us Na
cpu-rt-runtime 针对实时进程,设置在一个周期之内可以运行的时间 Na
cpu-share/-c cpu份额 设置当cpu资源受限时刻,本容器在所有容器中cpu资源使用权重,默认为1024.增加或减少此值修改了此容器的权重。当主机资源充分时刻,此参数不起作用。
cpus cpu资源比率 其实就是cpu-quota/cpu-period的比率,只在docker13以后可用
cpuset-cpus cpu亲和性 Na
cpuset-mems cpu的numa节点亲和性 Na
memory/-m 内存限制 硬限制,设置此值时需要带单位b,k,m和g
memory-reservation 内存限制 软限制,一定需要小于-m参数
memory-swap 设置容器内存+swap内存的总限制大小 一定大于-m参数

动态调整restart策略

docker update 可以对—restart参数进行升级
docker update —restart=on-failure:3 zxy
如果docker run启动带-rm参数,那么不能再docker update设置restart参数

目录
相关文章
|
30天前
|
Kubernetes 搜索推荐 Docker
K8S容器运行时弃用Docker转型Containerd
K8S容器运行时弃用Docker转型Containerd
140 0
|
30天前
|
Oracle 关系型数据库 数据库
|
30天前
|
Docker 容器
Docker学习笔记三:如何运行一个容器?
Docker学习笔记三:如何运行一个容器?
Docker学习笔记三:如何运行一个容器?
|
30天前
|
Serverless API 容器
函数计算容器模式如何设置多久释放资源啊?
函数计算容器模式如何设置多久释放资源啊?
380 0
|
10天前
|
存储 安全 Linux
Podman入门全指南:安装、配置与运行容器
Podman入门全指南:安装、配置与运行容器
66 1
|
14天前
|
Docker 容器
docker: 如何不新建容器 修改运行容器的端口
docker: 如何不新建容器 修改运行容器的端口
|
30天前
|
Linux 开发者 Docker
如何构建在 Docker 容器中运行命令?
【1月更文挑战第6天】
67 0
|
30天前
|
NoSQL Redis Docker
Mac上轻松几步搞定Docker与Redis安装:从下载安装到容器运行实测全程指南
Mac上轻松几步搞定Docker与Redis安装:从下载安装到容器运行实测全程指南
70 0
|
30天前
|
存储 安全 数据中心
【Docker 专栏】Docker 容器与宿主机的资源隔离机制
【5月更文挑战第8天】Docker容器利用Namespace和Cgroups实现资源隔离,保证CPU、内存、网络和存储的独立,提升资源利用率和系统安全性。资源隔离有助于简化应用部署与管理,但也带来资源竞争、监控管理及安全挑战。理解并善用资源隔离机制能实现更高效、安全的容器运行。随着技术进步,Docker容器资源隔离将持续优化。
【Docker 专栏】Docker 容器与宿主机的资源隔离机制
|
30天前
|
运维 Linux Docker
Docker详解(十一)——Docker容器CPU资源限额实战Docker详解
Docker详解(十一)——Docker容器CPU资源限额实战
48 5