Пакеты системы Opendaylight OSGI отключались автоматически, когда узел помещался в карантин

Мы используем азотную версию ODL и пробуем двухузловой кластер. В ходе нашего тестирования мы наблюдали следующее

  1. Разделите мозг между узлами.
  2. Актер Akka на каждом узле поместил в карантин своего пира.
  3. После помещения в карантин системный пакет был остановлен автоматически, а все зависимые пакеты также были остановлены и перезапущены.

Мы заметили, что следующий код срабатывает, когда узлы помещаются в карантин. Обратитесь к apply() в Исходный код ActorSystemProvider

Не могли бы вы ответить на следующие вопросы

  1. Причина закрытия системных пакетов, а также почему мы делаем это на обоих узлах.

bundleContext.getBundle(0).stop();

  1. Можно ли отключить выключение и перезапуск системных пакетов.

person satlearner    schedule 06.06.2018    source источник


Ответы (1)


Когда akka помещает узел в карантин, он не пустит его обратно в кластер до тех пор, пока система акторов не будет перезапущена. По сути, это означает перезапуск ODL, поэтому мы перезапускаем контейнер karaf. Это странно, но, к сожалению, именно так устроена и работает akka, поэтому другого выбора нет (по крайней мере, я не знаю).

person Tom Pantelis    schedule 06.06.2018
comment
Спасибо, Том Пантелис, за быстрые ответы. - person satlearner; 07.06.2018
comment
@satlearner, вы должны отметить как ответивший и проголосовать, если этот ответ работает для вас. - person Brady; 07.06.2018