2015-06-30 3 views
1

Я запускаю кластер мезос + марафон, и до сих пор все работает нормально. Но я не могу понять, как использовать ограничения в марафоне.Проблемы с использованием марафонских ограничений

Я пометил мои 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

Из журналов, похоже, что ваша задача нужна mem = 3072.0, но предлагается только 1903.0. Вы должны увидеть ту же ошибку, даже без ограничений. Либо уменьшите требования к памяти вашей задачи, либо увеличьте объем памяти, доступный для Mesos/Marathon на ваших узлах.

+0

Спасибо Адаму за ответ. Я взял неправильный журнал, и я изменил его на более понятный. Но вы были правы в журнале, который я опубликовал ранее, причина была в ОЗУ. Но рядом с этим я пропустил что-то или сделал что-то не так? – hammi

+0

Если вы не видите, что «Предложение не удовлетворяло ограничениям для приложения ... Конфликтные ограничения: ...» предупреждение журнала, то это не проблема ограничения соответствия. Единственное, что я могу придумать, это то, что вы запрашиваете 'ports = List (0)', который не находится в диапазоне 31003-32000. Однако указание порта 0 должно требовать любой доступный порт и сопоставить его с $ PORT0. Есть ли более релевантная информация в предыдущих строках журнала? – Adam

+0

Jun 30 08:08:48 ip-172-16-3-95 марафон [13100]: [2015-06-30 08: 08: 48,812] Предложение WARN не удовлетворяло ограничениям для приложения []. Jun 30 08:08:48 ip-172-16-3-95 марафон [13100]: Конфликтующие ограничения: [поле: "категория" 30 июн 08:08:48 ip-172-16-3-95 марафон [13100]: оператор: CLUSTER июн 30 08:08:48 ip-172-16-3-95 марафон [13100]: значение: «СЕРВИС» 30 июн 08:08:48 ip-172-16-3- 95 марафон [13100]:] (mesosphere.mesos.TaskBuilder: 190) Я получаю оба сообщения, которые вы предложили! Есть ли другая информация, которую я могу вам предоставить? – hammi

Смежные вопросы