CENTOS7中用KVM开的小鸡VPS磁盘IO限制方法 限制kvm虚拟机可访问的资源
首先我们对系统进行下升级,防止软件过旧运行出现问题:
yum update -y
然后安装libcgroup和libcgroup-devel,为系统增加cgroup功能
yum install libcgroup libcgroup-devel -y
安装完成后,系统中将会增加一个cgconfig的服务。
使用systemctl启动此服务(经过测试不启动也是可以,反正启动下比较保险):
systemctl start cgconfig
然后看看此服务的状态:
systemctl status cgconfig
如果看到“Active: active (exited)”的字样,就说明启动成功了。
然后设置此服务为自动启动
systemctl enable cgconfig
接下来是设置对磁盘资源的控制。
主要利用virsh命令中的子命令blkiotune和blkdeviotune进行设置。
blkiotune设定的是某个虚拟机对资源的访问
通过以下命令查看指定名字的虚拟机当前的设定:
virsh blkiotune mykvm01
输出如下:
weight : 0
device_weight :
device_read_iops_sec:
device_write_iops_sec:
device_read_bytes_sec:
device_write_bytes_sec:
命令中的“mykvm01”就是要设定的虚拟机的名字。
这里可以看到六项可以设定的内容。我们只设定device_read_bytes_sec这一项。设定命令如下:
virsh blkiotune mykvm01 --device-read-bytes-sec /dev/sda2,5000000
这样就把名字为mykvm01的虚拟机对/dev/sda2这个设备的读取速度限制在5M了。这里要注意的是,参数中的“-”,单词前面用的是“--”,两个减号;单词之间用的是“-”,一个减号,而上一个命令中显示的是对应项目,用的是下划线。
要注意的是,虽然我们限制了读取速度为5M,但实际上可能会在这个速度上下波动。
查看设置是否成功的方法是用iotop这个工具,使用方法类似于top.
- 最新评论