我们要在Amazon EC2上使用ActiveMQ master/slave configuration based on a shared file system-这是最终目标。操作系统应该是Ubuntu 12.04,但这不会有太大的不同。

为什么不基于RDS进行主/从配置?我们已经尝试过了,设置起来很容易(包括多可用区)。但是,它是relatively slow,故障转移大约需要三分钟-因此我们想找到其他东西。

我们应该使用哪个共享文件系统?我们进行了一些研究,得出以下结论(可能是错误的,请纠正我):


GlusterFS是often suggested,应为supporting multi-AZs fine
NFSv4应该可以正常工作(虽然据说NFSv3是corrupt the file system),但是我在EC2上没有看到太多对其的引用(而是:asked for NFS,得到使用GlusterFS的建议)。有什么特别的原因吗?
Ubuntu's Ceph还不稳定。
Hadoop分布式文件系统(HDFS)对我来说听起来像是过大的杀伤力,而NameNode将再次成为单点故障。


那么是GlusterFS吗?我们几乎找不到任何成功的故事。而是在错误跟踪器中提供劝阻性条目,而没有任何真实的解释:"I would not recommend using GlusterFS with master/slave shared file system with more than probably 15 enqueued/dequeued messages per second."有人知道为什么还是有人成功地在GlusterFS上使用ActiveMQ并显示了很多消息吗?

EBS或临时存储?由于GlusterFS应该复制所有数据,因此我们可以使用临时存储,或者使用EBS有任何优势(IMHO快照与我们的方案无关)。

我们可能会尝试使用GlusterFS,但根据墨菲定律,我们会在最糟糕的时刻遇到问题。因此,我们宁愿通过(希望)对此获得更多意见来避免这种情况。提前致谢!

PS:为什么我没有在ServerFault上发布它?这将是一个更好的选择,但是关于该主题的帖子增加了10倍,所以我坚持了。

最佳答案

只是一个主意...。但是使用activemq 5.7(或者可能已经是5.6),您可以拥有可插入的储物柜(http://activemq.apache.org/pluggable-storage-lockers.html)。因此,可以选择将文件系统用作存储,将RDS用作锁定机制。注意我以前从未尝试过。

07-24 21:24