Как стать автором
Обновить

Комментарии 2

А для чего на практике может пригодиться это решение?

Допустим, мне нужно запустить несколько приложений-шедулеров отказоустойчиво, чтобы суммарно они выполняли свою работу ровно раз в день, вне зависимости от того, сколько их запущено и упал ли кто-то. Может ли etcd-await-election закрыть эту потребность? Или он для чего-то другого?

Да, примерно для такого кейса и создавалось.

Например у вас есть три машины, и на них равёрнут etcd кластер.
Тогда вы можете описать systemd unit, который будет запускать произвольный процесс с помощью etcd-await-election.

Если вы запустите три таких процесса в рамках одного lock name, только один из них возьмёт lease и будет выполняться, оставльные будут ждать смерти первого.

Как только первый умрёт, лок возьмёт кто-то другой и запустит ваш процесс уже на новой ноде.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий