zoukankan      html  css  js  c++  java
  • 在centos7中限制kvm虚拟机可访问的资源

    最近通过艰苦卓绝的度娘(我很想用谷歌,可是,你懂的),终于搞明白如何在centos7中限制kvm虚拟机可访问的资源了。
    度娘给出的结果中,大部分都说的很对,然而,却很难照着做,主要原因有两点:
    1、网上的版本大都是针对centos6.x而写的,但是centos7和centos6的操作有些不同。
    比如centos6中启动服务的命令是用/etc/init.d/目录下对应的服务的start方法,而centos7中对服务的管理都是靠systemctl这个命令。
    2、对命令中的某些参数解释的不够清晰,甚至是没有解释,直接扔一个命令上去,然后说这个命令能起到什么作用。
    对于符合这一点的文章,我一般称为技术八股文。不幸的是,网上的文章大部分都是技术八股文。
    下面就把我实现的步骤写下来。
    一般来说,升级一下系统吧。升级系统可以把系统中的软件更新到最新状态,这样可以最大程度的减少一些莫名其妙的问题。命令如下:
    yum update -y
    参数-y是为了更新系统是不提示直接安装。如果你喜欢每次都按一下键盘的话,就不要带这个参数了。
    另外,如果不是root用户,要用sudo:
    sudo yum update -y
    然后安装libcgroup和libcgroup-devel。这两个是为系统增加cgroup功能,具体每个包都是干什么,我也不知道。
    yum install libcgroup libcgroup-devel -y
    安装完成后,系统中会增加一个叫做cgconfig的服务。
    网上一般都要求启动此服务。但是我测试的情况是,不启动这个服务也可以。
    为了和网上保持一致,就启动此服务吧。
    使用systemctl启动此服务:
    systemctl start cgconfig

    如果想看此服务的状态,可以用以下命令来看:
    systemctl status cgconfig
    看其他服务的状态也是用这个命令。
    如果看到“Active: active (exited)”的字样,就说明启动成功了。
    网上一般都要求设置此服务为自动启动,既然我觉得没用,就不设置了。
    网上一般都说服务启动后在根目录下看到cgropu的目录,但是我也没有看到。不过这个似乎和我这个初学者没有半毛钱关系,能用就行。
    下面就是设置对磁盘资源的控制。这个主要是靠virsh这个命令中的子命令blkiotune和blkdeviotune进行设置。blkdeviotune没研究不解释。blkiotune设定的是某个虚拟机对资源的访问,网上的资料说可以设置权重(weight),但是我设置后没发现有什么作用,所以我还是强制设定的读写速度。这里总共有六项可以设定。通过以下命令查看指定名字的虚拟机当前的设定:
    virsh blkiotune win2k8r2
    输出如下:
    weight         : 0
    device_weight  :
    device_read_iops_sec:
    device_write_iops_sec:
    device_read_bytes_sec:
    device_write_bytes_sec:

    命令中的“win2k8r2”就是要设定的虚拟机的名字。
    这里可以看到六项可以设定的内容。我只设定device_read_bytes_sec这一项。设定命令如下:
    virsh blkiotune win2k8r2 --device-read-bytes-sec /dev/sda2,5000000
    这样就把名字为win2k8r2的虚拟机对/dev/sda2这个设备的读取速度限制在5M了。这里要注意的是,参数中的“-”,单词前面用的是“--”,两个减号;单词之间用的是“-”,一个减号,而上一个命令中显示的是对应项目,用的是下划线。
    要注意的是,虽然我们限制了读取速度为5M,但实际上可能会在这个速度上下波动。
    查看设置是否成功的方法是用iotop这个工具,使用方法类似于top,就不解释了。

    最后声明一下,这篇文章仅适于初学者,如果你是大牛,请无视。

  • 相关阅读:
    [USACO07FEB]银牛派对Silver Cow Party
    道路重建
    javascript基础
    css清除浮动
    css水平居中
    块元素与行内(内嵌)元素的区别
    hook
    回调函数
    Web服务API
    Enrolment注册插件
  • 原文地址:https://www.cnblogs.com/liu-binq63/p/4966168.html
Copyright © 2011-2022 走看看