【发布时间】:2014-06-23 17:22:57
【问题描述】:
我只是在学习 Apache Mesos。我想运行由 Mesos 管理的与数据库集群 (Cassandra) 集成的 Web 应用程序集群 (Scala Play)。
当 Web 应用程序出现故障或数据库出现故障时,我的理解是 Mesos 会自动重启服务。但问题是服务可能会在集群中的不同节点上重新启动。
如果数据库出现故障,并且 Mesos 在集群中的另一个节点上重新启动数据库,那么 Web 应用程序如何知道在哪里连接到新的数据库实例?
使用 Mesos 运行带有数据库的 Web 应用程序集群的优缺点是什么?
【问题讨论】:
-
Typesafe 写了关于他们使用 Mesos + Marathon + HAProxy 部署的文章,它解决了问题或重新启动失败的应用程序(由 Marathon 处理)并允许服务找到彼此(由 HAProxy 处理):typesafe.com/blog/play-framework-grid-deployment-with-mesos
-
在此评论中,除了 Cassandra (github.com/mesosphere/cassandra-mesos) 之外,Mesos 上的存储还没有得到很好的支持。您暂时应该在 Mesos 集群之外运行您的数据库。
标签: playframework-2.0 cassandra mesos