克隆实时Linux系统的最佳方法


17

有人知道克隆实时Linux系统的方法吗?我有一个运行生产站点的实时安装。问题是,我需要克隆它(不降低它),然后将其移到(还原)到虚拟机上。我基本上是从物理硬件迁移到虚拟硬件。


无论如何,您都必须将其关闭,然后才能在VM上启动它。
伊格纳西奥·巴斯克斯

物理硬件将启动->发生克隆->迁移到VM->更改URL地址->完成。我需要克隆活动系统的最佳实践的细节。
drewrockshard 2011年

4
第一步是尝试确定它正在运行什么操作系统。
暂停,直到另行通知。

Answers:


12

在源计算机上:

dump -0 -f - / | ssh -c blowfish root@target_machine "cd /; restore -rf -"

这将把fs转储到源计算机上,通过ssh复制它,然后在目标计算机上将其还原。

当然,您需要为每个fs重复此操作。

“河豚”只是为了使其更快地压缩和解压缩而存在。


这似乎是最有效的方法。
drewrockshard 2011年

我不喜欢小写字母r。我通过分离有这个工作的一部分-rf to -r -f,但现在- :恢复无效选项“R” 无效选项- “R”:猫
RJT

4
这个答案仍然有效吗?如果包装盒上有正在运行的MySQL服务,将会发生什么?
MirroredFate 2015年

6

VMWare Converter可以运行大多数现代操作系统,而无需关闭服务器,但是正如Dennis所指出的,我们确实需要知道您正在运行哪个操作系统。

完成后,您将获得服务器的虚拟映像,而不是原始磁盘映像,但这通常足以胜任大多数工作,具体取决于完成后要执行的操作。


它在Fedora上运行。仅供参考,我计划稍后在Xen中对其进行映像以进行虚拟化。
海峡

出于虚拟化目的,如果我没有记错的话,映像必须位于虚拟映像中,而不是原始磁盘映像中,对吗?
海峡

1
@Str,如果您知道操作系统是什么,请编辑您的问题,以使用适当的标签。
John Gardeniers

@Str-没错,但是您没有提到是否要虚拟化计算机,只是想克隆它。
Mark Henderson

1

您要迁移到哪个VM平台?VMWare具有适用于Linux转换器。它将转换为开机的机器。


最后,它位于内部,并且基于VMWare。控制面板是自定义的,因此我们基本上是在加载实时CD,然后在VM上扩展/提取/提取等。我不确定是否可以访问VM基础结构来执行VMWare转换器,但是这完全取决于此过程。为了进行测试,我将尝试将其迁移到virtualbox vm,以查看该概念证明是否完全有效。
drewrockshard 2011年

您是否认为我可以在物理机上运行转换程序,然后将转换后的虚拟机“导入”到vmware中(从未使用过转换程序,所以我的术语可能不正确)。
drewrockshard 2011年

转换器不是真的那样工作。查看此链接。它应该向您展示转换的基本原理vladan.fr/how-to-p2v-linux-into-vmware-esx-server
Jason Berg,

有没有一种方法可以绕过vmware基础结构导入,以便可以将“转换后的”映像保留在本地系统上,还是必须迁移到其他基础结构(没有本地功能)?
drewrockshard 2011年

请注意,VMWare Converter(当前)需要Windows,尽管它可以将Linux物理计算机迁移到虚拟机。
格雷格·格洛克纳


1

我们通常这样做:

  • 从CD引导目标虚拟主机(或对其进行网络引导)
  • 在虚拟主机上准备文件系统(即准备磁盘,创建文件系统并挂载它们)。
  • 将文件从物理主机同步到虚拟主机
  • 在目标主机上安装引导加载程序

只要复制的数据相对无状态,这就很好用。例如,如果您要使用数据库服务器,尤其是要处理大量活动的数据库服务器,则在进行最终转换之前,需要确保数据库处于静态状态……因此,在其他所有操作之后准备好了:

  • 停止数据库
  • 执行数据的最终rsync
  • 关闭物理主机
  • 启动虚拟主机

1
你们使用什么rsync命令?
drewrockshard 2011年

0

查看VMware Converter(如果有vCenter则免费)或Plate Spin(其产品之一就是Converter)。

Plate Spin可以使机器运转起来,并减少停机时间。

使用VMware Converter,它将运行一台实时计算机(如果有数据库,它可能会不同步),只是在完成后不让它启动VM。然后断开vNIC的连接,然后启动计算机,通过控制台登录并更改IP等。然后重新连接vNIC。


0

不停止可能改变系统状态的所有操作,就不可能获得一致的快照。

除非应用程序已明确设计为适应此类操作(即,所有处理都通过可排队的消息进行处理),否则在不关闭系统(或至少禁用事务性组件)的情况下不可能获得一致的快照。

但是,可以大大减少快照系统的时间窗口(例如,通过从RAID集中移除镜像,然后将其重新安装到其他位置)。并且,生成快照所花费的时间越短,事务跨越该操作的可能性就越小。

而且大多数文件系统/ DBS将支持某种日志记录,这种日志记录应允许大多数损坏的操作得以恢复或回滚。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.