Size: a a a

2020 May 27

AE

Andrey Enshin in K8Spb
По ссылке написано про реквест, а лимит ?
источник

AE

Andrey Enshin in K8Spb
дело ещё в том, что etcd и kube-api критичные компоненты кластера
лимит, именно лимит а не реквест, насколько я понимаю, позволяет ОС убить процесс, который превысил лимит

итого
- с одной стороный лимиты для etcd и kube-api - это как стрелять себе в ногу: при превышении ОС кильнет их
- с другой стороны, безлимитные etcd или kube-api могут сожрать всю память на ноде и тогда ОС начнёт бить честных ребят, что усложнит диагностику
источник

VR

Vadim Rutkovsky in K8Spb
Andrey Enshin
По ссылке написано про реквест, а лимит ?
по ссылке написано что поды убиваться в зависимости от QoS, который зависит от выставленных реквестов и лимитов
источник

VR

Vadim Rutkovsky in K8Spb
без лимитов не получишь Guaranteed, а значит есть вариант что выберут пристрелить kube-api или etcd вместо менее важного пода
источник

VR

Vadim Rutkovsky in K8Spb
ну и плюс утечки в kube-api и etcd, да. Но если они начинают течь - то почему бы их и не убить?
источник

AE

Andrey Enshin in K8Spb
Да, я думаю, что лучше лимиты такис ставить. Иначе пострадают невинные и сложно будет диагностировать
источник

AE

Andrey Enshin in K8Spb
Но есть и другие мнения
источник

PR

Paul Rudnitskiy in K8Spb
Andrey Enshin
дело ещё в том, что etcd и kube-api критичные компоненты кластера
лимит, именно лимит а не реквест, насколько я понимаю, позволяет ОС убить процесс, который превысил лимит

итого
- с одной стороный лимиты для etcd и kube-api - это как стрелять себе в ногу: при превышении ОС кильнет их
- с другой стороны, безлимитные etcd или kube-api могут сожрать всю память на ноде и тогда ОС начнёт бить честных ребят, что усложнит диагностику
если это static pod - куб его перезапустит. А если его не выставлять и кто-то подтекает - его щелкнет ООМ, что, как по мне, менее предпочтительно
источник

AE

Andrey Enshin in K8Spb
@not_logan чуть-чуть потерялся в логике

если это static pod - куб его перезапустит. А если его не выставлять

это статик под и лимит хочется поставить
источник

AE

Andrey Enshin in K8Spb
звучит так, что у статик пода нельзя лимит ставить)
источник

PR

Paul Rudnitskiy in K8Spb
я про то, что если лимит не ставить  и процесс подтекает (а иначе зачем нужен лимит?) - физическая память кончится. И придет лесник (ООМ). А у него своя логика и грохнет он не активный текущий процесс, а какой-нибудь
источник

PR

Paul Rudnitskiy in K8Spb
Например - sshd (все равно же не нужен) :)
источник

AE

Andrey Enshin in K8Spb
именно!
источник

PR

Paul Rudnitskiy in K8Spb
так что лично я бы поставил
источник

AE

Andrey Enshin in K8Spb
что большее зло
источник

AE

Andrey Enshin in K8Spb
согласен
источник

AE

Andrey Enshin in K8Spb
на одной чаше весов мёртвый etcd
на другой мёртвый случайный процесс и очень медленный, читай мёртвый, etcd
источник

PR

Paul Rudnitskiy in K8Spb
ООМ однозначно. Во-первых из-за логики выбора процесса на уничтожение (непредсказуемый kill), во-вторых это не решает проблему (текущий процесс продолжает течь и усугублять ситуацию), в-третьих непредвиденные спецэффекты из-за того, что оом что-то убил, и неизвестно как оно повлияло на систему и сможет ли systemd восстановить ситуацию

Бонусом получаем тот факт, что если куб убил процесс по утечке лимита - можно отловить это в логах :)
источник

A

Andrey in K8Spb
если кто внедрял/внедряет pulumi - можете порекомендовать ознакомительные онлайн-курсы? идея в том чтобы внедрить концепты в команду, что довольно сложно без подготовки @pavelkhritonenko
источник

PR

Paul Rudnitskiy in K8Spb
Andrey
если кто внедрял/внедряет pulumi - можете порекомендовать ознакомительные онлайн-курсы? идея в том чтобы внедрить концепты в команду, что довольно сложно без подготовки @pavelkhritonenko
/me подписался на тред
источник