我们目前有一个色卡司N12000V,在RAID 10中有16TB(目前半满)。 从我在网上读到的,这个networking大约50MB / s。 由于连接的人太多,大多数人最多只能达到3MB / s。 (所有使用SMB,电脑都是不支持NFS的Win 7 Pro)。
将这3个相同的NAS盒子连续RSyncing,挂钩到一台Server 2008 R2服务器,让它处理3个使用DFS之间的负载均衡是否有效? 有更好的负载平衡解决scheme吗? 我正在尽我所能不要把这个问题变成“购物”问题。 如果我需要使它更具体,请让我知道。
我build议反对手动分布式文件系统安排与不同的人访问不同的驱动器的文件,因为当两个人在不同的地方修改相同的文件时,你会遇到重大的同步问题。
有一些分布式文件系统(和分布式块设备安排,你可以build立文件系统)在那里(请参阅https://stackoverflow.com/questions/269179/best-distributed-filesystem-for-commodity-linux-storage-farm对于开源解决scheme的指点)。 这些都是针对容错,大小可扩展性和远程访问性能的,但是如果您有多个本地节点,它们本质上也会提高多客户端访问的可伸缩性。 不幸的是,你不能在自己不以企业为目标的NAS盒子中使用这些盒子(至less不能和我见过的任何NAS盒子一起使用)。
networking接口或pipe理RAID的I / O控制器很可能会使用千兆networking适配器的速度限制在50到100Mb / s之间,但吞吐量的关键瓶颈可能是驱动器而不是驱动器其中之一。 由于有几个人正在从驱动器中取出数据,磁头将在各处跳动,从这里为客户端1获取一些数据,然后从客户端2获取一些数据,然后从客户端3获取数据,然后… ,然后回到服务于客户端2的请求,…,…,…并且在每次头移动期间,驱动器不能传送数据。 IO控制器可以使用一些技巧(每个驱动器的智能电梯algorithm(请参阅http://en.wikipedia.org/wiki/Elevator_algorithm ))减less这种影响,当请求的数据多于一个地点等等),但这些方法可以有多less帮助是有限度的。
如果NAS盒有自己的caching内存,而不是依靠驱动器来完成所有这些,你可能会发现它有一些选项来控制读头和读顺序,这可以通过进一步减less维护所需的头部移动量同一组并发请求(虽然要小心地彻底地testing任何更改,因为你可以让事情变得更糟,而不是更好,对于其他访问模式的最佳select对于其他访问模式可能是残酷的)。
另一个select是SSD,因为这样做会消除在随机或多址访问情况下大量延迟旋转金属驱动器的延迟。 虽然它可能会太昂贵,以新的固态硬盘技术来替代你所有的空间有中途select。 混合驱动器与内置的SSD存储块一起旋转,用作caching(并且是非易失性的,它们可以使用缓冲区写入操作以及快速读取)。 一些NAS设备内置了对使用SSD驱动器作为较大的传统驱动器的非易失性caching的支持,这消除了用混合动力replace所有驱动器的需要,并且可能更有效率,尽pipeIIRC这个function只是在目前更昂贵的盒子。
DFS仅提供一定程度的负载平衡。 它不考虑副本/会话长度所维护的客户端会话的数量,并使用DNS风格的循环法select。
NAS本身具有Link Aggregationfunction,支持负载平衡和故障切换 ,在尝试实现“本土化”负载平衡解决scheme之前,我一定会考虑这一点。