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

Все доброе утро. Наткнулся я тут на страное поведение: у меня

есть связка: deployment, service, ingress, все стандартно. В деплойменте висит веб сервис и все это зацеплено за БД на бекэнде.

В фронт, помимо стандартных хттп запросов приходят еще и апдейты по схеме. Такой апдейт меняет настройки БД и чтоб рефрешнуть веб сервис, его надо рестартовать, чтоб он считал стейт из БД.

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

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

С двумя происходит херня:
$ while true; do curl https://my-ingress.domain.com; done

old data
old data
old data
old data
<html>
<head><title>502 Bad Gateway</title></head>
<body>
<center><h1>502 Bad Gateway</h1></center>
</body>
</html>
old data
NEW DATA
old data
old data
NEW DATA
NEW DATA
<html>
<head><title>504 Gateway Time-out</title></head>
<body>
<center><h1>504 Gateway Time-out</h1></center>
</body>
</html>
<html>
<head><title>504 Gateway Time-out</title></head>
<body>
<center><h1>504 Gateway Time-out</h1></center>
</body>
</html>
NEW DATA
NEW DATA
NEW DATA
NEW DATA


Я ожидал что рестарт по дефолтной rollout policy позволит обойтись вообще без провалов сервиса, даже если в начале будет возвращать old data какое то время. Что я упускаю?

1 ответов

27 просмотров
Dan-Y Автор вопроса

добавил readiness и liveness, теперь 504 не попадается, но 502 во время фейловера в течении пары секунд есть. я так понимаю сервис то ли цепляет еще не поднявшийся под то ли не успевает отключить старый под когда он уже в дауне. Как бы точно отследить?

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
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...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
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
Карта сайта