NFS 迁移自动化(CentOS 5)

NFS 迁移自动化(CentOS 5)

我需要一些帮助来完成即将到来的迁移。存储团队已经实施了一个新的 netapp 堆栈。一旦我有了经过测试的脚本,我就需要在两个环境中迁移大约 400 台服务器。

每台服务器都有一个指向旧存储堆栈的当前 nfs 挂载。所有这些当前挂载都有不同的名称。

前任:/mnt/existing_mount

我需要挂载一个新的 NFS 共享,rsync 内容,并保留共享的原始名称。

这是我思考的过程:

  1. 停止写入/mnt/existing_mount(这可以通过 netapp 管理员禁用写入来完成)
  2. /mnt/existing_mount名称拉入变量
  3. 将新的 nfs 卷挂载到/mnt/new_mount
  4. rsync 所有文件到/mnt/new_mount(保留本地权限)
  5. 卸载/mnt/existing_mount
  6. /mnt/new_mount根据变量重命名

我这样做有效吗?有谁知道已经可以做到这一点的 ansible 剧本或脚本吗?

答案1

我们最近不得不对 Netapp 上的 NFS 共享进行类似操作。我们正在淘汰 Netapp 并转向 Nimble Storage。您的流程与我们所做的非常相似,只有一些例外。这是我们使用的高级流程。

  1. 使用 fstab 文件中的临时路径将新的 NFS 安装到服务器
  2. 使用 rsync 将现有文件从旧 NFS 复制到新 NFS
  3. 更新 fstab 文件并更改挂载点,以便旧 NFS 指向临时位置,新 NFS 指向与旧 NFS 曾经使用的名称相同的名称
  4. 防止写入旧 NFS
  5. 使用 rsync 将所有文件从旧 NFS 复制到新 NFS,以捕获第一次复制过程中发生的任何更改

我们用它迁移客户电子邮件的邮件存储。此过程允许我们在系统运行时移动邮件,当我们在更改 NFS 共享的挂载点名称并重新同步最后的更改后重新挂载 NFS 共享时,仅会出现 5 分钟的短暂服务中断。

相关内容