使用 ionice 限制 Xen 虚拟机磁盘 IO

分类:技术 6.37k浏览

经常发现一些客户会超IO或长时间使用大量的IO,为了快速查找和限制,留下笔记。

一、查看Xen ID

vm list

20160903091811

二、查找blkback进程号

ps aux | grep blkback.22      #如 ID 为22

20160903093839

三、找到进程号使用 ionice

ionice -p 27090 -c 2 -n 7

-c 是指定调度类型,这里选择的是 2,best-effort;-n 指定调度优先级,0 最高,7最低;-p 是指定进程号。可以执行-p 查看操作说明。

ionice 把磁盘 IO 调度分成三类(分别为1、2、3):

1、real time 实时调度,设置后立即访问磁盘,不管系统中其他进程是否有 IO,可能会使得其他进程处于等待状态,不能用在这里;
2、best effort 默认调度,可以指定调度优先级(从0到7,数值越小、优先级越高);同一优先级的进程采用 round-robin 算法调度;
3、idle 空闲调度,只有当前系统没有其他进程磁盘 IO 时,才能进行磁盘 IO。