2015-06-10 1 views
1

Мой сценарий заключается в том, что фреймворк работает на сервере A. У него есть исполнитель на сервере B, выполняющий задачу (длинный веб-сервис с длительным временем инициализации). Сервер A выключается. Затем среда перезапускается где-то еще в кластере.Как восстановить исполнитель Mesos после сбоя системы Mesos?

В настоящее время после перезагрузки новая структура регистрирует нового исполнителя, который запускает новую задачу. Через некоторое время мастер Mesos деактивирует старую и не более длительную структуру, которая, в свою очередь, убивает старого, но все еще запущенного исполнителя и его задачу.

Я бы хотел, чтобы новый фреймворк перерегистрировал старого исполнителя, а не зарегистрировал новый. Это возможно?

ответ

1

Это на форуме Mesos отвечает на мой вопрос:

http://www.mail-archive.com/user%40mesos.apache.org/msg00069.html

включено здесь для справки:

(1) Одно частности, я нашел неожиданное в том, что исполнители являются выключение, если планировщик выключен. Есть ли способ удержания исполнителей/задач при запуске планировщика? Я бы предположил, что когда планировщик приходит назад, он может каким-то образом восстановить состояние и продолжать работу без , прерывая выполняемые задачи. Является ли это прецедентом, для которого предназначен мезо?

Вы можете использовать FrameworkInfo.failover_timeout сказать Mesos, как долго ждать рамок перерегистрироваться, прежде чем он очищает исполнитель и задачи в выше рамок,.

Кроме того, обратите внимание, что для этого необходимо, чтобы каркас сохранял свою структуру , когда он сначала регистрируется с помощью мастера. Когда возвращается резервная копия , ее необходимо повторно подключить, установив FrameworkInfo.framework_id = persisted id.