用qemu做迁移
来源:互联网 发布:mysql 启动 1067 编辑:程序博客网 时间:2024/05/29 08:59
参考 http://www.linux-kvm.org/page/Migration
同一台机器:
启动原guest:
~/git/qemu/i386-softmmu/qemu-system-i386 -enable-kvm -drive file=ubuntu.qcow2 -boot dc -m 512 -monitor stdio -netdev user,id=usernet -device rtl8139,netdev=usernet
启动目的guest:
~/git/qemu/i386-softmmu/qemu-system-i386 -enable-kvm -drive file=ubuntu.qcow2 -boot dc -m 512 -monitor stdio -netdev user,id=usernet -device rtl8139,netdev=usernet -incoming tcp:0:4444
在原机器的monitor中输入:
migrate -d tcp:0:4444
查看迁移情况:
info migrate
算法
参考 http://www.linux-kvm.org/page/Migration
1. Setup
- Start guest on destination, connect, enable dirty page logging and more
2. Transfer Memory
- Guest continues to run
- Bandwidth limitation (controlled by the user)
- First transfer the whole memory
- Iteratively transfer all dirty pages (pages that were written to by the guest).
3. Stop the guest
- And sync VM image(s) (guest's hard drives).
4. Transfer State
- As fast as possible (no bandwidth limitation)
- All VM devices' state and dirty pages yet to be transferred
5. Continue the guest
- On destination upon success
- Broadcast "I'm over here" Ethernet packet to announce new location of NIC(s).
- On source upon failure (with one exception).
一些log
htab_save_iterate(): first_pass=1
htab_save_iterate(): first_pass=1
htab_save_iterate(): first_pass=1
htab_save_iterate(): first_pass=0
htab_save_iterate(): first_pass=0
htab_save_iterate(): first_pass=0
htab_save_iterate(): first_pass=0
Hash table migration complete
First pass (3 iterations): 34147 chunks, 34997 valid, 489291 invalid
Middle passes (4 iterations): 0 chunks, 0 valid, 0 invalid
Final transfer: 0 chunks, 0 valid, 0 invalid
Qemu的一些接口
http://www.linux-kvm.org/page/MigrationQemu0.8.2
和例子中的接口是两套。
- 用qemu做迁移
- qemu迁移
- qemu迁移使用方法
- qemu 迁移使用方法
- 用exp/imp做数据迁移
- 迁移学习心得,从OpenStack到QEMU
- qemu-kvm虚拟机live迁移源代码解读
- QEMU-KVM中的多线程压缩迁移技术
- qemu raw 文件的复制、迁移
- QEMU-KVM中的多线程压缩迁移技术
- QEMU-KVM中的多线程压缩迁移技术
- qemu-kvm虚拟机live迁移源代码解读
- qemu中做pci hotplug
- qemu 做NAT网络同时做端口映射
- Oracle用分区表分区交换做历史数据迁移
- QEMU的块设备动态迁移(live block migration)
- Kvm动态迁移,qemu命令而非virsh
- 使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机 [Nova Libvirt QEMU/KVM Live Migration]
- 考研相关内容
- Git初级使用教程
- poi基础
- 卡特兰数
- iOS开发那些事--创建基于故事板的iOS 6的HelloWorld
- 用qemu做迁移
- 学习linux/unix编程方法的建议
- 接口和抽象类的使用
- c++ 23种设计模式之备忘录模式
- 三星S6D1121主控彩屏(240*320*18bit,262K)驱动程序
- java请求的安全顾虑
- Row_Number,Rank,Dense_Rank区别
- Socket原理与编程基础
- java编程注意