CGroup原理篇V1五BLKIO子系统

Posted 高桐@BILL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CGroup原理篇V1五BLKIO子系统相关的知识,希望对你有一定的参考价值。

写在前面

        blkio,Block IO Controller,或块输入输出子系统。它由存储层级下一些各式各样的IO控制策略叶节点和中间结点组成。基于cgroup的管理接口,用于用户在后台切换IO策略。

        IO控制策略就是用于控制特定设备的IO速率的一个节流策略。这种策略可以应用在内核通用块层(Generic Block Layer),也可以应用在页节点上和高级别逻辑设备,如设备映射器。

        一个IO策略就是一个限制策略。这些限制策略可以用于指定限制访问设备的IO速率。

一、如何使能blkio节流或上限 限制策略

1.1 内核配置使能Block IO Controller

CONFIG_BLK_CGROUP=y

1.2 使能应用在内核通用块层

CONFIG_BLK_DEV_THROTTLING=y

1.3 挂载blkio控制子系统

mount -t cgroup -o blkio none /sys/fs/cgroup/blkio

1.4 指定IO速率带宽

        参数格式:<major>:<minor> <bytes_per_second>

echo "8:16  1048576" > /sys/fs/cgroup/blkio/blkio.throttle.read_bps_device

        如上命令,设置blkio层级根节点下任务访问major/min

以上是关于CGroup原理篇V1五BLKIO子系统的主要内容,如果未能解决你的问题,请参考以下文章

CGroup原理篇V11.2 CGroupV1子系统介绍

CGroup原理篇V1十HugeTLB子系统

CGroup原理篇V1十一Memory子系统(Memcg)实现备忘录

CGroup原理篇V1十二Memory子系统

CGroup原理篇V1七CPUSET子系统

CGroup原理篇V1十四NET_PRIO子系统