У меня есть 3 главных узла мезо и 87 подчиненных узлов мезос. Все операционные системы узла - Ubuntu 14.04. На каждом подчиненном узле mesos я установил докер. У меня есть два разных сканера, каждый из которых встроен в контейнер докеров. Теперь я запускаю их через марафон.Как запустить несколько контейнеров докеров на одном подчиненном узле mesos?
На ведомом узле mesos я не нашел два контейнера-искателя, работающих на одном узле. каждый узел работает только с одним искателем.
Но я хочу, чтобы каждый узел одновременно запускал два контейнера-искателя. Как мне это сделать? (простите моего бедного английского грамматиста).
Следующий код - запуск марафона json.
{
"container": {
"type": "DOCKER",
"docker": {
"image": "slyang/final_crawlerv19"
}
},
"id": "crawler-part",
"instances": "30",
"cpus": "0.5",
"mem": "150",
"uris": [],
"constraints": [["hostname", "UNIQUE"]],
"cmd": "ip=`wget http://ip.lustfield.net/ -O - -q`;echo $ip; sleep 20; echo $ip > /app/hostip;python user_info_fetcher.py part"
}
Я смущен. Почему вы используете имя хоста UNIQUE? Почему вы показываете только одну конфигурацию работы марафона? Трудно отладить это без дополнительной информации. – seanmcl
@seanmcl Я новичок в марафоне. Я думаю ** поле ограничений ** вызвало проблему, но я не знаю, как ее установить. Другая конфигурация задания марафона одинакова, за исключением поля ** id ** и ** image **. –
Ограничение hostname = UNIQUE будет указывать Marathon на запуск только одного экземпляра этого приложения для имени хоста. Предполагая, что у каждого ведомого есть другое имя хоста, и у вас есть два разных определения приложений Marathon, это ограничение не должно препятствовать размещению контейнера App1 с контейнером App2. – Adam