C组的管理过程中使用Linux的磁盘IO
2023-12-06 02:29:25
点评:这篇文章主要介绍了cgroups管理过程的磁盘IO介绍在linux下使用,需要的朋友可以参考一下。 Linux下的C组也可以限制和监控过程的磁盘IO。这个功能是由blkio子系统的实现。 有很多的事情blkio系统。但大部分是只读状态报告,和可写的唯一参数如下: 复制代码代码如下所示: blkio.throttle.read_bps_device blkio.throttle.read_iops_device blkio.throttle.write_bps_device blkio.throttle.write_iops_device blkio.weight blkio.weight_device 这些都是磁盘IO进行控制的过程。它清楚地分为两类,与throttle顾名思义,节流阀,限流有一定的价值。和weight它是将IO的重量。 throttle这个名字的四个参数,知道该怎么做。把blkio.throttle.read_bps_device限制字节每秒可以读取数。起点IO。 复制代码代码如下所示: 如果 { 1 } 2750 Look at the Current IO with iotop 复制代码代码如下所示: 每日关注用户磁盘读写磁盘swapin IO >命令 2750是 4根66.76米/秒0 0%,68.53% … 然后修改资源约束并将过程添加到控件组 复制代码代码如下所示: 回声'8:0 1048576> / / / C FS系统 / / / blkio.throttle.read_bps_device blkio Foo 回声2750 > / / / C FS系统 / / /任务blkio Foo 这里是主要的8:0设备编号和对应的块设备的设备号。你可以通过ls -看我的设备文件name.as 复制代码代码如下所示: # ls - L / dev / SDA BRW RW ----。1根盘8, 0 10月24日11:27 / dev / SDA 这里的8, 0是对应的设备号。所以,C组可以在不同的设备上不同的限制。再看看效果 复制代码代码如下所示: 每日关注用户磁盘读写磁盘swapin IO >命令 2750是 4根989.17 K s 0 0%,96.22% … 可以看出,阅读过程中,每一秒都是减少到大约1MB。释放限制,写如8:0 0的文件; 然而,需要注意的是,这种方法对于采样间隔中产生的大量IO是无用的。 再看看blkio.weight,blkio的节流和重量的方式类似于定额与股CPU子系统。一种是绝对限制,另一种是相对限制,在不忙的情况下可以充分利用资源。重量值的范围在10到1000之间。 测试的重量是一个小麻烦,因为它不是一个绝对的界限,它将由缓存文件系统的影响。如果在虚拟机测试,虚拟机关闭我用VirtualBox在主机缓存。如果你想测试读IO,影响艾奥先生,一个大文件的几个G, / / / file_1 TMP,TMP / file_2,可用于在DD.建立两个砝码 复制代码代码如下所示: #回声500 > /系统/ FS / C / blkio / / blkio.weight Foo #回声100 > /系统/ FS / / / C blkio酒吧/ blkio.weight 在测试之前清除文件系统缓存,以免干扰测试结果 复制代码代码如下所示: 同步 回声3 > / proc / / / drop_caches VM系统 在这两组IO测试结果产生与弟弟。 复制代码代码如下所示: # cgexec Gblkio:fooDD如果= / / file_1 TMP = / dev /空 { 1 } 1838 # cgexec Gblkio:酒吧DD如果= / / file_2 TMP = / dev /空 { 2 } 1839 或使用iotop见效果 复制代码代码如下所示: 每日关注用户磁盘读写磁盘swapin IO >命令 1839 / 4根48.14 M / S 0 B / S 0% 99.21% DD如果= / / file_2 TMP = / dev /空 1838 / 4根223.59 M / S 0 B / S 0% 16.44% DD如果= / / file_1 TMP = / dev /空 读取的字节每秒两进程数是不断变化的,但总的趋势仍然是1:5,随着体重proportions.blkio.weight_device设定一致的是子装置。写作时,加在它前面的设备号。 有许多统计项目的blkio子系统 blkio.time 每个设备的IO访问时间,单位毫秒 blkio.sectors 每个设备的扇区数或出扇区数 blkio.io_serviced 各种类型的IO操作数中的每个设备,实现读、写、同步、异步、总 blkio.io_service_bytes 每个类型IO交换器或每个设备的字节数。 blkio.io_service_time 在每个设备中执行的每一种IO时间,单位微秒 blkio.io_wait_time 每个设备中每个IO类型的队列等待时间 blkio.io_merged 每个设备类型的合并的IO请求数 blkio.io_queued 每个设备中IO类型的数量请求当前队列的数目。 使用这些统计数据可以更好地计算和监视流程中的IO情况 使用 复制代码如下:1 > blkio.reset_stats回声 你可以清理所有的统计数字。tag:磁盘 过程中 电脑软件 Linux io
相关内容