AWS 备份查询 (EC2/EBS)

Posted

技术标签:

【中文标题】AWS 备份查询 (EC2/EBS)【英文标题】:AWS Backup queries (EC2/EBS) 【发布时间】:2021-04-15 05:18:39 【问题描述】:

我正在使用 Ubuntu 20.04 运行一个 EC2 实例来托管 4 个小型个人网站(1 个 .NET Core 和 3 个 WordPress),我想确保定期备份计划,主要是因为我对 Linux 和设置还很陌生这台服务器花了很长时间,我害怕更新软件包等,以防万一它破坏了一切,我必须重新开始!我最终打算让 WordPress 网站为 mysql 数据库使用单独的 RDS 实例并创建每日备份,但目前它们在同一台服务器上。

我昨晚(星期五)为我的 EC2 实例和附加的 EBS 卷设置了每个星期六早上 5 点运行的自动备份计划,但我有几个问题希望大家能够帮助解决:

    如果我要备份我的 EC2 实例,我真的需要备份附加的 EBS,还是包括在内?

    EBS 备份耗时 15 分钟,但 EC2 备份耗时 5 多个小时 - 这正常吗? EBS卷是20gb,两个备份都说备份大小是20gb。

    实际为 EC2 备份了什么?文档意味着“配置等”,但肯定不会花费任何时间,而且此备份的大小可以忽略不计?

    文档建议备份是增量的,因此对于 EBS 卷,第一个备份将为 20gb,之后进行的任何备份都只是更改数据的大小。但是,如果我将备份安排在 30 天后过期,如果原来的 20GB 完整备份已经过期,我需要恢复上周的增量备份会怎样?

    我正在做/计划做的备份是否正确/成本有效,或者有更好的解决方案吗?

感谢任何帮助。

【问题讨论】:

【参考方案1】:

如果我要备份我的 EC2 实例,我真的需要备份附加的 EBS,还是包括在内?

根据this post,EBS 似乎包括在内:

当您备份 EC2 实例时,AWS Backup 将保护附加到该实例的所有 EBS 卷

EBS 备份耗时 15 分钟,但 EC2 备份耗时 5 多个小时 - 这正常吗? EBS卷是20gb,两个备份都说备份大小是20gb。

我不希望会是这样。您是否在具有非常小的 EBS 的非常小的实例上对此进行了测试?这将使您了解备份需要多长时间。

您是安排在备份窗口中执行此操作还是立即执行此操作?可能有像 RDS 那样的备份期,然后就完成了?

EC2 实际备份了什么?文档意味着“配置等”,但肯定不会花费任何时间,而且这个备份的大小可以忽略不计?

见第一点。

文档建议备份是增量的,因此对于 EBS 卷,第一个备份将是 20gb,之后进行的任何备份都只是更改数据的大小。但是,如果我将备份安排在 30 天后过期,如果原来的 20GB 完整备份已经过期,我需要恢复上周的增量备份会怎样?

我希望所需的增量数据会持续存在。值得对此进行测试以进行双重检查,但我不希望 AWS 存储某种类型的部分备份。您的数据应该可以恢复到某个时间点。

我正在做/计划做的备份是否正确/具有成本效益,还是有更好的解决方案?

我们需要更多地了解您的用例才能回答这个问题,但我可以做出一些假设,即可能存在更具成本效益的解决方案。 Wordpress 通常只有很少的文件和文件夹需要备份。即使您包含主题、插件和配置,wordpress 安装也很小。假设您只想存储该数据,您可能只需将您的 wordpress 安装压缩并将其存储在 EC2 中 30 天即可节省资金。

为了减少备份的大小,您还可以将一些内容(例如图像)存储在 AWS S3 中,并使用云端来提供它们。您可能会发现,如果您的网站上有很多图片,这可能比 EBS 便宜。你需要做数学。

但是,您曾说过您对更新软件包等感到紧张,如果是这种情况,那么您可能更愿意用软件包和数据等备份整个实例。

另一个您可能希望考虑但比您现在所做的更先进的选择可能是使用 ECS 并部署 docker 映像来运行站点实例,但是在没有支持的情况下您可能会遇到这种情况。

肯定有其他方法可以实现备份,但如果您对 linux 以及安装和运行 wordpress 不太熟悉,那么我建议您现在坚持使用 ECS + EBS 备份或使用 wordpress 的托管服务。 com 而不是托管您自己的实例。

【讨论】:

以上是关于AWS 备份查询 (EC2/EBS)的主要内容,如果未能解决你的问题,请参考以下文章

AMI EC2 EBS 备份 - 成本预测

使用 AWS Cookbook InvalidInstanceIDNotFound 的 Chef EC2 EBS 卷

将 Amazon EC2 EBS Ubuntu 迁移到 Microsoft Azure

AWS RDS备份是增量备份还是差异备份?

AWS RDS (PostgreSQL) 自动备份

sh 用于备份和从AWS S3删除旧备份的简单脚本shell