У меня есть небольшой кластер Mesos, и я использую Marathon для управления набором длительных сервисов с переменным количеством экземпляров каждый.Миграция приложений для марафона для изящного отключения mesos-slave
Я хотел бы иметь возможность запускать новые узлы или прерывать некоторые из них в соответствии с потребностями бизнеса. Однако при завершении узла, который я понял, существует потенциальная проблема: когда я закрываю ведомое устройство Mesos, бывает, что количество экземпляров некоторых сервисов временно падает ниже определенных minimumHealthCapacity
. Это может привести к некоторому простоям, если, например, остановленный компьютер запускает службу только с одним экземпляром.
Рассмотрим следующий упрощенный сценарий: узел 1 запускает службу A, узел 2 запускает службу B, а узел 3 выполняет службу C. minimumHealthCapacity
для всех служб - это 1. Я хочу завершить работу узла 1 и оставить только 2 и 3 работает. Я не хочу, чтобы время простоя на службе А. Примером предполагаемого поведения было бы масштабирование службы А до 2, а затем безопасно завершающий узел 1.
Что можно сделать, чтобы убедиться, что сервис не опускается ниже minimumHealthCapacity
?
В идеале, у меня был бы процесс обновления с обновленным обновлением для этого - замены запускаются на отдельных машинах, за которыми следует прекращение обслуживания в машине, которая должна быть отключена. Я хотел бы иметь как минимум автоматический процесс для этого, так что масштаб вниз - это простой скрипт. У меня нет требований к количеству времени, которое требуется для этого, т. Е. Я могу отключить ведомый Mesos только после того, как я уверен, что миграция марафона завершена и успешна.
В то же время, ваш лучший вариант - увеличить количество экземпляров ваших приложений на 1, дождаться, пока новый экземпляр станет здоровым, убейте узел, а затем уменьшите его на 1. – Adam
. Спасибо. для ответа я сделаю это и последую за обновлениями на Джире! Любая идея о том, как долго это будет продолжаться до тех пор, пока эта функция не будет реализована? –
Функция активно продолжается, но, вероятно, займет еще месяц или два, прежде чем все приземлится. Следите за этим билетом JIRA для получения дополнительной информации и, возможно, добровольцем по одной из подзадач, если хотите ускорить его. ;) – Adam