172 похожих чатов

@Aurpin @d60e87b4 чот вы меня прям смутили а алгоритма нахождения лидера,

кроме слова Raft я как-то в доке etcd не нашёл.

неучто оно не переживает падения одной ноды ?
то есть надо минимум 5 etcd нод ?

40 ответов

16 просмотров

я про etcd вообще молчал 🌚

переживает спокойно, минимум 3

Vasiliy-Romaneev Автор вопроса
Dmitry Sergeev 🇺🇦
переживает спокойно, минимум 3

да вот и у меня сносит крышу - рафт точно переживает падение одной ноды. а etcd вдруг нет. как так ?!) ок, всё, картинка мира вернулась на место, спасибо.

о как интересно

Vasiliy Romaneev
да вот и у меня сносит крышу - рафт точно пережива...

я не пытался сбить столку. Вопрос был про кубеспрей

Vasiliy Romaneev
да вот и у меня сносит крышу - рафт точно пережива...

в raft лидером становится тот кто получает большинство голосов. Когда их трех нод, падает одна, остаётся 2 голоса которых достаточно чтобы выбрать лидера. Откуда информация что минимум 5?

Dmitry Sergeev 🇺🇦
в raft лидером становится тот кто получает большин...

естественно это не однократно вижу на практике

Vasiliy-Romaneev Автор вопроса
Dmitry Sergeev 🇺🇦
в raft лидером становится тот кто получает большин...

я читаю прям первую статью по слову raft https://habr.com/ru/company/dododev/blog/469999/ что вызвало мои сомнения в способности 2х нод договориться. допустим случилось так, что одна нода вышла из строя и обе оставшихся ноды решили, что они лидеры и запустили выборы: начали рассылать RequestVote смогут они договориться или нет ? в условном vrrp(не raft) за это отвечает параметр priority - выиграет тот у кого он лучше. а тут как ? или мы полагаемся на то, что одновременных событий не бывает и скорее нода получит RequestVote от другой, чем сама объявит выборы ?

Vasiliy Romaneev
я читаю прям первую статью по слову raft https://h...

практика говорит об обратном. Две ноды из трех прекрасно договорятся. Две ноды из двух тоже. Одна нода из двух уже нет

Vasiliy-Romaneev Автор вопроса
Dmitry Sergeev 🇺🇦
практика говорит об обратном. Две ноды из трех пре...

ну я подозреваю, что у @alx при обновлении кластера случилось следующее - в результате обновления (а спрей делает параллельно задачки, сколько я помню), - ребутнулись сразу все ноды, - поэтому ноды не смогли договориться - отсюда кластер поехал "кукухой" я этот кейс пытаюсь разобрать на самом деле - что там могло происходить.

Vasiliy Romaneev
ну я подозреваю, что у @alx при обновлении кластер...

ничего. etcd не умеет в сплит брейн. Просто уйдёт в ro. Это всё надо смотреть, а твои выводы не основаны на фактах, ты не знаешь че там у него с кластером etcd

Vasiliy Romaneev
ну я подозреваю, что у @alx при обновлении кластер...

о там еще интереснее было, после того как я восстановил etcd, в следующем апгрейде кубеспрей обновляя мастер, почему то удалял контейнер со старым кубер(вроде контроллером) и не накатывал новый

Vasiliy-Romaneev Автор вопроса
alx
о там еще интереснее было, после того как я восста...

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

Vasiliy Romaneev
ну я в принципе не очень люблю спрей он слишком мн...

да я уже подхожу к тому что сделать kubernetes hardway, многие вещи в в нем излишни и скрыты под капотом

Vasiliy-Romaneev Автор вопроса
alx
да я уже подхожу к тому что сделать kubernetes har...

ну я себе напилил пяток ролей, которыми куб ставится там еще нет процедуры апгрейда, вопрос - хочу ли я апгрейд или нужно просто приложения перетащить.

Vasiliy-Romaneev Автор вопроса
alx
а ты использовал ipvs?

