标签: snapshot

为什么 OpenStack 区分图像和快照?

通常,https : //serverfault.com/a/268727/126950

  • 快照 = 准确捕获卷在特定时刻的样子,包括它的所有数据。
  • 图像 = 系统的总快照(不保存用户数据)

但是,http : //docs.openstack.org/folsom/openstack-ops/content/snapsnots.html

在 OpenStack 中,实例快照是一个映像。直接上传到glance 的图像与通过快照创建的图像之间的唯一区别在于,通过快照创建的图像在glance 数据库中具有附加属性。

那么为什么 OpenStack 将图像与快照区分开来呢?

snapshot openstack

11
推荐指数
1
解决办法
1万
查看次数

NetApp 快照可以用作备份吗?

我们的商店非常依赖 NetApp Volume Snapshots 进行备份。我们对一些数据使用传统的基于代理的磁带备份,但总的来说,我们大多数系统都依赖于快照。此外,我们没有严格的变更控制政策或任何集中的配置管理,因此所有我们的服务器,无论其服务提供的数据是否备份,都需要从裸机(并且没有任何真正的文档)重建。自然地,这使得快照对于管理来说是一个非常有吸引力的提议,因为我们可以只恢复整个服务器、用户数据和包括的配置。我们使用 NetApp 的虚拟存储控制台为我们基于 NFS 的 VMware 数据存储创建快照,并使用 NetApp 的 SnapDrive 为直接呈现给来宾的原始设备映射(物理)LUN 制作快照。我们将关键快照异地快照镜像到另一个 Filer。当然,我们会定期测试我们的恢复过程。

我不禁对我们对备份快照的依赖感到不舒服。对我而言,对于被视为足够作为备份策略的技术,它需要满足以下标准:

  • 备份需要是原子的。也就是说,备份不能依靠其他任何东西来恢复。
  • 备份需要与它作为备份的系统分离(带外)。
  • 备份需要复制或传输到远程站点(异地)


NetApp 快照

据我了解,NetApp 快照在写入时重定向 (RoW) 方法下工作。在WAFL文件格式使用一组指针(元数据)指出实际引用存储在以往任何时候这可能是每个块。要制作快照,系统只需复制卷的元数据并将其存储在该卷的保留空间中。任何写入(创建/更改/删除)都被重定向到新块。这应该是使 NetApp 的 WAFL 如此出色的特殊调味料,因为您不必进行读取,然后将旧数据写入保留空间,然后将新数据写入旧数据,例如 Copy-On-Write 快照。


我完全承认我可能不完全理解 NetApp 卷快照的工作原理,但如果我的理解或多或少正确,NetApp 快照无法满足我的备份标准。

  • 它们不是原子的。“快照”实际上只是一组指向原始数据的指针。如果原始数据不再存在,元数据将毫无用处。
  • 快照不与系统分离。如果有人删除了错误的卷,我就会丢失快照。如果 NetApp Filer 爆炸成很小的小猫,我就会失去备份。我可以使用 SnapMirror 将我的快照移动到另一个 Filer,但同样,它只是移动元数据而不是实际块。如果我丢失了原始卷,我看不出复制到另一个 Filer 的快照将如何提供帮助。



有人能解释一下 NetApp 快照如何被视为备份吗?我正在寻找好的主观答案,所以请用事实、参考和经验来支持你的立场。如果我对底层技术的理解不正确,请解释在哪里以及为什么会改变我的结论。如果您的商店依赖 NetApp Snapshots 作为备份,请提供足够的上下文信息,以便人们了解您必须满足什么样的恢复策略。

backup storage netapp snapshot

11
推荐指数
2
解决办法
2万
查看次数

如何热备份/快照 ext4 分区(在没有 LVM 的情况下)?

我目前的任务是将现有服务器提升到(至少更高)专业标准——尽可能减少对最终用户的干扰。为了进行适当的回滚,我需要备份现有服务器的根 fs,它当前是主磁盘分区内的 ext4 - 而不是 LVM,这将使整个显示仅仅是手指练习。我想避免关闭服务器。

在这种情况下甚至可能吗?

backup ext4 snapshot

9
推荐指数
1
解决办法
2万
查看次数

备份运行 KVM qcow2 VPS

我想要一种在运行时备份 qcow2 文件的 KVM VPS 的强大方法。找了半天,发现可以用rsync做实时备份。我对 rsync 使用了以下命令:

rsync -avh /vms/base.qcow2 /backup/backup.qcow2
Run Code Online (Sandbox Code Playgroud)

