linux系统在虚拟机迁移中的技术难点

通常我们期望虚拟机的迁移能够全部自动化或者部分自动化完成,但实际上Linux系统在P2V(Physical to virtual 物理到虚拟)和V2V(virtual to virtual)的迁移中可能遇到一些困难。

1.磁盘分区名被硬编码。

当我们做磁盘虚拟化时,可能会使用不同类型的虚拟磁盘设备,这将会导致磁盘名字的变化。比如Xen虚拟机中的半虚拟化设备使用/dev/xvda,而标准的Liunx半虚拟化设备使用/dev/vda。准备迁移的Linux系统中存在对/dev/hd*和/dev/sd*磁盘分区名反三的关联,比如/etc/fstab文件,启动初始化文件系统ramfs和一些解析磁盘设备的开机启动脚本文件中。v2v迁移工具需要在整个磁盘上查找并修改这些关联。有一个I安单的方法来避免这种情况:Linux系统上主流的文件系统和分区类型可以使用Lables或UUID作为分区名。迁移时这些信息是被重点保护的。系统应该小心使用这些信息,一定不要使用设作为分区名。另外,LVM分区名和设备无关,在前一种也不受影响。

2.网络硬件设备的改变。

当系统迁移时,网络设备很可能产生变化。比如虚拟网络设备和物理网络设备的转化或者不同类型的网络设备之间的转变。但是是他们的MAC地址没有变化。MAC地址是IEEE分配给物理设备制造商的,两个物理设备不会有相同的MAC地址;然而细腻网络设备可能出现这种情况。所以在做吸泥机迁移时,必须记录每一个网络设备的MAC地址,保证MAC地址和网络设备的对应关系。

3.内核不支持某些虚拟设备。

某些Linux发行版没有virtio虚拟设备的驱动,可能是因为Linux发行版遭遇虚拟设备发布了;或者虚拟设备的驱动不是开源的;或者是在系统编译时去掉了。因此,有事我们另外需要一个完全不同的内核(比如Xen早起的版本就是这样的)。无论如何,在客户机上安装一个新的内核并且使之可以启动是一个很大的冒险,最好避免这样做。

4.Xwindow需要重新配置。

与磁盘、网络设备一样,系统迁移后显示设备也会变化。理想的情况是Xwindow会自动处理这个的变化,探测所有的显示设备并且使用它发现的第一个设备。但是这不意味着所有的Linux发行版都会以这种方式工作。

5.网络环境的变化。静态IP地址和静态DNS解析在虚拟机迁移中是一个麻烦的事情。尽管不是必须的,但是最好配置系统从DHCP服务器自动获得所有的网络配置信息。

6.CPU的扩展指令集发生变化。

迁移后的系统中,新的虚拟CPU火主板和旧的会有一些不同。CPU的扩展指令集茹SSE,Vectors,NX可能被加入或去掉。CPU的型号和制造商信息可能被改变。因此,如果你想要优化虚拟系统上的软件,这可能是浪费时间并且导致系统崩溃。最好是使用通用的软件,让程序在每次启动的时候检查运行环境是否需要优化。

实际上,实时迁移的状况比这个还要复杂,因为处理器可能在程序的运行的过程中被改变,。目前为止还没有一个方案能很好的解决这个问题。

P2V和V2V最大的问题在于硬件的改变。Linux发行版本身应该可以处理所有的硬件变化:正在系统启动的时候去检查所有的硬件,操作系统内核识别新的设备并寻找新的驱动处理他们,所有应用软件都不要和硬件绑定,设计一个很好的模式来应对突然的环境变化。

转载于:https://blog.51cto.com/toubicongrong/1619902

