我想将图像服务功能从主服务器中分离出来。我们有近 50 万张图片 - 其中任何一张都可以随时访问。我一直在研究使用连接到 iSCSI SAN 的 W2k8 集群,想知道是否有更好的方法来提供冗余方式来提供大量图像?有人建议,放弃 SAN 并在每个文件服务器上保留图片副本会是更好的解决方案 - 是这样吗?操作系统必须基于 Windows。
谢谢,
安德鲁
答案1
SAN 意味着您可以从给定数量的磁盘获得更多的存储空间。
例如,如果您在 10 台主机上有 2 个 1G 磁盘镜像,则意味着您可以存储大约 1G 的图像。
另一方面,如果您在镜像 SAN 中拥有相同的 20 个 1G 磁盘,则您可以存储大约 10G 的图像。
甚至更好的是 - 您将这 20 个磁盘放在两个 SAN 机柜中,并在 2 个站点上进行镜像,例如站点 A 中有 10 个磁盘,站点 B 中有 10 个磁盘,并且 A 和 B 是镜像,那么您仍然可以获得 10G 的存储空间,但可以提高数据的弹性。
即站点 A 可以关闭并且您仍然可以从站点 B 提供数据。(实际上您可能有 9G,即 9 个活动磁盘并且在每个 SAN 机箱中都有一个热备用磁盘)。
如果您还将服务器分散到每个站点 5 台,那么您还将提高整个站点的弹性。如果站点 A 出现故障,您将失去 5 台服务器,但其他 5 台服务器仍将提供服务,并且您仍将能够访问所有数据。
您还无需将 10 台服务器上的数据与确定的映像源同步。根据您计划的备份方式,使用 SAN 进行备份可能也更容易,因为您只需要进行一次数据备份。
我认为丢失 SAN 的唯一原因是你负担不起它和/或你的数据需求很小而且你预计它们不会大幅增长。
您拥有的数据越多,使用 SAN 方法节省的费用就越多,因为 SAN 机箱上悬挂的托盘/磁盘越多,每 G 的成本就越便宜。
如果您使用 iSCSI,请确保您拥有专用的 VLAN 并且最好为您的 iSCSI 网络配备专用的交换机。
答案2
答案3
您可能会发现分布式文件存储是冗余存储大量文件的更好方法。这些方法通常涉及用于存储和访问文件的特殊 API,而不是使用标准文件操作。然后存储系统负责冗余存储您的文件。典型的例子是 Amazon S3,但这可能不是您的理想解决方案。有许多产品可供使用。我没有使用任何 Windows 产品,但您可以看看 Facebook 的 haystack,它可能是用 Java 编写的,因此可以在 Windows 上运行。Livejournal 的 MogileFS 是另一个例子,但它在 Perl 中运行,上次我查看时,有一个单点故障。我相信您可以轻松找到更多类似的产品。
答案4
在我们的案例中,我们直接从 SAN 共享文件。我们的 NetApp 存储阵列是一个 3020 集群,它还充当 CIFS 文件服务器。文件直接存储在 SAN 上并共享给客户端。不确定您的项目是否需要这样的解决方案,但具有 CIFS 共享的 SAN 对我们来说是一个很大的优势。