了解DigitalOcean Droplet备份

DigitalOcean提供内置于Droplet界面低廉且易于使用的备份。使你的Droplet该服务可以定期提供自动,基于快照的备份,让您轻松恢复或旋启动新的实例过的...

介绍

DigitalOcean提供内置于Droplet界面中的经济实惠且易于使用的备份。在Droplet上启用此服务可以定期提供自动的系统级备份,使您可以轻松地从创建的映像中还原或启动新实例。 在本文中,我们将讨论DigitalOcean备份如何工作以及它们适合的用例,以及一些相关的替代方案。本文旨在为您提供所需的信息,以决定此解决方案是否适合您。

DigitalOcean备份如何工作?

DigitalOcean使用基于快照的备份系统,将基于Droplet的当前状态创建时间点图像。此过程在预定的调度窗口内自动发生,并且在Droplet运行时在后台完成。这提供了服务器的系统级备份,而无需关闭电源。 发生备份时,您的Droplet上会发生以下进程:
  1. 生成系统的快照,创建崩溃一致的时间点映像。
  2. 快照在磁盘后备份。
  3. 备份完成后,快照将被删除。
崩溃一致性备份使得系统可以捕获所有的数据在磁盘上,正是因为它是在单个时间点。这意味着数据将以一致的状态备份。 这被称为崩溃一致性备份,因为它保存在快照发生时提交到磁盘的每一块数据。保存的数据与系统在该精确点崩溃时必须可用的数据一致,并且必须在引导时恢复。 :DigitalOceanDroplet可用的快照功能是不一样的这篇文章中所引用的快照。 我们在这里讨论的快照是用作备份目标的系统的临时映像。 控制面板中的快照通过手动过程启动,以创建可用于启动新Droplet的永久映像。 要了解更多有关的区别, 请点击此链接

当DigitalOcean备份可能不是最佳解决方案

DigitalOcean备份适用于许多情况,但不是每个用例都很好地服务于备份系统的设计。 用于创建时间点数据集的快照使用写时复制机制。写时拷贝允许即时快照,这使得它们成为数据一致性的良好选择。实际创建将要备份的快照几乎没有开销。 然而,写入时复制实现都需要上拍摄快照 ,直到备份过程完成后出现的新的写入性能的下降。这是因为,对于每个新写入,使用写时复制的系统必须读取原始数据,将其写入新位置,然后将新更改写入原始数据位置。这可能会显着影响繁忙的I / O绑定工作负载的性能。在备份操作后自动删除快照时,性能影响会消失。 这尤其关注数据库。大多数数据库操作严重依赖磁盘I / O,这可能导致应用程序或备份进程崩溃并可能失败。除了性能影响,驻留在内存或缓存中的尚未刷新到磁盘的任何操作都将丢失。崩溃一致性备份将始终保存磁盘上的内容,但永远不会保存内存或高速缓存中的内容。 如果您的服务器正在运行繁忙的数据库或任何其他在磁盘I / O很重的应用程序,DigitalOcean备份可能不适合您。请查看底部有关如何备份这些类型的应用程序和工作负载的部分。

如何启用DigitalOcean备份

如果DigitalOcean备份系统非常适合您的服务器功能,则设置备份非常简单。 DigitalOcean备份是必须在Droplet创建过程中选择的一项功能: 数字海洋备份 此功能可以启用或在任何时候禁用通过备份的Droplet的页面的控制面板中的侧边栏链接。 启用备份 DigitalOcean备份的成本是您的Droplet的每月成本的20%。因此,对于$ 5 Droplet,DigitalOcean备份将花费1美元,使您的每月总额为6美元。由于所需的磁盘空间量,此百分比成本在Droplet大小上保持一致。 当在Droplet上启用备份时,您可以通过单击Droplet控制面板中的“备份”选项卡来查看当前备份计划。将在指定的时间范围内尝试备份,以便您预计对服务的任何影响。 目前,在8小时的窗口内每周进行一次备份。

DigitalOcean Backup for I/O重工作负载的替代方案

如果您正在运行数据库或产生高I / O负载的其他应用程序,则通常选择应用程序级备份方法是更理想的选择。 有一些专门用于处理数据库的事务性质的备份解决方案。通常,如果您正在运行接受写入的数据库,则应该使用专门设计为与这些系统配合使用的备份解决方案。 如果您使用MySQL或MariaDB作为数据库解决方案,则有多个选项,具体取决于您的配置。看看我们的文章备份MySQL数据库 ,以了解你的选择。 另一种选择是利用的Percona XtraBackup实用程序执行活动备份。 的PostgreSQL包含类似效用可使用。 这些可以与复制相结合 ,以无主系统脱机创建备份。 对于其他类型的数据库,请阅读项目的文档,以了解以一致的方式备份数据的建议方法。 如果DigitalOcean备份不适合您的服务器,由于高I / O,非数据库工作负载,还有一些其他解决方案可供您探索。一种方法是复制使用类似技术文件系统GlusterFS 。这将允许您在两个服务器之间同步文件,以便您可以保留一个在线客户端,而您关闭复制和使用常规方法备份其他服务器。 有些选项进行手动DigitalOcean快照或执行使用类似工具的文件级备份tar和rsync 。 有许多选项可用,这取决于您的特定需求。

结论

现在,我们希望您能够清楚地了解DigitalOcean备份功能。备份是一种很好的方法,可以自动确保您有稳定的副本,以便在您的服务器出现问题时重新启动。虽然DigitalOcean备份不适合每个Droplet工作负载,但它们在创建过程中很容易启用,并且可以让您放心数据。