我有一个 RHEL5 Amazon 云实例,我需要将其映像到另一个实例,以便为即将进行的修补设置测试环境。要映像的服务器是生产服务器。
该服务器有一个磁盘(xvda1,是的,实际磁盘是 xvda1,而不是应该的 xvda)。
我本想使用 dd 并连接到 gzip 来制作磁盘映像。但后来我意识到递归会有问题。由于 dd 正在从写入 gzip 的磁盘读取数据,因此映像将包含损坏的 gzip 文件副本,这意味着由于 gzip 文件的部分副本,映像本身占用的空间比它所需的空间要多,因此需要在机器之间传输更多时间。
说到重点,有哪些选项可以像 dd 一样将整个磁盘备份为单个块转储,但这不包括在读取的同一磁盘上写入的 gzip 文件?
是的,我可以 rsync 单个文件,但就这个问题而言,我们假设这不是一个选项。假设要求 Amazon 为实例添加第二个磁盘不是一个选项,远程文件系统(如 NFS/SSHFS/etc)也不是一个选项,LVM 也不是一个选项。
答案1
您想要为正在备份的磁盘创建块级备份...
没有网络存储,也没有额外的本地存储。
这当然行不通,你为什么要违背逻辑呢?
答案2
在控制台中右键单击实例,“创建 AMI”。如果您无法忍受在拍摄快照时停机几分钟,请选中“不重启”框。
如果是 Amazon 实例,则始终可以选择添加磁盘。创建 EBS 实例并将其附加。
答案3
答案是为云实例订购额外的内存,然后制作一个 ramdisk。然后将本地磁盘添加到 ramdisk,并对映像执行所需的操作以将其从服务器中取出。