Openstack前传八(KVM高级特性)

来源:互联网 发布:mysql自动断开 编辑:程序博客网 时间:2024/05/21 05:43

1. 热插拔

目前KVM的热插拔不是太完善,主要支持PCI设备和CPU的热插拔,也可以通过ballooning间接实现了内存的热插拔。

2.动态迁移

原理说明:在客户机动态迁移之后,客户机依然在宿主机上运行,与此同时,客户机的内存页被传输到宿主机上。KVM会记录在传输过程中已被传输的内存页的任何修改。并在所有的内存页被传输完之后再传输修改部分的页的内容。当剩余的内存页数据量能够在一个可设定的时间周期内完成时,则会关闭宿主机,恢复客户机的状态运行。至此,迁移完成。
这里要注意了,通常这个时候宿主机不能大量的在内存页换入换出,不然一直无法迁移成功。


3.嵌套虚拟化

对于KVM这样需要硬件虚拟化支持的Hypervisor来说,必须在客户机中模拟硬件虚拟化特性的支持,并对上层KVM 进行模拟。
可以使用 modprobe kvm_intel netsted=1来开启。

4.KSM技术(相同内存页合并)

KSM技术就是将不同进程但是访问的是相同的内存页进行合并,并标注为写时复制。这样可以在物理资源不变的情况下,能够减少虚拟机的内存使用量。也可以创建更多的虚拟机了了。


5  大页

使用的是hugetlbfs(一种基于内存的特殊文件系统),这样减少了内存页表数量,提高了LTB的缓存效率。
缺点是: 大页在使用前被保存,必须显示使用大页,必须挂在hugetlbfs,大页常驻内存,不能被转换到交换分区。
于是乎出现了透明大页,它是内核的一个特性。应用程序不需要任何修改就能使用透明大页的好处,透明大页是可以被换到交换分区中的。


6. 控制客户机的使用资源-cgroups

包含了资源限制,隔离,控制等功能。这个让我们有更多的选择性去优化虚拟机系统。






 
0 0
原创粉丝点击