使用Marathon约束的问题

时间:2015-06-30 09:15:19

标签: constraints mesos mesosphere marathon

我正在运行一个mesos + marathon集群,到目前为止一切正常。但我无法弄清楚如何在马拉松中使用约束。

我用属性

标记了我的mesos奴隶
$ cat /etc/mesos-slave/attributes/category
SERVICE

对于我的容器的马拉松描述我添加了

"constraints": [["category", "CLUSTER", "SERVICE"]]

但是当我部署我的容器时,我只得到“INFO没有匹配的提议”,我无法弄清楚我做错了什么。

Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: [2015-06-30 08:08:48,812] INFO No matching offer for <CONTAINER> (need cpus=0.1, mem=3072.0, disk=0.0,
ports=List(0)) : id {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   value: "20150616-090516-2130907308-5050-1304-O1291851"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: framework_id {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   value: "20150330-112621-2130907308-5050-25763-0000"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: slave_id {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   value: "20150616-090516-2130907308-5050-1304-S49"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: hostname: "<HOSTNAME>"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: resources {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   name: "cpus"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   type: SCALAR
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   scalar {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:     value: 0.3999999999999999
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   role: "*"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: resources {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   name: "mem"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   type: SCALAR
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   scalar {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:     value: 4911.0
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   role: "*"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: resources {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   name: "disk"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   type: SCALAR
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   scalar {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:     value: 14896.0
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   role: "*"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: resources {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   name: "ports"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   type: RANGES
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   ranges {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:     range {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:       begin: 31003
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:       end: 32000
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:     }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   role: "*"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: attributes {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   name: "category"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   type: TEXT
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   text {
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:     value: "SERVICE"
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:   }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]: }
Jun 30 08:08:48 ip-172-16-3-95 marathon[13100]:  (mesosphere.mesos.TaskBuilder:47)    

我有什么遗失的吗?

1 个答案:

答案 0 :(得分:1)

从日志中看,您的任务看起来需要mem = 3072.0,但仅提供1903.0。即使没有约束,您也应该看到相同的错误。要么减少对任务的内存要求,要么增加节点上Mesos / Marathon可用的内存。