Tag:

如何将Docker卷用作Mesos / Marathon的持久卷?

我正在CoreOS上运行Mesos和Ceph集群,并使用一个Ceph RBD Docker卷插件 ,但是对于Mesos / Marathon如何使用这个插件 ,我还不太清楚…为单个Docker容器创build/使用rbd卷虽然工作正常。 我不能find任何文章/博客文章/无论是通过马拉松处理这些卷的自动创build(以及在“Mesos”从属之间的“任务迁移”,重新映射)这些卷。 对我来说尤为重要的是如何在每个实例需要拥有自己的卷时运行有状态服务的多个实例(想象一下Mesos / Marathon上的MongoDB副本集 )。 我知道Mesos持续卷文档 ,我也看到了马拉松的问题 ,但我仍然很困惑如何或何时这将是可用的… 在这里还有其他的问题: 如何使用卷 – 从马拉松 在Mesos上的Docker:卷被放置在哪个节点上? Docker卷插件马拉松 不幸的是,这并不能真正解决这个问题。 使用RexRay的EMC代码示例也仅涵盖一个实例示例,我还可以轻松处理上面提到的volume插件: { "id": "nginx", "container": { "docker": { "image": "million12/nginx", "network": "BRIDGE", "portMappings": [{ "containerPort": 80, "hostPort": 0, "protocol": "tcp" }], "parameters": [{ "key": "volume-driver", "value": "rbd" }, { "key": "volume", "value": "nginx-data:/data/www" […]

马拉松 – 当返回码= 0时不要重新部署应用程序?

我们有一个在Docker容器中部署的spring引导应用程序,并使用mesosphere(marathon + mesos)进行pipe理。 春季启动应用程序旨在通过马拉松部署,一旦完成,它将退出代码= 0。 目前,每次启动应用程序终止,马拉松再次重新部署应用程序,我希望禁用。 是否有一个设置,我可以在应用程序的马拉松jsonconfiguration文件中设置,这将阻止马拉松重新部署应用程序,如果它不退出非零代码?

Docker应用程序部署在Marathon上挂起,在Mesos上失败

我尝试Dockerizing Zookeeper / Marathon / Mesos( 从 Dockerized Mesos集群部署Docker容器)(可能是愚蠢的)任务。 到目前为止,我在两个物理分离的节点上有一个工作的Mesos集群:一个节点同时运行一个Mesos 主站和一个从站 (容器Dockerfiles链接),第二个节点只运行一个从站。 他们似乎运作良好; 我能够通过Marathon(也是自己的容器,在主节点和从属节点上运行)提交非常简单的作业,并且成功完成。 但是,当我尝试通过Marathon API提交Docker容器时 ,它似乎挂起。 Marathon界面挂在“部署”上,即使放置15分钟后,也不会改变,停止,重新提交,然后再等待15分钟。 同时,任务仍然被提交给Mesos奴隶; Mesos UI正在向左和向右报告FAILED任务。 编辑1 每个执行者所产生的Sandbox日志也是完全空的。 编辑2 发现一些有趣的东西埋在奴隶日志中: 兴趣点: 所有已启用的容器(mesos)都不能为提供的TaskInfo / ExecutorInfo消息创build一个容器。 看起来集装箱船不能运行,而且从我所看到的情况来看,它甚至没有把docker作为集装箱船。 我在这里configuration了部署Docker作业。 如果Mesos从站本身就是Docker容器,这是否会改变? 我有点超出了我的元素,无法find任何引用沿这些线。 有什么想法发生了什么?

Chronos不运行工作

我已经设置了Mesos Cluster,包括Marathon和Chronos,每个服务都使用Docker镜像。 我使用的Docker镜像如下; ZooKeeper: jplock / zookeeper:3.4.5 Mesos Master: redjack / mesos-master:0.21.0 Mesos Slave: redjack / mesos-slave:0.21.0 马拉松:中间层/马拉松:v0.8.2-RC3 Chronos : tomaskral / chronos:2.3.0-mesos0.21.0 ZooKeeper运行在端口2181上,Mesos Master运行在5050上,Mesos Slave运行在5051上,马拉松运行在8088上,Chronos运行在8080上。 我想要做的是 在Marathon&Chronos上运行Docker容器。 Marathon成功运行Docker容器作为其应用程序。 但Chronos不运行任何工作。 即使Job不在Docker中。 Chronos工作的configuration我试图启动是; { "schedule": "R/2015-05-28T10:16:30Z/PT2M", "name": "simplejob", "cpus": "0.5", "mem": "512", "command": "while sleep 10; do date -u %T; done" } 乔布斯在Chronos上注册,但从未启动。 我运行Chronos容器的命令如下: docker run […]