на прошлой работе использовал. Работает сейчас просто уехал на cillium кстати, судя по доке - calico тоже в ebpf умеет если утыкаешь в работу iptables - тут уж сам выбирай. как там флант говорил - мы посмотрели в сторону ebpf, как там в рантайме компилируются кусочки и в ядро засылаются и отказались - потому что отладить это будет адом" ))) но мне больше eBpf нравится всё равно.

Vasiliy Romaneev
ну я себе напилил пяток ролей, которыми куб ставит...

а пяток ролей ты как ставишь компоненты бинари или контейнеры?

Vasiliy-Romaneev Автор вопроса
alx
а пяток ролей ты как ставишь компоненты бинари ил...

ну я вообще ленивый - у меня они идут rpm сейчас от меня просят сделать бинарями я против, но сделаю, раз надо именно бинарями.

Vasiliy-Romaneev Автор вопроса
alx
Ага, спасибо ответы, это интересно)

ну надо понимать - rpm - это кублет бинарём и static-pod остальное.

Vasiliy-Romaneev Автор вопроса
Vasiliy Romaneev
ну надо понимать - rpm - это кублет бинарём и stat...

@d60e87b4 тут я соврал в rpm приходят kubelet, kubeadm, kubectl - они бинарями потом kubeadm при дефолтной установке приносит остальные компоненты куба статик-подами. пойду я тоже спать а то начинаю запутывать.

Vasiliy-Romaneev Автор вопроса
George Gaál
Жалуйся на меня )

Чат, знай, все баги куба на совести @gecube issues на исправление Георга слать в куб бесполезно - реджектят!

Vasiliy Romaneev
я читаю прям первую статью по слову raft https://h...

Етсд посылает хартбиты с небольшим рандомом в периоде. То же относится к таймеру для начала новых выборов. Поэтому даже если несколько раз выборы сорвутся из за ничьи в результатах голосования, рано или поздно один из двух успеет первым запросить голос в свою пользу у второго и консенсус восстановится.

Vasiliy-Romaneev Автор вопроса
Timofey Larkin
Етсд посылает хартбиты с небольшим рандомом в пери...

меня на самом деле смутил alx вместе с Andrew Urpin у одного всё сломалось после кубспрея второй сказал - "да все молчат про факапы" (я это воспринял, что да, бывает часто) потом разобрались, что на самом деле всё ок. но я прям закопался в доки - как там может быть. Dmitry Sergeev помог распутать незапутанное - "нет информации - нечего и запутываться" :)

Vasiliy Romaneev
меня на самом деле смутил alx вместе с Andrew Urpi...

Ох уж этот кубспрей. Нахуевертят абстракций, а потом не пойми что несут про рафт.

Vasiliy-Romaneev Автор вопроса
Timofey Larkin
Ох уж этот кубспрей. Нахуевертят абстракций, а пот...

рафт в тред принёс я. просто в истории разъехался etcd - слово etcd можно смело менять на слово raft ))

Vasiliy-Romaneev Автор вопроса
Timofey Larkin
Ну вот ты стал косвенной жертвой спрея)

вот этого не надо я спрей не люблю и не использую. https://t.me/kubernetes_ru/382607

George Gaál
Есть нюансы )

за нюансы , кривую настройку с инициализацией кластера не считаю. Доку надо читать и все будет нормуль

Vasiliy-Romaneev Автор вопроса
Timofey Larkin
А я такого и не говорил.

предлагаю закрыть тред ты не любишь (?) спрей я его не люблю лучше пива попить, но (!) пандемия.

Vasiliy Romaneev
предлагаю закрыть тред ты не любишь (?) спрей я ег...

не, тож не люблю. Я имел ввиду, что люди словили багов на спрее, посеяли дезинформацию, а затем сомнения в твоей голове.

Vasiliy-Romaneev Автор вопроса
George Gaál
Привейся

у меня в организации запись была только на неделю вперёд - на сегодня а у меня билеты на 28 были - улетел без прививки, московского и европейского пива) зато теперь у меня есть Ульяновское )))

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта