我正在设置一个 16TB 存储服务器(最终容量将翻倍)来存储媒体。该服务器需要由托管我们公司应用程序的两个 Windows Server 2008 客户端读取。我听说过 iSCSI,但从我读到的内容看来,iScsi 将目标服务器视为直接连接的硬盘驱动器,因此很难与两个客户端共享,因为它们会随机写入和读取会弄乱的数据事情起来了。
那么,我可以使用什么软件/硬件组合来获得 Windows 端的高读取速度?现在我正在考虑使用 TOE 和 NFS 的 2 个双千兆以太网网卡,但我不想购买网卡,直到我确定它足够快。
谢谢
开始:确定数据的价格。每天丢失数据或失去访问权限的成本。
用法:确定在高峰时段您将收到多少个单独的读写访问。还要确定读取和写入的数据速率。
网络:有了这么多的数据,你应该看看 10Gb 以太网。计算一下将数据复制到那里需要多长时间。
Raid:在这种规模的 Raid 中,自动重建不是一个明智的想法。重建需要很长时间,而且在额外的光盘上发现缺陷的机会也足够大,因此最好避免自动进行。去Raid 10,或者至少Raid 6。
共享:如果您确实需要备份该东西,最好镜像存储。通过实时复制查看某些内容。NAS 或 SAN 可能是最好的选择。或者你考虑集群你的 MS 服务器。
经验:建立一个模型。您正在计划一个复杂的设置。试着打破它。如果计划不周,您会惊讶地发现将其离线是多么容易。
好的,让我直截了当。您在服务器上有直接连接的存储,但您想与其他两台 Windows 2008 服务器共享其上的文件? 为什么不使用 Samba 并完成它呢? Samba 基本上将您的 Solaris 服务器变成了域成员文件服务器。只需安装 Samba,设置文件共享,然后让 Windows 2008 服务器从那里访问文件。
如果您想做某种共享集群解决方案,则需要使用集群文件系统。是的,iSCSI 旨在提供块级共享。但是,对于集群文件系统,您可以使用 iSCSI 之类的东西作为其下方的层来共享物理磁盘空间。
我想问题是您需要澄清 2008 服务器将使用 Solaris 安装的目的。这至少可以让您了解所涉及的共享类型。
这不是少量的存储。您说的是至少 10 个磁盘(2 TB 驱动器,RAID 5 + 1 个热备用),可能还有 20 个,甚至更多。你说它会在盒子的整个生命周期内翻倍。我不会说您找不到一个服务器来容纳所有这些磁盘,但是您将只有很少的选择,并且无论如何最终可能会使用几个外部驱动器托盘。为此推出您自己的单服务器解决方案当然是可能的,但您必须问问自己,您是否愿意接受所有这些数据挂在具有有限冗余和最少支持的东西上。
您应该查看入门级 iSCSI SAN\NAS 存储系统的定价,以了解它们的成本以及它们是否能够满足您的需求。至少你会得到一个关于收缩包装商业解决方案成本的大致数字。
您是正确的,iSCSI 不允许您在 Active\Active 意义上在两台 Windows 服务器之间共享,但是您可以使用 iSCSI 将存储呈现给其中一台服务器并让该服务器共享卷,以便第二台服务器可以使用 SMB 访问它们。您也可以选择直接使用 SMB 进行共享 - 几乎所有 NAS 盒也会这样做 - 并以这种方式连接两台服务器。
就您的 nic 选择而言,我的回答是,如果数据可用性很重要,那么无论如何您都应该在存储服务器上考虑至少两个,也许更多的存储量。每个目标服务器至少有两个,并混合使用冗余交换机,以确保无论性能要求如何,都不会出现单点故障。
如果您发现您需要比单个 GigE 链接提供的性能更高的性能(即带宽超过大约 80-100 兆字节/秒或随机 IOPS(4K 块)>~8000),请务必检查您选择的任何解决方案是否确实支持某些机制使用 Windows 2008 和您选择的网络硬件也支持的每个连接(多路径/通道绑定/链路聚合等)的多个 nic。
只是一件小事:如果您追求速度和可用性,请忘记 RAID 5。使用镜像,达到 16TB 并不是那么昂贵。
您将获得扩展读取(高达两倍的吞吐量),并且当磁盘发生故障时,只需使用成本最低的操作重建部分(无需计算特殊校验和)。
此外,在最坏情况下,多达一半的驱动器可能会死机™。
否则,我一直在家里试验大约 360GB 的镜像 SATA、Intel 和 OS X 客户端上的 Solaris 和 Gbit 以太网。所有正常硬件,无服务器组件;设置巨型帧并使用 SMB 达到 58MB/s,非常接近集成 iMac 磁盘。
NFS 应该更快,但不是在每个平台上,OSX 上的那个不是很好,不知道 Windows。
此外,为了进行调整,您必须知道要选择正确的驱动器(少量较大或较大数量的小型驱动器)、缓冲区、数据包大小......