libvirt使用之---使用tc实现kvm虚拟机带宽控制
来源:互联网 发布:windows10共享设置软件 编辑:程序博客网 时间:2024/04/29 14:11
在kvm虚拟机管理的过程当中,对虚拟机带宽进行良好的控制是十分重要的。
linux系统当中对网络带宽的控制一般都是使用tc命令实现,tc即是traffic control的缩写,在这里可以找到有关tc命令的内容。
当然你可以手动使用tc命令来处理这些事情,比如使用cbq队列,htb队列等,都是可以实现的,网上找找应该有很多关于这方面的资料,
比如下面就是使用cbq队列限制src ip为192.168.1.102发送数据包的速率:
1.建立cbq队列:
tc qdisc add dev eth0 root handle 1: cbq avpkt 1000 bandwidth 100mbit
2.建立带宽限制分类:
tc class add dev eth0 parent 1: classid 1:1 cbq rate 60mbit allot 1500 prio 5 bounded isolated
tc class add dev eth0 parent 1: classid 1:2 cbq rate 70mbit allot 1500 prio 5 bounded isolated
tc class add dev eth0 parent 1: classid 1:3 cbq rate 80mbit allot 1500 prio 5 bounded isolated
3.建立过滤器,绑定指定带宽限制类型至指定虚拟机ip:
tc filter add dev eth0 parent 1: protocol ip prio 16 u32 match ip src 192.168.1.102 flowid 1:2
我比较推荐的方法还是直接使用libvirt,libvirt 中已经集成了带宽控制的功能,下面是关于带宽控制部分的xml描述:
使用方法:在网卡interface中加入
<bandwidth>
<inbound average='1000' peak='5000' burst='1024'/>
<outbound average='128' peak='256' burst='256'/>
</bandwidth>
以下是关于各项参数的解释,获取最新的信息可以到这里.
mandatory attribute:
average: It specifies average bit rate on interface being shaped.
optional attributes:
peak: which specifies maximum rate at which interface can send data,
burst: amount of bytes that can be burst at peak speed.
Accepted values: integer numbers.
units:
average: kilobytes per second
peak: kilobytes per second
burst: kilobytes.
http://itxx.sinaapp.com/blog/list/7
- libvirt使用之---使用tc实现kvm虚拟机带宽控制
- 使用libvirt管理KVM虚拟机
- 使用libvirt创建kvm虚拟机
- 使用libvirt管理kvm虚拟机
- 使用libvirt管理kvm虚拟机
- 使用libvirt管理kvm虚拟机
- 使用libvirt管理kvm虚拟机
- 使用 libvirt创建和管理KVM虚拟机
- 使用 libvirt创建和管理KVM虚拟机
- 使用libvirt库创建kvm虚拟机
- 虚拟化:使用libvirt管理kvm虚拟机
- 使用libvirt创建和管理KVM虚拟机
- 使用 libvirt创建和管理KVM虚拟机
- 使用tc限制带宽
- Linux实现KVM+QEMU+libvirt的虚拟机环境 并使用virsh对虚拟机进行管理
- kvm-libvirt的使用:创建虚拟机与快照
- 使用libvirt和virsh工具创建KVM虚拟机
- kvm-libvirt的使用:创建虚拟机与快照
- FrameBufferObject.cpp
- 控制文件恢复
- IOS -- ViewController的LoadView和ViewDidLoad方法相关知识总结
- 手表定律
- QQ抖动效果
- libvirt使用之---使用tc实现kvm虚拟机带宽控制
- 网络编程
- 葵花宝典:WPF自学手册(奋斗的小鸟)_PDF 电子书
- hdu 2509 Be the Winner(博弈)
- 深入理解C++的动态绑定和静态绑定
- Hibernate的fetch (转)
- 寻找Bug记(一)
- 用VC操作WORD
- 自定义Label,设置关键字的颜色