服务器迁移:最有效的方法

我一直负责在服务器之间迁移我们的一个站点(两个不同的主机)。 这两个环境都是linux

该网站streamvideo,所以服务器目前充满了媒体文件(图像和video)。 我的第一个想法是,我们会使用rsycnc来传输一切,但我希望尽可能高效,尽可能快地做所有事情。 我想你们中的一些人可能对如何加快这个过程有所build议,或者如果rsync甚至是正确的select。

提前致谢。 道歉我有限的系统pipe理员的知识…

编辑:我们正在运行一个基本的LAMP堆栈(centos)和移动到机架空间上的红帽子)。

“将应用程序从一台服务器迁移到另一台服务器”涉及很多 – 我们无法全面回答所有用例。 可以很全面地回答你的设置,但是如果你有系统地进行:

  1. 列出您的应用程序所需的一切。
    • networking服务器?
    • 数据库服务器
    • 邮件服务器?
    • 脚本语言(PHP,Ruby / Rails,Perl,其他)?
    • 辅助程序(ImageMagick等)?
  2. 列出重要的configuration项目。
    • IP地址,networking掩码,网关等
    • DNS服务器
    • 特定于应用程序的项目(临时目录等)
  3. 从(1)和(2)中列出清单并写出移民大纲。
    这应该包括安装和configuration您需要的任何软件/软件包,转储和加载数据库等。
  4. testing迁移
    复制一切,就像服务器要上线一样,但不要让它活着。 当你完成并testing一切时,将它贴在一个隔离的networking上。
    如果你的应用程序有一个标准的testing程序,你应该在迁移的服务器上运行它。
  5. 如果一切都不完美,转到(3),更新(1)和(2),然后修改你的计划。
  6. 当testing迁移完成时,请执行实际迁移。
    根据迁移过程的复杂程度,这可能意味着删除并重新加载数据库,或者您可能需要擦拭机器,并从头开始。

完成后,您将在特定的环境中为您的特定应用程序提供一个清单。 该清单可能会随着您的应用程序的开发而发展,但如果您需要再次迁移,这个清单可能会在3 – 5年内成为一个起点。

其他要考虑的事情包括实现configurationpipe理阿拉木偶或厨师。
(如果你想成为“系统pipe理员”,你应该考虑他们,否则将他们传递给负责人/团队。)

那么,你有服务器configuration和服务器内容来处理,并且相同的技术对于两者都是不太可能的。

你有数据库吗? 如果是这样,那也需要移动。 Rsync非常适合静态内容。 只需运行一次即可获取移动的数据列表,然后每隔几个小时说一次,以保持同步,直到切换。 确保在迁移之前禁用rsync cron!

关于configuration,我们不知道你在运行什么,所以不能给出build议。