linux系统在虚拟机中迁移的技术难点相关推荐

  1. Linux系统简介-虚拟机安装教程(保姆级)-Linux常用命令

    Linux系统简介-虚拟机安装教程-Linux常用命令 1.Linux系统简介 1.1Linux系统的历史 1.2Linux系统的特点和优势 1.3Linux发行版的分类 2.虚拟机的安装教程 2.1 ...

  2. linux无法运行病毒,{转}为什么linux系统不容易中病毒?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 为什么linux系统不容易中病毒 可能不少人持这样一种观点,认为 Linux 病毒少是因为Linux不像Windows那么普及,其实这种观点很早已经被人批 ...

  3. 小白如何在window电脑上安装Linux系统(虚拟机)超详细

    小白如何在window电脑上安装Linux系统(虚拟机) 一.软件准备. 1. VMware软件 下载地址1(迅雷):http://forspeed.onlinedown.net/down/vmwar ...

  4. linux系统python截图不显示中文_Linux运维知识之解决linux系统下python中的matplotlib模块内的pyplot输出图片不能显示中文的问题...

    本文主要向大家介绍了Linux运维知识之解决linux系统下python中的matplotlib模块内的pyplot输出图片不能显示中文的问题,通过具体的内容向大家展现,希望对大家学习Linux运维知 ...

  5. 虚拟服务器声卡,怎么在Win7系统Hyper-v虚拟机中接真实机声卡

    怎么在Win7系统Hyper-v虚拟机中接真实机声卡,虚拟机中XP只能支持播放不能录音,微软文档说Win2008 R2能支持录音,但实际操作发现也是只支持播放,真机为Win7 企业版,虚拟机也是Win ...

  6. Linux系统Shell脚本中的echo命令

    Linux系统Shell脚本中的echo命令 echo的作用       输出字符串 格式                  echo  "字符串内容" 一,显示转义字符 转义字符 ...

  7. Linux系统与虚拟机安装

    Linux系统 一.Linux与Windows的区别 二.Linux的起源与发展 三.VMware虚拟机安装 一.Linux与Windows的区别 现如今服务器的运用很广泛,很多行业都需要使用服务器. ...

  8. ubuntu系统虚拟机linux系统,基于虚拟机的Linux操作系统安装(Ubuntu

    <基于虚拟机的Linux操作系统安装(Ubuntu>由会员分享,可在线阅读,更多相关<基于虚拟机的Linux操作系统安装(Ubuntu(13页珍藏版)>请在人人文库网上搜索. ...

  9. 虚拟机能装红旗linux吗,在虚拟机中安装红旗LINUX及制作LiveCD.doc

    在虚拟机中安装红旗LINUX及制作LiveCD 在虚拟机中安装红旗LINUX及制作LiveCD 下载红旗LINUX安装盘映像文件(如有大于2G的优盘,可直接到五楼机房办公室复制) 2/download ...

最新文章

  1. 软件测试人员必备Linux命令(初、中、高级)
  2. Xamarin Essentials教程语音播报TextToSpeech
  3. java记录每个元素出现几次_哪位师傅帮用Java我计算出数组中每个元素出现的次数...
  4. php detailview,GridView以及DetailView的数据格式化
  5. 常量、变量、数据类型
  6. GAIR 2020 工业互联网专场演讲实录:腾讯云人工智能在工业互联网领域的实践
  7. POJ - 1847 Tram(dijkstra)
  8. fread与fread_s读取文件(二进制文件)
  9. ADB usb 或 WiFi 连接手机 ADB工具下载
  10. 和菜鸟一起学android4.0.3源码之鼠标光标绘制简略版
  11. 制作一个全盘搜索器 ,能搜索整个磁盘所有目录
  12. 美化版缤纷彩色文字广告代码文字+网站添加AD教程
  13. Luogu 1606 [USACO07FEB]白银莲花池Lilypad Pond
  14. 初创跨境电商公司,让Callnovo的海外客服成为您出海的桨
  15. uni-app H5 的下载,如何实现
  16. Manjaro手动调节屏幕亮度
  17. lisp获取qleader端点_中文版AutoCAD2013高手之道
  18. 数据标注的作用及行业现状
  19. matlab rand randn 每次生成的随机数都一样的解决方案
  20. java测试题一附答案,Java考试题30道(附答案)

热门文章

  1. 基于属性加密的ABE算法的应用场景思考展望
  2. codeforces 977A-C语言解题报告
  3. AMD Mantle再添新作,引发下代GPU架构猜想
  4. 如此如此,怎能师夷长技以制夷!
  5. cygwin/gcc与MinGW
  6. 开启 JM 的 trace 功能
  7. @JsonSerialize 使用:注解方式 实现条件判断属性值、条件修改属性值
  8. 超详细 图解 : IntelliJ IDEA 逆向生成 JAVA 实体类
  9. IPC 中 LPC、RPC 的区别和联系
  10. window服务器开站点(不通用)