kubectl get all -n saas-prod -o yaml > ~/k8s-backups/pre-change-$(date +%Y%m%d-%H%M%S).yaml
~/helm-values/~/service-credentials.txtagents и saas-prod квота иначе не пропустит под; в tools есть LimitRange с дефолтами)| Что | Когда | Куда | Ротация |
|---|---|---|---|
| Манифесты всего кластера | При старте каждой сессии Claude Code (hook) | ~/k8s-backups/session-start-*.yaml |
7 дней |
| Память Hermes (PVC) | Ежедневно 03:30 (cron) | ~/k8s-backups/hermes-state-*.tar.gz |
7 дней |
⚠️ Базы PostgreSQL (wiki, Plane) пока бэкапятся только на уровне PVC-файлов вместе с сервером — отдельный pg_dump в планах (см. Роадмап).
HermesCrashLooping (>3 рестартов за 15 мин), HermesUnavailable (агент недоступен 5 мин)Посмотреть состояние всего:
kubectl get pods -A
Перезапустить сервис в tools (квота впритык — rolling не пройдёт):
kubectl -n tools scale deploy/<имя> --replicas=0
kubectl -n tools scale deploy/<имя> --replicas=1
Обновить Hermes (сначала дождаться/сделать бэкап state):
~/bin/hermes-state-backup.sh
# поменять тег образа в ~/k8s-manifests/agents/hermes.yaml
kubectl apply -f ~/k8s-manifests/agents/hermes.yaml
Обновить Plane (helm upgrade): после апгрейда заново пропатчить WEB_URL=https://... в ConfigMap plane-app-vars и вернуть API_BASE_URL деплойменту space — чарт это затирает (детали в ~/helm-values/plane-ce-values.yaml).
SKIP_ENV_VAR=1)