发布于 2017-02-05 22:15:15
在AWS和有据可查上运行LSF是可能的。基本上,您可以建立一个带有EFS后端的普通EC2集群,并使用LFS来使用您的数据并生成您的输出。这是否绝对是最好的架构是值得商榷的: AWS提供了一个完整的工具箱,它可以完成LSF所做的工作,更加深入地集成在一起,并且每美元可能具有更好的性能。但是,这将需要重新考虑一个不是建立在LSF基础上的解决方案,因此ECS+EFS的边际成本可能是值得的。
将您的数据放到集群上应该是简单的,并且可以合理地抵抗rsync的失败。尽可能地将数据流打包到您的侧,一次向集群发送最小的可行单元:这将使工作尽可能快地进行,并将有助于使传输更能抵御生产者端的中断。
如果您使用LSF作为作业运行程序,则向其提交作业的方式是使用标准LSF文件。单个EC2可以充当“网关”,接收作业文件并等待数据流可用。或者,您可以建立一个AWS (负载均衡器)作为前端网关,它将把管理工作分配给负载均衡器中的所有机器。或者您可以使用SQS将作业定义保持在停滞状态,直到流到达,这将保护作业定义不会丢失任何特定的EC2实例。
另一方面,您可以使用类似于亚马逊动态的东西来管理传入的数据流并在其上运行并行作业。这样就消除了对LFS的需求,取而代之的是AWS工具箱: Kinesis (Firehoss+ Streams) + EMR (弹性地图减少)。但是,这可能并不可取:您必须熟悉这些工具,并且可能只节省几千个。
总之,运行EC2+EFS+ELB的LFS运行得很好。但是,我至少可以想到另外两种使用Amazon原生工具来做类似事情的方法。它们各有优缺点,需要加以考虑。既然你有预算,而且你想要最低限度的系统管理,我建议咨询专业设计师,为系统创建一个最适合你需求的蓝图。然后你就可以建立和管理它,或者让专业人士去做。
https://stackoverflow.com/questions/42035201
复制相似问题