电子活页-04.01.验证分析容器资源限制的实现机制_第1页
电子活页-04.01.验证分析容器资源限制的实现机制_第2页
电子活页-04.01.验证分析容器资源限制的实现机制_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

验证分析容器资源限制的实现机制对容器的内存、CPU和块I/O带宽的限制具体是由控制组(Cgroup)的相应子系统来实现的。在dockerrun命令中使用--cpu-shares、--memory、--device-read-bps等选项实际上就是在配置控制组,相关的配置文件保存在/sys/fs/cgroup目录中。Docker从Docker20.10开始支持cgroupv2。这里通过实验来验证分析容器资源限制的实现机制。(1)打开一个终端窗口,执行以下命令启动一个容器,设置内存限额为300MB,CPU权重为512。[root@host1~]#dockerrun--rm-d-p8080:80-m300M--cpu-shares=512httpd6795025c6bff78611fed12ca455267daa4c725435e4721c27b33db62c89563d8(2)查看/sys/fs/cgroup/cpu/docker目录,发现Linux会为每个正在运行的容器创建一个Cgroup目录,以容器ID命名,如下所示。[root@host1~]#ls-l/sys/fs/cgroup/system.slice总用量0drwxr-xr-x2rootroot01月2409:42docker-4f253c9956eea7d35a0729c36f3cb26df6c289f2cacbaf1ab6f27f80473e0039.scopedrwxr-xr-x2rootroot01月2411:21docker-5d706787562ae3d962e3b8f7bc0e76b76cb2e895e842511c40835a08bd4b4622.scopedrwxr-xr-x2rootroot01月2411:07docker-6795025c6bff78611fed12ca455267daa4c725435e4721c27b33db62c89563d8.scopedrwxr-xr-x2rootroot01月2409:42docker-85e12988fac282eb7cac1927436eb248bbe0734b732e40b5f3a111e45dfaba64.scopedrwxr-xr-x.2rootroot0Jan821:072a249f2c4321c0c125052e8e777bf6bd0b3d2bf321dbbba62458906caa62d889-rw-r--r--.1rootroot0Jan815:28cgroup.clone_children--w--w--w-.1rootroot0Jan815:28cgroup.event_control……(3)进一步查看容器子目录,会发现每个容器的子目录中都包含所有与CPU相关的Cgroup配置,如下所示。[root@host1~]#ls-l/sys/fs/cgroup/system.slice/docker-6795025c6bff78611fed12ca455267daa4c725435e4721c27b33db62c89563d8.scope总用量0-r--r--r--1rootroot01月2411:07cgroup.controllers-r--r--r--1rootroot01月2411:07cgroup.events-rw-r--r--1rootroot01月2411:07cgroup.freeze--w-------1rootroot01月2411:24cgroup.kill-rw-r--r--1rootroot01月2411:24cgroup.max.depth-rw-r--r--1rootroot01月2411:24cgroup.max.descendants-rw-r--r--1rootroot01月2411:07cs-r--r--r--1rootroot01月2411:24cgroup.stat-rw-r--r--1rootroot01月2411:07cgroup.subtree_control-rw-r--r--1rootroot01月2411:24cgroup.threads-rw-r--r--1rootroot01月2411:07cgroup.type-rw-r--r--1rootroot01月2411:07cpu.idle-rw-r--r--1rootroot01月2411:07cpu.max-rw-r--r--1rootroot01月2411:24cpu.max.burst-rw-r--r--1rootroot01月2411:07cpuset.cpus-r--r--r--1rootroot01月2411:24cpuset.cpus.effective-rw-r--r--1rootroot01月2411:24cpuset.cpus.exclusive-r--r--r--1rootroot01月2411:24cpuset.cpus.exclusive.effective-rw-r--r--1rootroot01月2411:24cpuset.cpus.partition-rw-r--r--1rootroot01月2411:07cpuset.mems-r--r--r--1rootroot01月2411:24cpuset.mems.effective-r--r--r--1rootroot01月2411:07cpu.stat-rw-r--r--1rootroot01月2411:07cpu.weight-rw-r--r--1rootroot01月2411:24cpu.weight.nice-r--r--r--1rootroot01月2411:24hugetlb.1GB.current-r--r--r--1rootroot01月2411:24hugetlb.1GB.events-r--r--r--1rootroot01月2411:24hugetlb.1GB.events.local-rw-r--r--1rootroot01月2411:24hugetlb.1GB.max-r--r--r--1rootroot01月2411:24hugetlb.1GB.numa_stat-r--r--r--1rootroot01月2411:24hugetlb.1GB.rsvd.current-rw-r--r--1rootroot01月2411:24hugetlb.1GB.rsvd.max-r--r--r--1rootroot01月2411:24hugetlb.2MB.current-r--r--r--1rootroot01月2411:24hugetlb.2MB.events-r--r--r--1rootroot01月2411:24hugetlb.2MB.events.local-rw-r--r--1rootroot01月2411:24hugetlb.2MB.max-r--r--r--1rootroot01月2411:24hugetlb.2MB.numa_stat-r--r--r--1rootroot01月2411:24hugetlb.2MB.rsvd.current-rw-r--r--1rootroot01月2411:24hugetlb.2MB.rsvd.max-rw-r--r--1rootroot01月2411:07io.bfq.weight-rw-r--r--1rootroot01月2411:24io.latency-rw-r--r--1rootroot01月2411:24io.max-r--r--r--1rootroot01月2411:07io.stat-r--r--r--1rootroot01月2411:24memory.current-r--r--r--1rootroot01月2411:07memory.events-r--r--r--1rootroot01月2411:24memory.events.local-rw-r--r--1rootroot01月2411:07memory.high-rw-r--r--1rootroot01月2411:07memory.low-rw-r--r--1rootroot01月2411:07memory.max-rw-r--r--1rootroot01月2411:07memory.min-r--r--r--1rootroot01月2411:24memory.numa_stat-rw-r--r--1rootroot01月2411:07memory.oom.group-r--r--r--1rootroot01月2411:24memory.peak--w-------1rootroot01月2411:24memory.reclaim-r--r--r--1rootroot01月2411:24memory.stat-r--r--r--1rootroot01月2411:24memory.swap.current-r--r--r--1rootroot01月2411:24memory.swap.events-rw-r--r--1rootroot01月2411:24memory.swap.high-rw-r--r--1rootroot01月2411:07memory.swap.max-r--r--r--1rootroot01月2411:24memory.swap.peak-r--r--r--1rootroot01月2411:24memory.zswap.current-rw-r--r--1rootroot01月2411:24memory.zswap.max-r--r--r--1rootroot01月2411:24misc.current-r--r--r--1rootroot01月2411:24misc.events-rw-r--r--1rootroot01月2411:24misc.max-r--r--r--1rootroot01月2411:24pids.current-r--r--r--1rootroot01月2411:24pids.events-rw-r--r--1rootroot01月2411:07pids.max-r--r--r--1rootroot01月2411:24pids.peak-r--r--r--1rootroot01月2411:24rdma.current-rw-r--r--1rootroot01月2411:24rdma.max[root@host1~]#ls-l/sys/fs/cgroup/cpu/docker/2a249f2c4321c0c125052e8e777bf6bd0b3d2bf321dbbba62458906caa62d889total0-rw-r--r--.1rootroot0Jan821:07cgroup.clone_children--w--w--w-.1rootroot0Jan821:07cgroup.event_control-rw-r--r--.1rootroot0Jan821:07cs-r--r--r--.1rootroot0Jan821:07cpuacct.stat-rw-r--r--.1rootroot0Jan821:07cpuacct.usage-r--r--r--.1rootroot0Jan821:07cpuacct.usage_percpu-rw-r--r--.1rootroot0Jan821:07cpu.cfs_period_us-rw-r--r--.1rootroot0Jan821:07cpu.cfs_quota_us-rw-r--r--.1rootroot0Jan821:07cpu.rt_period_us-rw-r--r--.1rootroot0Jan821:07cpu.rt_runtime_us-rw-r--r--.1rootroot0Jan821:07cpu.shares-r--r--r--.1rootroot0Jan821:07cpu.stat-rw-r--r--.1rootroot0Jan821:07notify_on_release-rw-r--r--.1rootroot0Jan821:07tasks(4)查看其中cpu.shares文件的内容,发现它保存的就是--cpu-shares选项的配置,示例中的值就是所设置的512,如下所示。[root@host1~]#cat/sys/fs/cgroup/system.slice/docker-6795025c6bff78611fed12ca455267daa4c725435e4721c27b33db62c89563d8.scope/cpu.maxmax100000[root@host1~]#cat/sys/fs/cgroup/system.slice/do

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论