它工作正常。但是我担心如果在由于写入和删除操作(例如安装新软件或更新)而更改 VPS 时进行备份,则可能会损坏备份 qcow2 映像。

因此,从实时 VPS 的快照中进行备份似乎是更有趣的选择。

我使用以下命令来备份正在运行的 VPS:

1.创建快照:

qemu-img create -f qcow2 -b base.qcow2 snapshot.qcow2
Run Code Online (Sandbox Code Playgroud)

2.以原始图像格式(.img)转换快照:

qemu-img convert -O raw snapshot.qcow2 /backup/backup.img
Run Code Online (Sandbox Code Playgroud)

要恢复 VPS:

3.在qcow2图像中转换原始图像:

qemu-img convert -O qcow2 /backup/backup.img base.qcow2
Run Code Online (Sandbox Code Playgroud)

然后我们就可以通过virsh create base.xml命令启动VPS了。

即使这种方法也很有效,但我仍然不确定这是否是备份运行 VPS 的正确方法。我在这里这里找到了关于 qemu-img 命令的很好的文档。但是他们没有提到将实时 VPS 的快照转换为原始图像的任何内容。

哪种方式更适合VPS实时备份?在原始图像中转换快照安全吗?

如果我能得到关于快照和基本文件在某些​​条件下如何表现的详细文档,那将非常有帮助。

也许我们也可以将基本 qcow2 映像转换为原始备份文件,而不是转换快照。所以命令流将是:
1. 创建快照
2. 将基本 qcow2 转换为备份原始映像
3. 将快照更改提交到基本映像
4. 删除快照

我试过了,它在 …

backup vps snapshot qemu kvm-virtualization

9
推荐指数
1
解决办法
2万
查看次数

如何在不删除快照的情况下还原 LVM 快照?

重现步骤

  • 使用 lvm 创建卷的快照

lvcreate -L 200GB -s -n snapshotname /dev/hostname-vg/root

  • 对文件系统进行更改

  • 将文件系统恢复到创建快照时的状态

lvconvert --merge /dev/hsotname-vg/snapshottorestore

  • 重新启动(因为我正在恢复根卷)
  • 显示快照列表 lvs -a

期望的行为

原始快照仍然存在

实际行为

系统恢复到快照时,原始快照被删除

是否有替代方法lvconvert,或者我可以添加一个标志,以便不删除原始快照?

用例

  • 我拍摄了一个工作系统的快照
  • 我做出改变
  • 更改失败
  • 我恢复到工作系统
  • 我想以略有不同的方式重试更改,保留再次恢复到工作系统的可能性

使用lvconvert上面的命令,我需要记住在恢复后再次手动重新创建相同的快照。由于这是一个包含许多更改的大卷,因此我需要等待半小时才能制作快照。(您无法拍摄仍在合并的卷的快照)

卷立即恢复。所以我有一个可以立即使用的干净系统,但我不想在没有备份的情况下继续。所以我需要折腾半个小时,然后备份,然后进行更改。

backup lvm snapshot

9
推荐指数
1
解决办法
1249
查看次数

备份 VirtualBox VM

有没有人有一个很好的完整策略来备份在 VirtualBox 下运行的一堆虚拟机?

我打算在单个硬件平台上运行少量虚拟机,并在每晚将它们备份到外部磁盘,这些磁盘将在每个周末轮流离开现场。

(只是澄清一下,如果可以避免的话,我不打算在此过程中关闭机器)

我是否认为我可以编写一个脚本,每天晚上创建一个快照,将“主”磁盘映像复制到外部媒体,然后再次删除快照?

更好的想法非常感谢!

backup disaster-recovery virtual-machines virtualbox snapshot

8
推荐指数
1
解决办法
2087
查看次数

哪些文件系统为用户提供快照功能来恢复数据?

我正在开展一个向青年教授 Linux 的项目。知道他们倾向于删除或损坏其主目录中的项目,我们正在寻找一个好的快照选项。我们将无法访问主要存储供应商提供的精美工具,并希望在文件系统级别找到解决方案。

我读了很多关于 btrfs 的书,但经验很少。我对 LVM 有一些经验,但我不熟悉它的快照功能。文件系统或其他文件系统是否可以选择按需或计划创建快照?然后让这些快照在没有 root 的情况下始终可用,就像每个主文件夹中的 .snapshot 文件夹一样?

理想情况下,该解决方案允许用户在 24 到 48 小时内按需自行恢复备份。我们将为系统进行另一个备份过程和更多的全局备份。但我们不希望这个过程被那些只是犯“错误”的学生使用。

filesystems lvm snapshot rsnapshot btrfs

