在管道站点上推动大量带宽的理想硬件设置是什么?
我们拥有不断扩展的云存储,用户可以在其中上传电影,然后我们拥有这些网络交付机器,它们将 FLV 文件缓存在其本地硬盘上并将它们交付给用户。每台缓存机器可以提供 1200 mb/s,如果它有 SAS 8 硬盘驱动器。这样一台 8x160gb 的缓存机器每月花费 550 美元——因此每台机器在任何给定时间只能缓存 160GB。
如果我们想缓存超过 160gb,我们需要添加另一台机器..另外 $550/月..等等。这是非常不经济的,所以我想知道我们这里是否有专家可以找出更好的设置。
我一直在研究“gluster FS”,但我不确定这个东西是否可以推动很多带宽。
任何想法都受到高度赞赏。
谢谢!
一般来说,我会质疑在这里使用复制是否明智。我会做的是.... ;)
将文件转储到一个中央 NAS / SAN(可能会根据需要进行复制)。您可能会使用一些 SUperMicro 存储箱 - 24 x 2.5" 驱动器在 2 个机架单元中。是的,hsted / 租用的服务器不适合,您需要自己托管。特别需要 = 特殊硬件 = 不是大型主机提供的东西.
建立一个数据库,将文件动态分配到流服务器组中,以允许这些服务器进行一些缓存。这些与指向组中所有服务器的单独名称服务器条目相同,只是确保不是每个服务器都必须缓存每个文件。
创建负责流式传输文件组的服务器组(如前所述)
让操作系统文件缓存整理其余部分。说真的;)在这样的机器上放入最大内存并完成它。
当你在这的时候,谁有运行 SAS 驱动器的超级聪明的想法……你检查过 oyu 需要它们吗?提示 - 放入 SATA 驱动器,基本上... WD Velociraptors。每个驱动器 300gb,我敢打赌比你的 SAS 驱动器便宜很多。几乎一样快,运行 10.000 rpm。我在数据库上使用它们并从中获得非常经济的 IO。而且我认为我的 IO 要求比你的高(因为视频往往比我使用的数据大)。
基本上,您进入了中央存储系统有意义的范围,并且您尝试使用 - 抱歉 - 平庸的存储项目 88 个驱动器对于一台服务器来说不再令人印象深刻)。结果是大量的硬件成本;)现在您可以选择特殊情况(看看我提供的超微报价 - 他们还有一个可容纳 48 个光盘的大型 3.5 英寸光盘笼)或特殊硬件(顺便说一下,这将花费甚至更多)。一个不错的设置,前端机器没有大磁盘,中央存储使用适当的高端 RAID 控制器,大量磁盘和一个或几个 10gb 适配器应该是好的。
忘记任何关于集群文件系统的事情——你想要一些可以计划的东西。问题是:您需要在系统内规划您的带宽。除非您愿意将 10gb 交换机放入所有设备中,否则您不能有太多的交叉流量。即便如此,交叉交通也可能会杀死你。
智能缓存!
在您的情况下,网络带宽和 i/o 将是您当前的瓶颈。
如果您可以运行 zfs 之类的东西,那么您可以使用大型 SSD 作为物理驱动程序和内存之间的动态缓存。
Zfs 将管理此缓存。如果您需要 SSD 获得更好的性能,只需将它们条带化以获得更高的性能。
如果您没有 zfs,请考虑识别集群上的“热”文件,并将它们移动到本地 SSD 或专用 ram 磁盘。这样,您可以使用慢速 san 来服务器文件,并且流行文件将从快速 SSD/RAM 中提供。将 SSD 视为扩展缓存。它不如 ram 快,但比磁盘快得多。(也降低了能量!)。
最大化您拥有的服务器上的物理内存,这将改善缓存。如果你走 PC 路线,我见过一些容量大于 128GB 的主板!:-)。
如果您继续增长,那么您很快就会超出数据中心的 IP 传输能力。如果您的用户在地理上分散,那么请考虑让基础设施更靠近用户。即欧洲用户被定向到欧洲的数据中心。
还可以考虑使用优化的 Web 服务器来流式传输文件,http://nginx.org/浮现在脑海中。您仍然可以保留现有的应用程序服务器,但引导用户使用专用的视频流服务器。
Memcache 很有趣,根据您的工作负载,这也会有所帮助。
随着您的成长,基础架构中会出现瓶颈,请确保您拥有良好的性能/错误/安全日志。如果知道您的基础设施在用户负载下做什么,您将能够更好地进行容量规划。在一段时间内对这些数据进行趋势分析,您将能够向管理层展示为什么需要新硬件 x 来解决瓶颈 y。
如果没有内部技能来做这一切,那么看看内容交付网络,他们的基础设施已经过调整来做到这一点。您只需付费使用它!
将服务器升级到多个 10Gbit 以太网后,您会发现遇到其他瓶颈,即机器的实际系统总线 :-)。
我想要第二个 ZFS 和一个 SSD 缓存驱动器 - 效果很好。也最大出内存。基于 OpenSolaris 的 ZFS 顺便说一句,FreeBSD 的实现并不可靠。
对不起,这不是你想要的答案。我是一个非常特别的 Video-over-IP 人,我已经建立了一些最大的 VoD 系统,而你现在所做的对我来说似乎是一种巨大的浪费,有很多我不知道的问题从哪里开始。
我的建议是你坐下来弄清楚你的客户在哪里,你想为他们提供什么水平的服务,你的资产数据集和营业额是多少,你将如何获得和交付你的目录,你将如何处理你正在做的事情的事务方面,然后才重新审视你的整个部署设计。
就像我说的,很抱歉消极,但我可以推荐的其他任何东西都只是一个非常小的粘贴膏药,用于更广泛的问题。