Size: a a a

Kubernetes — русскоговорящее сообщество

2020 June 16

S

Sergey in Kubernetes — русскоговорящее сообщество
типа так ?
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Dmitry Sergeev
ну дык если нагрузка такая высокая на под, что даже rediness не отвечает, может и правда нужно выкинуть его из апстримов? Иначе непонятно как этот под обслуживает запросы, когда на rediness не может ответить. Из апстримов будет выкинут, сможет нормально ответить на уже обрабатываемые запросы, и никаих таймаутов у клиентов в итоге не будет, так как их следующие запросы не будут попадать на этот перегруженный под.

Собсвтенно именно поэтому для таких случаев liveness может навредить, что в статье и говорится, но для rediness это в самый раз
Проблема в том что там строе statefull джава приложение. Нельза масштабировать. Поэтому если кубик отключит от сети то пудет 502. клиентам не нравиться это
источник

DS

Dmitry Sergeev in Kubernetes — русскоговорящее сообщество
Андрей Казанцев
Проблема в том что там строе statefull джава приложение. Нельза масштабировать. Поэтому если кубик отключит от сети то пудет 502. клиентам не нравиться это
ну вот и выяснили, что как окозалось это просто legacy, да еще и statefull. Legacy и не cloud-native в кубе боль, шо поделать 🤷
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Sergey
failureThreshold: 120
periodSeconds: 1
Да. Суть в том что если сработает быстро то срузу перейдёт к liveness и как я ожидал сделать ready но нет. Теперь даже не знаю зачем нужно. В хучшем случае всёравно две минуты будет до перезагрузки
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Dmitry Sergeev
ну вот и выяснили, что как окозалось это просто legacy, да еще и statefull. Legacy и не cloud-native в кубе боль, шо поделать 🤷
Да но ожидаемое поведение startUp пробы решило бы проблему.
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Непойму теперь зачем она нужна
источник

DS

Dmitry Sergeev in Kubernetes — русскоговорящее сообщество
Андрей Казанцев
Непойму теперь зачем она нужна
чтобы liveness не убило под, во время инициализации приложения
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Так а как теперь startUp спасёт и что мешает сделать delay?
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Стартап всё равно убьёт если по итогу не выполниться
источник

DS

Dmitry Sergeev in Kubernetes — русскоговорящее сообщество
Андрей Казанцев
Так а как теперь startUp спасёт и что мешает сделать delay?
delay же просто откладывает время проверки. Время инициализации ты можешь не знать, а с помощью startupProbe ты можешь точно сказать, сколько приложению можно стартовать. Вместо того, чтобы подбирать таймауту в liveness. Мне кажется эту задачу и решает startup
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Так а зачем это. Ставь delay по максимому.
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Старта всёравно пока не исчерпает попытки тоже не убьёт приложение
источник

DS

Dmitry Sergeev in Kubernetes — русскоговорящее сообщество
Андрей Казанцев
Так а зачем это. Ставь delay по максимому.
ну например приложение может стартовать 5 минут, а может 2 минуты. Если ты в livenes отложишь время проверки на 5 минут, то у тебя во всех случаях,  liveness начнутся только через 5 минут. с помощью startupProbe, ты можешь начать проверки liveness как только приложение стартануло.
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
А, чтобы сразу его ливнесить
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Окей, тогда как без постоянного readness сделать обновление без даунтайма
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
То есть если нету readiness то мы сразу ready и старую версию вырубают, а если есть readiness то нас переодически отрубают
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Есть идеи что делать с таким юзкейсом
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Андрей Казанцев
Как узнать имя секрета которое будет сгенерировано хелмом для postgresql в качестве зависимости? Попробовал {{ template "postgresql.secretName" . }} и получил
 executing "postgresql.secretName" at <.Values.global.postgresql.existingSecret>: nil pointer evaluating interface {}.existingSecret
И с этим помогите плиз
источник

DS

Dmitry Sergeev in Kubernetes — русскоговорящее сообщество
Андрей Казанцев
Окей, тогда как без постоянного readness сделать обновление без даунтайма
для этого и нужен rediness, без него никак
источник

АК

Андрей Казанцев... in Kubernetes — русскоговорящее сообщество
Тогда нужен startUpReadiness)
источник