8
推荐指数
2
解决办法
1万
查看次数

vmware esxi 5,无法创建快照并合并失败,如何删除旧日志或合并重做日志?

我有一个 VM 似乎工作正常,但是当 VMWare DR(或我)尝试创建快照时,它失败了,当我查看 VM 的摘要页面时,它在顶部有一个警告,显示磁盘需要统一。

所以我转到 VM 的快照管理器并选择合并(在快照管理器中,顺便说一下实际上没有列出任何快照)。如果失败并出现此错误:

此虚拟机在其快照树的单个分支中有 255 个或更多重做日志。已达到支持的最大限制,将不允许创建新快照。要创建新快照,请删除旧快照或合并重做日志。

如果我浏览数据存储(它有足够的可用空间,2 TB,而这个 vm 低于 40gb),在 vm 文件夹中,我确实看到了一堆文件,编号一直到 0255:

  • myvm-000255-ctk.vmdk
  • myvm-000255-delta.vmdk
  • myvm-000255.vmdk

我该如何清理这一切?是否有 SSH 命令行命令,或者我可以安全地删除某些文件吗?谢谢!

snapshot vmware-esxi vmware-vcenter

8
推荐指数
1
解决办法
2万
查看次数

从 EBS 快照启动新 EC2 实例的正确过程

我有一个运行 Ubuntu 12.04 32 位 AMI 的 EC2 实例(在用于启动新实例的经典向导的第一页中可用)。根设备是 EBS 卷。然后我按照以下步骤操作:

  • 停止服务器
  • 右键单击 Volumes 选项卡中的 volume -> Create Snapshot
  • 右键单击快照选项卡中的快照 -> 从此快照创建图像
  • 在 AMI 选项卡中,我右键单击新创建的 AMI 并选择“Launch Instance”

在向导的第三步中,我注意到“存储设备配置”这一行

Root    /dev/sda1   snap-xxxxxx 8GiB    standard    true
Run Code Online (Sandbox Code Playgroud)

这似乎向我表明它正在使用快照作为新实例的根卷(实际上,它是唯一的卷)。

然后我启动实例。但是,它在“初始化”步骤期间未能通过“状态检查”。如果我右键单击实例并“获取系统日志”,这是日志的尾部:

Using IPI No-Shortcut mode
XENBUS: Timeout connecting to devices!
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.

EXT3-fs: sda1: couldn't mount because of unsupported optional features (240).
EXT2-fs: sda1: couldn't mount because of unsupported optional features (244).
Kernel panic - …
Run Code Online (Sandbox Code Playgroud)

snapshot amazon-ec2

8
推荐指数
1
解决办法
5148
查看次数

如何删除 btrfs 快照?

我是 btrfs 的新手,我正在尝试删除我几个月前制作的一些快照。它们占用了大约 20GB 的空间,我需要收回这些空间。

这似乎列出了快照:

? sudo btrfs subvolume list /
ID 257 gen 82021 top level 5 path @
ID 258 gen 82021 top level 5 path @home
ID 263 gen 81983 top level 5 path @home/.ecryptfs/mlissner/.Private/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxu4dgX.2jUELJL22wpV94oU--/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxHunTlBS-30iHyukjeY9-EE--/root_post_install_2014-04-29
ID 364 gen 81986 top level 5 path @home/.ecryptfs/mlissner/.Private/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxu4dgX.2jUELJL22wpV94oU--/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxHunTlBS-30iHyukjeY9-EE--/root_post_install_2014-05-04
ID 376 gen 81996 top level 5 path @home/.ecryptfs/mlissner/.Private/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxu4dgX.2jUELJL22wpV94oU--/ECRYPTFS_FNEK_ENCRYPTED.FWa8iOdaTukmNEROkGj4b5OZHZ0bKOqrvAQxHunTlBS-30iHyukjeY9-EE--/root_post_install_2014-05-14
Run Code Online (Sandbox Code Playgroud)

如何删除它们?当我尝试显而易见的事情时,我收到一个错误:

? sudo btrfs subvolume delete root_post_install_2014-04-29
Delete subvolume '/home/mlissner/.btrfs/snapshots/root_post_install_2014-04-29'
ERROR: cannot delete '/home/mlissner/.btrfs/snapshots/root_post_install_2014-04-29' - Device or resource busy
Run Code Online (Sandbox Code Playgroud)

我感觉有点迷茫,谷歌搜索没有发现真正的帮助。如果这会有所帮助,我很高兴发布更多信息,但就目前而言,我对如何进行感到困惑。

snapshot btrfs

8
推荐指数
2
解决办法
2万
查看次数