Правка через kubectl edit откатилась через минуту
Приложение выкатывается через ArgoCD с включёнными автоматической синхронизацией и самовосстановлением. Во время всплеска нагрузки дежурный поднял лимит памяти прямо в кластере:
kubectl -n prod edit deployment api # limits.memory: 512Mi -> 1Gi
Лимит применился, поды перевыкатились. Через минуту всё вернулось к 512Mi, поды перевыкатились ещё раз, сервис снова начал падать по памяти.
Что произошло и как правильно провести это изменение?
- ArgoCD увидел расхождение с манифестом в Git и вернул кластер к состоянию из репозитория — изменение нужно вносить коммитом в репозиторий манифестов
- Helm-релиз перезаписал ручную правку: при очередной проверке состояния он вернул значения из `values.yaml`, потому что кластер обязан соответствовать последнему установленному релизу
- Сработал откат деплоя по неуспешной проверке здоровья, изменение нужно было применять с отключёнными пробами
- Kubernetes восстановил спецификацию из ReplicaSet предыдущей ревизии, ручные правки Deployment не сохраняются
