我的公司需要设置一个开发服务器,我们已经有 2 个生产 RHEL 6 服务器在 L4 交换机下工作。
设置开发服务器的解决方案之一是简单地从其中一台生产服务器复制所有文件并稍微调整一下。
我以前从未做过,但听起来像鬼成像……可以做到吗?是否推荐?会不会容易出错?
Dav*_*e M 17
为什么不将正在运行的系统转换为虚拟机?大多数虚拟机管理程序(如 VMware 或 Hyper-V)都有一个工具可以轻松地将正在运行的系统转换为虚拟机。
然后,在生产服务器上执行任何操作之前,您可以根据需要使用非生产系统。
感谢@WernerCD
可以做到吗?
肯定是的。我通过简单地打包文件tar并在目标服务器上再次提取它们来复制整个 Linux服务器。我记得的唯一警告是--numeric-owner在提取时必须记住使用。我不能说其他操作系统和其他工具,但我想它适用于所有主要操作系统。
应该做吗?
这个问题回答起来有点复杂。我不建议为了开发而简单地克隆生产系统。它很可能包含大量用户数据以及您不希望出现在开发系统中的关键材料。
但是,出于其他目的,克隆您的生产系统可能是一个好主意。
我建议创建生产系统克隆的方法是从备份中恢复。您可以通过从备份还原来避免对生产系统的性能影响,并且您可以测试还原过程,这是一件好事。
保持从备份中恢复的克隆与世界其他地方隔离很重要。由于它是从生产系统的备份中恢复的,因此它可能包含自动化作业,这些作业将与其他生产系统进行通信,并且具有这样做的凭据。
如果克隆要与真实的生产系统进行通信,则可能会造成很大的损害。
但是,如果您将其隔离开来,您就有机会测试恢复后的系统是否按预期工作。此外,这样一个恢复的系统可能是一个有用的环境,用于在新代码部署到生产之前对其进行最后一次测试。这可能是您在真实用户数据上测试代码的唯一机会,然后才能真正破坏生产系统。
小智 7
复制所有文件可以工作。这将取决于操作系统和什么样的复制方法。
一个普遍的问题是试图在系统运行时复制系统。通常至少有一些文件会被锁定,因此无法正确复制。在系统关闭时使用某种映像软件通常是最安全的(您提到了 Ghost 就是一个例子)
当然,这是可能的,因为使用非常规方式“安装”Linux 并不难。例如,您可以通过 SSH 使用 rsync 复制服务器。
/target./proc,/sys,交换)。/target/etc/fstab,尤其是当分区由 UUID 引用时。第 3 步可能包含多个 rsync 传递,可能由源机器上的 LVM 快照辅助,最后一次传递停止源机器上的所有服务以确保数据一致性。
仅仅因为你可以并不意味着你应该。我已推荐将上述过程作为进行数据中心迁移的一种方式。但是,您的用例完全不同。诉诸克隆突出了一些缺陷:
如果您盲目地克隆生产服务器,您将失去一个宝贵的机会来准确阐明其上运行的内容。