diff --git a/HISTORY/2026-08-14-session-log.md b/HISTORY/2026-08-14-session-log.md index 6529b86..6233807 100644 --- a/HISTORY/2026-08-14-session-log.md +++ b/HISTORY/2026-08-14-session-log.md @@ -100,3 +100,39 @@ digest `sha256:b4d1dccda75a67e1a5db3887576e1112993d6485504e683d0fa82a2374bca99b` **Следующий шаг**: в deck указать путь образа `naeel/shared-sqs:v0.1.26` и сделать redeploy — тогда под гарантированно стянет новый образ (код с перебором стендов NUBES_ENDPOINT + версия на экране). + +--- + +## РАЗВЯЗКА: образ обновлён через kubectl, вход в UI работает (14.08.2026, утро) + +**Как выяснилось**: +- Наш deck-контейнер — это deployment `containerk8s` в namespace `f1ffb134-7d16-45bd-8bef-69f6ec8ab33c` + (ns = UUID инстанса), образ `naeel/shared-sqs:latest`, pullPolicy=Always. +- Старый апрельский Helm-релиз `shared-sqs` (ns `shared-sqs`, v0.1.24, 122 дня) — ЛЕГАСИ, + не имел отношения к живому сервису. УДАЛЁН по команде пользователя: `helm uninstall shared-sqs` + + `kubectl delete namespace shared-sqs` (кластер подтвердил NotFound). +- Причина «redeploy не помогает»: под с pullPolicy=Always получал из кэша платформенного + зеркала `docker.io` (в kube-system всё на mirror.k8s.ngcloud.ru) старый digest `be2108fd…`, + хотя в Docker Hub `latest` = `b4d1dccd…` (v0.1.26). Кэш зеркала по тегу `latest` не протухал + из-за частых пушей. + +**Что сделано**: +1. `kubectl -n f1ffb134-… set image deployment/containerk8s app=naeel/shared-sqs:v0.1.26` + (внимание: контейнер в поде называется `app`, а не `containerk8s`). + Уникальный тег обошёл кэш зеркала → под `containerk8s-cc5849c-8rx6l` с digest `b4d1dccd…`. +2. Проверка: `GET /health` → `{"status":"ok","version":"v0.1.26"}`. +3. Вход в UI с JWT `tazetdinovn@gmail.com` — УСПЕШНО: тенант auto-provisioned + (`SSAK-0f00384dc3cdc9ca18a50e3a10`), на дашборде карточка «Версия: v0.1.26». + +**Наблюдения по gateway (важно на будущее)**: +- TEST-токен: с рабочей станции (python urllib) TEST-стенд = 200; с ВМ (curl) = 401; + из пода (wget) = 401. При этом Go-клиент сервиса (crypto/tls) проходит и получает 200 — + DDoS-Guard/шлюз различает клиентов по TLS-фингерпринту/IP. Тесты curl/wget из пода + НЕ показательны для Go-клиента сервиса. +- Перебор стендов PROD→TEST→DEV в `PingNubesAPI` работает как задумано. + +**Правила этой сессии** (дополнено): +- Deck-контейнер «Простой HTTP контейнер» = deployment `containerk8s`, контейнер `app`, + ns = UUID инстанса. Правки образа через kubectl НЕ откатываются (ownerReferences нет). +- `latest` в этом кластере кэшируется зеркалом → обновлять только уникальным тегом + через `kubectl set image`.