将Linux主机复制到新硬件


13

我需要做一个主机来托管从旧硬件到新硬件的迁移。具体来说,从HP BL460G7到HP BL460G8。新旧服务器均具有2 x 600GB 2.5英寸驱动器,并配置为RAID1。我可以为每台服务器提供30分钟的停机时间。

有四台服务器要迁移,最小的服务器在逻辑卷中总共分配了120GB,最大的服务器上分配了510GB。三台服务器正在运行RHEL5,一台正在运行RHEL6。

我一直在思考如何在给定的时间范围内做到这一点,而又不破坏操作系统和关键数据。

我唯一的想法是:

  • 从旧服务器中删除一个驱动器(服务器已打开)
  • 从新服务器中删除两个驱动器(服务器已关闭)
  • 从球童中取出G7驱动器并放在一旁
  • 从球童中取出G8驱动器并安装到G7球童中
  • 将G7球童中的G8驱动器安装到旧服务器中
  • 等待RAID控制器重建RAID1阵列
  • 完成关闭旧服务器后
  • 删除G7球童中的G8驱动器
  • 在G8球童中安装G8驱动器并插入G8(已安装单个驱动器)
  • 启动G8服务器
  • 等待操作系统启动
  • 当操作系统启动时,插入剩余的驱动器
  • 等待RAID阵列重建

这听起来理智吗?

编辑:RHEL5是RHEL5.10,RHEL6是RHEL6.6

我还应该指出,其中两个系统是热的四节点群集的一部分,该群集几乎不断复制应用程序“事件”(它是关键基础结构系统的一部分)。我们有备份,但仅在整个系统出现故障时才使用。

先前的测试表明,系统之间的最大“ dd”约为50MBps,这太慢了。

编辑:我要依靠kudzu来处理硬件更改。


使用了哪个特定版本的RHEL5和RHEL6?
ewwhite

在编辑中回答
user1174838

不要试图在Gen8服务器中安装G7磁盘-除了物理托盘以外,还有更多更改。
斩波器

故意降级具有重要数据的RAID听起来不是一个好计划。
卡巴斯德,2015年

Answers:


18

应该注意的是,取决于分布,可能还需要其他步骤。最值得注意的是驱动程序(感谢指出@ewwhite)。

  1. 从livecd / usb引导新服务器。
  2. 在新驱动器上准备分区和引导块。
    • 根据设置,可以通过复制MBR / bootblock来完成。
  3. 创建文件系统。
  4. 从旧服务器到新服务器执行rsync。
    • 您可能需要再次执行此操作,以查看后续rsync需要多长时间-如果它在30分钟内仍未完成,请继续。
    • 如果新系统启动,这是您可以尝试的时间。请注意不要引起任何IP(或其他)冲突。
  5. 关闭所有将写入文件系统的服务
    • 最好重启到livecd / usb
  6. 将数据从旧服务器重新同步到新服务器
  7. 重新启动新服务器并使用它

这样,您仍然可以保留原始服务器,因此,如果出现任何问题,有一种简单的返回方法。但这需要一些知识(grub / rsync / partitions),因此我建议在投入使用之前预先做一些准备工作和测试。


这两个平台之间实际上存在驱动程序差异,因此了解他正在使用哪个次要版本的RHEL非常重要。
ewwhite

是的,我不应该回答与企业发行版有关的任何事情……很抱歉,……
福克斯(Fox)

@福克斯:未被大众需求删除。你的回答很好。
斯文

1
@ user1174838不应成为障碍...我会看到的唯一问题是大量的小文件。
福克斯

1
而且,请不要忘记这个出色的解决方案,双rsync可以最大程度地减少服务器的停机时间:由于大多数数据是在运行中的服务器上传输的,因此第二个rsync(在现已停用的服务器上)仅复制最新差异。
peterh-恢复莫妮卡2015年

6

两件事情:

  • 我将建立一个新的和rsync数据。
  • 您的停机时间分配/窗口似乎太短。在特定情况下可以使用30分钟,但是是否应该根据实际完成工作所需的时间来决定实际的停机时间要求?

根据每台服务器中包含的数据,数据流失量和您的配置方案,可能需要在新的Gen8 ProLiant上安装必要的操作系统,并在可以静默处理的时间点同步设置和其他数据部分。数据。

也许制作一个种子副本,并从后续rsync上获取文件更改所花费的时间中得出停机时间要求。如果您需要加快传输过程或有很多小文件,可以使用一些技术来解决

我经常进行这些类型的转换。使用类似的Linux安装,您几乎不需要一个准确的软件包列表(可通过Yum或RPM轻松获得),配置目录(例如/etc)和您的数据分区。如果您还没有kickstart配置系统,则可以利用该/root/anaconda-ks.cfg文件来了解G7系统的构建方式。

根据您提到的特定RHEL版本来回答有关仅移动磁盘的问题,这是绝对可能的。您可以移动磁盘/存储盒,并且HP Smart Array元数据在系统中的P410和P420控制器之间是兼容的。但是,如果没有先完全更新新系统中驱动器和组件的固件,我将不会这样做。


谢谢大家,在这个线程中有一些非常好的评论。我要回到PM,并请求更大的更改窗口。
user1174838

1

如果您以前的操作系统版本能够处理新的硬件(主要是RAID控制器),则可以尝试CloneZilla

要检查是否可以从一种硬件转移到另一种硬件,请使用dd将所有数据从旧服务器传递到新服务器。

使用实时发行版(例如SystemRescueCD)引导新服务器,并配置IP地址和dd命令,如下所示:

nc -l 8000 | dd of=/dev/sda

在当前服务器上执行

dd if=/dev/sda | nc ${newserverip} 8000

这会将服务器的/ dev / sda原始副本复制到新服务器/ dev / sda。这样,您可以在不停机的情况下执行测试,而原始服务器的风险几乎为零。


2
如果您让运行在旧服务器上的进程写入旧磁盘上的文件(尤其是数据库服务器等),则很有可能会导致文件系统损坏(已复制),文件(已复制)中的数据也会损坏。除非将原始磁盘卸载或以只读方式装载,否则切勿dd。
Guntram Blohm

@GuntramBlohm我知道,这只是检查您是否能够将旧服务器克隆到新服务器,而没有donwtime。测试之后,您可以克隆服务器,当然可以将其关闭或停止关键服务。
alphamikevictor 2015年

CloneZilla和相关技术将花费超过30分钟的时间才能在系统之间复制数据。
user1174838

0

项目经理拒绝了我要求更大的中断时间范围的请求。

问题中概述的拟议程序在测试中效果很好。停机时间不到20分钟。我使用hpacucli实用程序来监视G7和Gen8的进度,这非常有用。

我还没有对此感到愤怒,但是如上所述,这在从BL460G7到BL460 Gen8的RHEL 5.10的测试中表现良好。

我没有更新固件。

G7中最初的RAID1重新同步花费了一个多小时。Gen8中的重新同步花费了不到50分钟的时间。这让我很担心,但是我找不到任何问题。

再次感谢所有有用的评论和建议。

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.