- 浏览: 1444693 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (691)
- linux (207)
- shell (33)
- java (42)
- 其他 (22)
- javascript (33)
- cloud (16)
- python (33)
- c (48)
- sql (12)
- 工具 (6)
- 缓存 (16)
- ubuntu (7)
- perl (3)
- lua (2)
- 超级有用 (2)
- 服务器 (2)
- mac (22)
- nginx (34)
- php (2)
- 内核 (2)
- gdb (13)
- ICTCLAS (2)
- mac android (0)
- unix (1)
- android (1)
- vim (1)
- epoll (1)
- ios (21)
- mysql (3)
- systemtap (1)
- 算法 (2)
- 汇编 (2)
- arm (3)
- 我的数据结构 (8)
- websocket (12)
- hadoop (5)
- thrift (2)
- hbase (1)
- graphviz (1)
- redis (1)
- raspberry (2)
- qemu (31)
- opencv (4)
- socket (1)
- opengl (1)
- ibeacons (1)
- emacs (6)
- openstack (24)
- docker (1)
- webrtc (11)
- angularjs (2)
- neutron (23)
- jslinux (18)
- 网络 (13)
- tap (9)
- tensorflow (8)
- nlu (4)
- asm.js (5)
- sip (3)
- xl2tp (5)
- conda (1)
- emscripten (6)
- ffmpeg (10)
- srt (1)
- wasm (5)
- bert (3)
- kaldi (4)
- 知识图谱 (1)
最新评论
-
wahahachuang8:
我喜欢代码简洁易读,服务稳定的推送服务,前段时间研究了一下go ...
websocket的helloworld -
q114687576:
http://www.blue-zero.com/WebSoc ...
websocket的helloworld -
zhaoyanzimm:
感谢您的分享,给我提供了很大的帮助,在使用过程中发现了一个问题 ...
nginx的helloworld模块的helloworld -
haoningabc:
leebyte 写道太NB了,期待早日用上Killinux!么 ...
qemu+emacs+gdb调试内核 -
leebyte:
太NB了,期待早日用上Killinux!
qemu+emacs+gdb调试内核
需求:
目前有两台服务器
192.168.139.117
192.168.139.83
把117上的一台vm动态迁移到83上,中间不断网,不影响用户使用
假设vm的网络也是一个网段的192.168.139.66,使用相同的dhcp服务
服务器上配置网络:
两台机器都要
systemctl stop NetworkManager systemctl disable NetworkManager
网络配置为
192.168.139.117:
[root@jslinux network-scripts]# cat ifcfg-br0 DEVICE=br0 TYPE=Bridge ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none IPADDR=192.168.139.117 NETMASK=255.255.240.0 GATEWAY=192.168.128.1 DNS1=114.114.114.114 [root@jslinux network-scripts]# cat ifcfg-eth0 NAME="eth0" DEVICE="eth0" ONBOOT="yes" NM_CONTROLLED=yes BOOTPROTO=none BRIDGE=br0 [root@jslinux network-scripts]#
##################
192.168.139.83:
[root@mcontroller network-scripts]# cat ifcfg-br0 DEVICE=br0 TYPE=Bridge ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none IPADDR=192.168.139.83 NETMASK=255.255.240.0 GATEWAY=192.168.128.1 DNS1=114.114.114.114 [root@mcontroller network-scripts]# cat ifcfg-eth0 NAME="eth0" DEVICE="eth0" ONBOOT="yes" NM_CONTROLLED=yes BOOTPROTO=none BRIDGE=br0 [root@mcontroller network-scripts]#
准备
kernel文件 :bzImage
系统镜像:hda.qcow2 迁移的必须是qcow2等格式,raw不行
如果是raw的hda.img需要转一下:
qemu-img convert -f raw -O qcow2 hda.img hda.qcow2
qemu的启动的网络脚本:
if-up:
#!/bin/sh ip link set tap1 up brctl addif br0 tap1
关闭的脚本:
if-down:
#!/bin/sh ip link set tap1 down brctl delif br0 tap1
在117上qemu启动vm:
/usr/libexec/qemu-kvm -kernel bzImage -drive file=hda.qcow2,if=ide,cache=none -append "console=ttyS0 root=/dev/sda rw rdinit=/sbin/init notsc=1" -boot order=dc,menu=on -net nic,vlan=0,macaddr=52:54:00:12:34:22,model=e1000,addr=08 -net tap,ifname=tap1,script=./if-up,downscript=./if-down -vnc 0.0.0.0:1
脚本和hda.qcow,bzImage都复制到83上
#####################
进入刚起的vm,执行dhclient获取ip为192.168.139.66
设置一些变量(为了观察内存迁移后是否同步)
export haohao=ning
修改一个文件(为了观察硬盘迁移后是否同步)
echo 117 > /hello.txt
####################################
在83上启动
/usr/libexec/qemu-kvm -kernel bzImage -drive file=hda.qcow2,if=ide,cache=none -append "console=ttyS0 root=/dev/sda rw rdinit=/sbin/init notsc=1" -boot order=dc,menu=on -net nic,vlan=0,macaddr=52:54:00:12:34:22,model=e1000,addr=08 -net tap,ifname=tap1,script=./if-up,downscript=./if-down -vnc 0.0.0.0:1 -incoming tcp:0:6666
注意多了一个-incoming tcp:0:6666,其他都一样,准备接受,执行后,vm并没有开始运行
######################################
切换到117上起的vm,ip为192.168.139.66的vm上
ctl+alt 2 切换到monitor模式
(qemu)migrate tcp:192.168.139.83:6666
这个过程观察一直观察网络ping的状况
#############################
发现ping没有明显变化
83上启动的vm
ctl+alt 3 或ctl+alt 1切换到运行的vm上
内存硬盘网络已经为66了
117上的vm已经不可用
达到不影响用户使用的情况把
vm从117迁移到了83上,
好了,117服务器可以下架了
如图:
####################################
需要的基础知识:
vm的网络桥接参考:
http://haoningabc.iteye.com/blog/2306736
基本的动态迁移参考
http://haoningabc.iteye.com/blog/2307304
用qemu建立vm参考:
http://haoningabc.iteye.com/blog/2306941
发表评论
-
tinyemu
2019-01-24 17:59 1399参考https://bellard.org/jslinux/t ... -
jslinux-deobfuscated-network
2017-02-13 22:37 614基础知识 查看网络包 tcpdump -i eth0 -e ... -
用buildroot为jslinux建立最小rootfs
2016-11-18 17:59 1207############################### ... -
nginx rewrite替代apache rewrite
2016-10-18 20:30 786清理chrome的缓存 chrome://appcache-i ... -
qemu用tap方式启动vm的网络试验(ip route)
2016-09-14 11:29 2674ip route add 192.168.8.0/24 via ... -
kvm的nested嵌套
2016-06-27 18:25 1277关键点是 modprobe kvm_intel nested= ... -
qemu的动态迁移的试验
2016-06-25 21:48 13801.安装qemu-2.5.1.tar 解决 ... -
libvirt建立快照和基本使用
2016-06-25 15:51 1544如果使用qemu的快照方式 在monitor中操作 (qe ... -
socket的方式使用qemu建立虚拟机
2016-06-24 17:54 1802qemu的-net参数 -net nic 必须有,基本配置mo ... -
tap的方式使用qemu建立虚拟机NAT网络
2016-06-23 18:03 9499基本概念: vm:虚拟机 ... -
qemu建立基本的虚拟机
2016-06-23 17:04 1913使用qemu建立虚拟机 1.需要内核文件 bzImage ... -
qemu用nat的方式使用tap建立虚拟机
2016-06-23 16:15 11普通桥接参考 http://haoningabc.iteye. ... -
tap的方式使用qemu建立虚拟机桥接网络
2016-06-22 20:53 7614需求:建立一个虚拟机,使网络和内网一样,当一台普通接入内网的服 ... -
使用buildroot为jslinux创建root.bin
2016-05-02 00:37 1294环境 gcc 版本 4.8.5 centos ... -
i386上的busybox
2016-04-26 22:51 994环境:在64位机器上总莫名其妙问题,交叉编译也会有想不到的地方 ... -
qemu以64位和32位的方式跑busybox
2016-04-07 22:06 1526两种方式x86_64 和32位的i386方式 ------ ... -
neutron基础九(qemu nat网络)
2016-02-06 17:21 1557接上基础八,kvm透传nested忽略 1.在主机ce ... -
neutron基础七(qemu tap)
2016-02-02 17:02 970使用qemu 建立个虚拟机 然后用tap设备, 根据基础六,t ... -
使用devstack安装magnum
2015-11-18 21:22 1383在redhat6.5上建立个centos7的虚拟机,使用cen ... -
使用jslinux的hda.bin制作rootfs
2015-09-01 18:13 847把jslinux的硬盘下载下来 host=http: ...
相关推荐
介绍了多种QEMU虚拟机的网卡虚拟化技术和具体实现方法,同时给出了相应的网络配置步骤
2、动态迁移(热迁移):对于热迁移,比较常用,通常是这台服务器上正在跑着一些业务,而这些业务又不允许中断,那么就需要使用热迁移了,这篇博文将详细写出热迁移的步骤。 1、冷迁移 通常我们存放虚拟机磁盘的...
使用 RT-Thread QEMU BSP 的时候,如果需要用到网络,需要使用 TAP 网卡来为 QEMU 提供网络支持。
qemu 是使用动态二进制翻译的 cpu 模拟器,它支持两种运行模式:全系统模拟和用户态模拟。在全系统模拟下,qemu 可以模拟处理器和各种外设,可以运行操作系统。用户态可以运行为另外一种 cpu 编译的进程,前提是两者...
Qemu Manager v7.0 (April 2010) with Qemu 0.11.1 and KQEMU Support ------ windows下的qemu模拟器 QEMU是一套由Fabrice Bellard所编写的模拟处理器的自由软件。它与Bochs,PearPC近似,但其具有某些后两者所不...
Qemu模拟器运行AIX 7.2 系统
Qemu虚拟机安装 我们先装Qemu虚拟机吧..先安装这个软件QemuInstall-0.7.2安装.我这里安装完了.就不安了! 具体步骤自己看喽. 装QEMU虚拟机的时候可卡.QEMU虚拟机是命令试的.具体命令你自己看我设置吧. 按我的设置...
Qemu使用手册中文版,安装以及使用详细教程,命令详解
下载qemu5.x D:\software\QEMU\qemu-system-aarch64.exe -m 6333 -cpu cortex-a72 -smp 2,cores=2,threads=1,sockets=1 -M virt -bios D:\software\QEMU\bios\QEMU_EFI_desktop.fd -net nic,model=pcnet -device nec...
用于qemu虚拟机的BIOS源代码。
qemu源码分享
PCIe 设备虚拟化QEMU中的实现 包括处理中断的硬件以及Linux如何响应和处理终端。技术分析分享
qemu-0.12.2-windows
因为玩操作系统的需要,我觉得开源免费虚拟机,比较好用就是QE了。这个是界面版,容易操作。QEMU 3.0觉得比5.0好用。里面有安装说明
CentOS上安装nova做为计算节点,需要qemu-nbd,它包含在qemu-common中,然而CentOS并不包含该包,因此我从与CentOS的qemu版本相近的fc13中编译出相关rpm包,供大家使用,OpenStack全部软件下载(更新)中已经包含这...
qemu5.1版本源码,开源,开源作虚拟机或者仿真开发板。 QEMU 5.0 Supports Recent Armv8.x Features, Cortex-M7 CPU, Host Directory Access, and More
qemu支持真实tpm,在qemu虚拟机中可以直接使用主机的真实tpm芯片,并且两者只能同时有一个能使用tpm,包里包括qemu和seabios源码
QEMUwindows版本2022年8月份最新版qemu-w64-setup-20220831.exe
银河麒麟arm桌面版qemu虚拟机
qemu-0.9.1-windows 官方原版