我计划使用 Amazon S3 来存储我们的常规 SQL 备份。我想知道是否建议在本地创建备份后上传备份或直接在 S3 上创建备份。我认为在发生勒索软件感染的情况下,上传文件可能比将 S3 存储桶映射到服务器(例如使用 Tntdrive)更安全,但我想知道您对这个主题的建议。
问候。
答案1
如果您担心病毒或勒索软件,我不会将驱动器直接映射到 S3,即使存储桶版本可以防止损坏。如果您的备份软件可以使用 API 直接在 S3 中创建文件,那么可以这样做。如果不能,那么您可能必须在本地创建文件,然后上传。
创建一个具有上传到一个存储桶的权限的 IAM 用户相当容易,无需删除或其他访问权限。您可以使用商业软件或 AWS 命令行工具。如果有帮助的话,我可以分享 IAM 策略和脚本。
答案2
我们正在使用 VEEAM 来实现此目的,如下所述http://veeam.com/blog/leverage-vtl-on-amazon-aws-object-storage-s3-glacier.html使用 StarWind VTL for AWShttp://www.starwindsoftware.com/starwind-cloud-vtl-for-veeam。
此设置利用 S3 和 Glacier 的智能保留策略,您可以精确配置备份在本地保留的时间,并指定备份进入 Glacier 保险库的时间。
显然,您可以使用任何支持虚拟磁带的备份软件。VTL 格式听起来可能很奇怪,但它实际上有两个好处。虚拟磁带作为对象,与基于对象的云存储配合得很好。而且它不会受到勒索软件的攻击(最近的 Petya.A 瘟疫证明了这一点)。
答案3
如果您自己在 EC2 上运行 dB 服务器,为什么不直接使用 Amazon 一致性快照工具对转储 dB 的磁盘驱动器进行快照呢?它使用的空间与差异相同,并且磁盘级别没有任何 xen 虚拟化之外的病毒路径。
答案4
我认为将 SQL 备份直接上传到 S3 没有任何问题。如果你能做到这一点,为什么不呢?无论是通过 AWS CLI 还是第三方备份应用程序。
另外,我猜你已经将 EBS 卷附加到你的 EC2 实例。为了增加你的数据库的 IOPS。不是吗?如果是这样,你可以创建卷的快照。它将存储在 S3 中并且本质上是增量的。
至于双重持久性 - 使用 AWS S3 跨区域复制功能。
希望它能帮助您做出决定。