我们正在计划将整个平台迁移到 AWS。目前的想法是,我们将在 EC2 上托管我们的实例并使用 FSx 作为文件系统。但是,我找不到任何事物关于是否建议为 SQL Server 所需的每个驱动器使用单独的 FSx 实例。将数据文件、日志文件和 tempdb 拆分到不同的驱动器上以尽量减少争用是一种很好的做法,但我真的不清楚如何使用 FSx 最好地管理这种拆分。我已经看到了为 tempdb 推荐的 EC2 实例存储,但我应该使用与“中央”FSx 实例不同的共享,还是每个驱动器最好使用一个离散实例。
对此的扩展是,所有 EC2 实例是否可以使用单个大型 FSx 实例,还是最好为每个 EC2 使用一个离散的 FSx?我预计所有这些都会因成本问题而崩溃,但我正在努力理解它。
答案1
您是否考虑过使用 AWS RDS 而不是 EC2 / FSx?在云中,通常最好在可用的地方使用服务,除非它们无法满足您的需求。
我认为您不需要为了提高性能而跨 FSx 文件系统进行拆分,因为 FSx 是一种托管服务,而不是设备/磁盘。您可以将所有内容放在一个 FSx 文件系统上,然后调高或调低性能。但是我认为其他因素可能比这更重要,如下所述。
看着FSx 定价您单独支付存储和“吞吐量”费用。因此,我可能会将每个数据库放在单独的 FSx 实例上,以减少对一个文件系统的依赖,这可能会提高可用性。这也意味着非生产数据库可以放在性能较低的 FSx 实例上。
另一种观点是,如果您的数据库并不总是同时处于繁忙状态,那么拥有一个大型驱动器并在它们之间共享“吞吐量容量”可能会更便宜。然而,对我来说,这会以一种增加停机可能性的方式将事情推到一起。例如,人为错误删除文件共享可能会导致多个数据库而不是一个数据库被破坏。除非价格至关重要且可靠性要求低,否则我可能不会这样做。
如果您想组合存储,您可以相当轻松地对其进行原型设计。