位置: 编程技术 - 正文

Linux中使用cgroups管理进程磁盘io介绍(linux中使用最多的命令)

编辑:rootadmin

推荐整理分享Linux中使用cgroups管理进程磁盘io介绍(linux中使用最多的命令),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux中使用最多的命令,linux中使用最多的命令,linux中使用bash是什么意思,linux中使用less命令分屏查看,linux中使用什么命令可以把两个文件合并,linux中使用less命令分屏查看,linux中使用什么命令可以把两个文件合并,linux中使用less命令分屏查看,内容如对您有帮助,希望把文章链接给更多的朋友!

linux 的 cgroups 还可以限制和监控进程的磁盘 io。这个功能通过 blkio 子系统实现。

blkio 子系统里东西很多。不过大部分都是只读的状态报告,可写的参数就只有下面这几个:复制代码代码如下:blkio.throttle.read_bps_deviceblkio.throttle.read_iops_deviceblkio.throttle.write_bps_deviceblkio.throttle.write_iops_deviceblkio.weightblkio.weight_device

这些都是用来控制进程的磁盘 io 的。很明显地分成两类,其中带“throttle”的,顾名思义就是节流阀,将流量限制在某个值下。而“weight”就是分配 io 的权重。

“throttle”的那四个参数看名字就知道是做什么用的。拿 blkio.throttle.read_bps_device 来限制每秒能读取的字节数。先跑点 io 出来复制代码代码如下:dd if=/dev/sda of=/dev/null &[1] 用 iotop 看看目前的 io复制代码代码如下: TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND be/4 root . M/s 0. B/s 0. % . % dd if=/dev/sda of=/dev/null...

然后修改一下资源限制,把进程加入控制组复制代码代码如下:echo '8:0 ' >/sys/fs/cgroup/blkio/foo/blkio.throttle.read_bps_deviceecho >/sys/fs/cgroup/blkio/foo/tasks这里的 8:0 就是对应块设备的主设备号和副设备号。可以通过 ls -l 设备文件名查看。如复制代码代码如下:# ls -l /dev/sdabrw-rw----. 1 root disk 8, 0 Oct : /dev/sda这里的 8, 0 就是对应的设备号。所以,cgroups 可以对不同的设备做不同的限制。然后来看看效果复制代码代码如下: TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND be/4 root . K/s 0. B/s 0. % . % dd if=/dev/sda of=/dev/null...

可见,进程的每秒读取立马就降到了 1MB 左右。要解除限制,写入如 “8:0 0” 到文件中即可

不过需要注意的是,这种方式对小于采样间隔里产生的大量 io 是没用的。比如,就算在 1s 内产生一个每秒写入 M 的峰值,也不会因此被限制掉。

Linux中使用cgroups管理进程磁盘io介绍(linux中使用最多的命令)

再看看 blkio.weight 。blkio 的 throttle 和 weight 方式和 cpu 子系统的 quota 和 shares 有点像,都是一种是绝对限制,另一种是相对限制,并且在不繁忙的时候可以充分利用资源,权重值的范围在 – 之间。

测试权重方式要麻烦一点。因为不是绝对限制,所以会受到文件系统缓存的影响。如在虚拟机中测试,要关闭虚机如我用的 VirtualBox 在宿主机上的缓存。如要测试读 io 的效果,先生成两个几个 G 的大文件 /tmp/file_1,/tmp/file_2 ,可以用 dd 搞。然后设置两个权重复制代码代码如下:# echo >/sys/fs/cgroup/blkio/foo/blkio.weight# echo >/sys/fs/cgroup/blkio/bar/blkio.weight测试前清空文件系统缓存,以免干扰测试结果复制代码代码如下:syncecho 3 >/proc/sys/vm/drop_caches在这两个控制组中用 dd 产生 io 测试效果。复制代码代码如下:# cgexec -g "blkio:foo" dd if=/tmp/file_1 of=/dev/null &[1] # cgexec -g "blkio:bar" dd if=/tmp/file_2 of=/dev/null &[2]

还是用 iotop 看看效果复制代码代码如下: TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND be/4 root . M/s 0. B/s 0. % . % dd if=/tmp/file_2 of=/dev/null be/4 root . M/s 0. B/s 0. % . % dd if=/tmp/file_1 of=/dev/null

两个进程每秒读的字节数虽然会不断变动,但是大致趋势还是维持在 1:5 左右,和设定的 weight 比例一致。blkio.weight_device 是分设备的。写入时,前面再加上设备号即可。

blkio 子系统里还有很多统计项

blkio.time&#;&#;&#;各&#;&#;&#;设&#;&#;&#;备&#;&#;&#;的&#;&#;&#; io 访&#;&#;&#;问&#;&#;&#;时&#;&#;&#;间,单位毫秒

blkio.sectors换入&#;&#;&#;者&#;&#;&#;或&#;&#;&#;出&#;&#;&#;各&#;&#;&#;设&#;&#;&#;备&#;&#;&#;的&#;&#;&#;扇&#;&#;&#;区&#;&#;&#;数

