Car*_*nos 34 postgresql distributed-computing mesos mesosphere
最近我发现了像Apache Mesos这样的东西.
在所有演示和示例中,这一切看起来都令人惊讶.我可以很容易想象一个人如何竞选无国籍的工作 - 这自然适合整个想法.
Bot如何处理有状态的长期工作?
说,我有一个由N台机器组成的集群(通过Marathon安排).我想在那里运行一个postgresql服务器.
就是这样 - 起初我甚至不希望它具有高可用性,而只是一个托管postgresql服务器的单个作业(实际上是Dockerized).
1-如何组织它?将服务器约束到特定的群集节点?使用一些分布式FS?
2- DRBD,MooseFS,GlusterFS,NFS,CephFS,其中一个与Mesos和postgres等服务配合良好?(我在这里想到Mesos /马拉松可能会重新定位服务,如果下降)
3-请说明我的方法在哲学方面是否错误(数据服务器的DFS和Mesos顶部的postgres等服务器的某种切换)
问题很大程度上是从Apache Mesos的持久存储中复制的,zerkms在Programmers Stack Exchange上提出了这个问题.
Ada*_*dam 43
好问题.以下是Mesos中即将推出的一些功能,可以改进对有状态服务的支持,以及相应的当前解决方法.
--resources
标志在从属启动时静态保留框架的资源.至于您的具体用例和问题:
1a)如何组织它?您可以使用Marathon执行此操作,也许可以为您的有状态服务创建单独的Marathon实例,以便您可以为"有状态"角色创建静态预留,这样只有有状态的Marathon才能保证这些资源.
1b)将服务器约束到特定的群集节点?您可以在Marathon中轻松完成此操作,将应用程序限制为特定主机名,或具有特定属性值的任何节点(例如NFS_Access = true).请参阅Marathon Constraints.如果您只想在特定的节点集上运行任务,则只需要在这些节点上创建静态预留.如果您需要这些节点的可发现性,您应该查看Mesos-DNS和/或Marathon的HAProxy集成.
1c)使用一些分布式FS?许多分布式文件系统提供的数据复制将保证您的数据能够承受任何单个节点的故障.尽管以网络和本地磁盘之间的延迟差异为代价,坚持使用DFS也可以在您可以安排任务的位置提供更大的灵活性.Mesos内置支持从HDFS uris获取二进制文件,许多客户使用HDFS将执行程序二进制文件,配置文件和输入数据传递给运行其任务的从属服务器.
2)DRBD,MooseFS,GlusterFS,NFS,CephFS?我听说客户使用CephFS,HDFS和MapRFS与Mesos.NFS看起来也很容易.只要您的任务知道如何从放置它的任何节点访问它,Mesos与您使用的内容无关紧要.
希望有所帮助!
归档时间: |
|
查看次数: |
8163 次 |
最近记录: |