LINUX.ORG.RU
решено ФорумAdmin

etcd восстановление упавшей ноды

 


0

1

Добрый день, коллеги.

Есть, точнее был кластер etcd из 3х нод. На одной из нод был удален каталог /var/lib/etcd. Пусть это будет нода 3.

Не спрашивайте как так получилось. Долгая история.

Как вернуть данный сервер с etcd в существующий кластер etcd?

Я удалил данного мембера из кластера, так что кластер etcd состоит всего из двух нод.

Как я понимаю: нужно как-то поднять etcd на ноде 3, включить ее в существующий кластер etcdctl member add …

Но как поднять etcd на на этой 3й ноде? etcd не желает запускаться.


Ответ на: комментарий от MagicMirror

Сообщения его читать пробовал?

Куча невнятного хлама.

Тем не менее я придумал таки способ восстановления. Немного варварский, но рабочий.

Если вдруг кому понадобится.

На проблемной машине (пусть она будет под кодовым номером 3)

systemctl stop etcd
rm -fr /var/lib/etcd/*

Идем на машину с живым кластером etcd

etcdctl member list
# ищем проблемную машину. Нас интересует первый столбик с ее id
# пусть он будет 7179c117b761b05
etcdctl member remove 7179c117b761b05
# удалили проблемную машину
# теперь нужно ее добавить снова
# sic! etcd на проблемной машине остановлен!
etcdctl member add hostname --peer-urls=http://ip-address:2380
# hostname = имя машины в кластере etcd
# ip-address = ip проблемной машины
# Ну и порт поменять если он другой

Теперь возвращаемся на проблемную машину и заускаем etcd

systemctl start etcd

Должно все пройти без ашыпок

Возможно способ варварский и не оптимальный, но он был выработан в условиях жесткого fuckup.

Если кто знает способ лучше, то прошу меня поправить.

UPD: подразумевается, что у нас есть рабочий конфиг на проблемной машине, поврежден/удален /var/lib/etcd/*

HighMan
() автор топика
Последнее исправление: HighMan (всего исправлений: 2)
Ответ на: комментарий от HighMan

Куча невнятного хлама.

Логи у всей этой смузихлёбской параши отвратительные, согласен. Но причина там есть.

я придумал

Разве это не буквально то, что написано по ссылке?

MagicMirror ★★
()
Ответ на: комментарий от MagicMirror

Разве это не буквально то, что написано по ссылке?

Вы не поверите, но я туда заходил до того как написал данный пост.

Посмотрел, кровь брызнула из глаз и я закрыл это упопище.

Дальше я уже изъёбретал самостоятельно.

На мой взляд, мой рецепт более удобоварим и применим.

HighMan
() автор топика
Последнее исправление: HighMan (всего исправлений: 1)
Ответ на: комментарий от MagicMirror

Разве это не буквально то, что написано по ссылке?

На самом деле у меня проблемная машина разворачивалась из backup и в /var/lib/etcd/ находиося каталог с зазванием кластера, соответственно и данные в нем были.

Однако etcd категорически отказался запускаться. Сейчас уже точно не вспомню, но он там что-то загонял мол id отличаются или еще что-то.

Почему из нормального backup этот злосраный etcd не стартанул?

HighMan
() автор топика