blkio.io_serviced各设&#;&#;&#;备&#;&#;&#;中&#;&#;&#;执&#;&#;&#;行&#;&#;&#;的各类型&#;&#;&#; io 操&#;&#;&#;作&#;&#;&#;数,分read、&#;&#;&#;write、&#;&#;&#;sync、async 和 total&#;&#;&#;blkio.io_service_bytes各类型&#;&#;&#; io &#;&#;&#;换入&#;&#;&#;者&#;&#;&#;或&#;&#;&#;出&#;&#;&#;各&#;&#;&#;设&#;&#;&#;备&#;&#;&#;&#;&#;&#;的&#;&#;&#;字&#;&#;&#;节&#;&#;&#;数&#;&#;&#;blkio.io_service_time各设&#;&#;&#;备&#;&#;&#;中&#;&#;&#;执&#;&#;&#;行&#;&#;&#;的各类型&#;&#;&#; io 时间,单位微秒&#;&#;&#;blkio.io_wait_time各设&#;&#;&#;备&#;&#;&#;中各类型&#;&#;&#; io 在队列中的 等待时间&#;&#;&#;blkio.io_merged各设&#;&#;&#;备&#;&#;&#;中各类型&#;&#;&#; io 请求合并的次数&#;&#;&#;blkio.io_queued各设&#;&#;&#;备&#;&#;&#;中各类型&#;&#;&#; io 请求当前在队列中的数量&#;&#;&#;通过这些统计项更好地统计、监控进程的 io 情况用复制代码代码如下:echo 1 >blkio.reset_stats可以将所有统计项清零。

Linux系统安全:系统优化及安全配置详细介绍 作为一个系统管理员,下面我们聊一下基于服务器应用的Linux,由于个人电脑上使用Linux也许不是像服务器上一样,优先追求安全和稳定,因此个人电脑

Linux Ldd命令介绍及使用方法 LinuxLdd参数说明:--version打印ldd的版本号-v--verbose打印所有信息,例如包括符号的版本信息-d--data-relocs执行符号重部署,并报告缺少的目标对象(只对ELF

linux怎么删除文件夹?Linux删除文件夹命令 linux删除目录很简单,很多人还是习惯用rmdir,不过一旦目录非空,就陷入深深的苦恼之中,现在使用rm-rf命令即可。直接rm就可以了,不过要加两个参数

标签: linux中使用最多的命令

本文链接地址:https://www.jiuchutong.com/biancheng/357049.html 转载请保留说明!

上一篇:Linux中使用cgroups控制内存资源介绍(linux中使用bash是什么意思)

下一篇:Linux系统安全:系统优化及安全配置详细介绍(Linux系统安全管理的内容包括)

  • 金税盘开票软件服务电话
  • 新公司未办税务怎么处理
  • 出口免税收入的计税依据
  • 小规模纳税人进货分录
  • 委托加工业务中,委托方是纳税义务人
  • 未分配利润很高说明什么
  • 中外合作合资
  • 应计提的存货跌价准备
  • 管理费用在借方是会算入成本吗
  • 车辆后期保养费用
  • 出租土地使用权计入什么科目
  • 保安公司怎样上保险
  • 增值税发票开票有误怎么办?
  • 非上市公司股权转让
  • 银行利息收入的账务处理
  • 补贴收入是否缴税
  • 销售退货怎么开红字
  • 核定征收和查账征收,交的税一样吗
  • 如何做预估成本
  • 固定资产一次性扣除后第二年账务处理
  • 资本公积主要包括哪些内容
  • deepin安装win
  • 母公司向子公司发行面值100万元、期限为三年
  • php冒泡法排序
  • php的变量
  • opencvcuda
  • http命令
  • 固定资产减值损失属于营业外支出吗
  • 小微企业免征增值税政策2022
  • 企业向个人借款利息如何缴纳增值税
  • 基于python语言
  • 织梦遍历栏目描述
  • css样式居中
  • 总分机构纳税
  • 长期股权投资处置损失计入什么科目
  • 企业所得税实训内容及过程
  • 暂估入账后续处理
  • 费用科目什么意思
  • 跨年费用账务处理
  • 政府补助是否可以抵扣
  • 存货跌价准备什么科目
  • 如何区分借贷方和负债方
  • 润滑油消费税计算公式
  • 当月开的发票次月预缴税款行得通吗?
  • 利息支出税前扣除时点
  • 承兑汇票的贴现利息
  • 企业购进的固定资产
  • 退回的个税手续费如何账务处理
  • 业务招待算什么费用
  • 冲减多计提的工资摘要怎么写
  • sqlserver中with(nolock)深入分析
  • win8.1鼠标没反应
  • 微软官方的网址是多少
  • linux系统文件在哪个目录
  • vmware vnc连接
  • kvm虚拟化网络配置
  • win10的svchost干什么的
  • csrss.exe是什么进程 2个
  • windows 10激活不了
  • ubuntu下的vivado2022怎么打开
  • linux如何安装rz和sz
  • centos nis
  • w10点击没反应
  • ping命令详解步骤
  • Msssrv.exe - Msssrv是什么进程 有什么用
  • windows8能免费升10吗
  • linux crontab用法
  • Web Safe Color Pallette
  • 第二次约会聊天没多少可以聊的,经常冷场
  • 使用Android Go的手机
  • vue中父子组件如何通信的
  • python中str的用法
  • windows下安装python环境
  • js中倒计时器怎么实现
  • js页面点击怎么随机生成图片
  • 使用jquery实现的项目
  • jquery滚动条滚动到指定位置
  • 安徽省国家税务总局电子税务局
  • 外经证预缴税款网上流程
  • 小微企业印花税税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设