From af0ebdfebcb08838a9b48949ff2dfa81f6d3dce8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Sun, 16 Aug 2026 14:52:20 +0400 Subject: [PATCH] =?UTF-8?q?docs:=20HISTORY=20=E2=80=94=20=D0=BC=D0=BE?= =?UTF-8?q?=D0=BD=D0=BE=D0=BB=D0=B8=D1=82=20=D0=BF=D0=BE=D0=B4=D0=BD=D1=8F?= =?UTF-8?q?=D1=82=20(sslmode=3Drequire),=20/health=20OK,=20EMQX=20=D0=BF?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D0=B2=D0=B5=D0=B4=D1=91=D0=BD=20=D0=BD=D0=B0?= =?UTF-8?q?=20=D0=B0=D0=B4=D1=80=D0=B5=D1=81=20=D0=BC=D0=BE=D0=BD=D0=BE?= =?UTF-8?q?=D0=BB=D0=B8=D1=82=D0=B0;=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA?= =?UTF-8?q?=D0=B8=20deck/pg=5Fhba=20=D0=B7=D0=B0=D0=B4=D0=BE=D0=BA=D1=83?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D1=82=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD?= =?UTF-8?q?=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HISTORY/2026-08-16-session-log.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/HISTORY/2026-08-16-session-log.md b/HISTORY/2026-08-16-session-log.md index d699b06..b763d67 100644 --- a/HISTORY/2026-08-16-session-log.md +++ b/HISTORY/2026-08-16-session-log.md @@ -741,3 +741,29 @@ store сам создаст таблицу iot_devices. → PG → REST API. 4. Позже: убрать dashboard из emqx.conf (v0.2.1), CPU-квоту ≥1000m для EMQX в deck при создании (в нашем кластере можно kubectl patch). + +--- + +## 23. Монолит iot-service поднят на платформе (16.08, ~10:50 MSK) + +**Ошибки по пути (задокументированы):** +1. Первая попытка deck: под падал `required env vars not set: IOT_PG_DSN, …` — + env-переменные из deck не применились. После пересоздания пользователем env + применились (config.Load прошёл). +2. Затем: `pg_hba.conf rejects connection ... no encryption (28000)` — PG + требует SSL. DSN заменён на `sslmode=require` (kubectl set env в НАШЕМ + кластере). ⚠️ Для чужого кластера: в deck указывать DSN с sslmode=require. + +**Состояние (ns монолита `4504e05b-7b7f-4689-a61f-fbf6234dd0ed`):** +- Под 1/1 Running, логи: devices store ready, iotpg connected, telemetry store + ready, API :9090, bridge/consumer резолвят очередь iot-telemetry (внутренний + SQS endpoint работает). +- Внешне: `https://iot.containerk8s.dev.nubes.ru/health` → + `{"status":"ok","version":"v0.1.0"}`, `/console` → 200. +- EMQX: set env EMQX_AUTHENTICATION__1__URL и EMQX_AUTHORIZATION__SOURCES__1__URL + → адрес монолита; rollout, ожидание медленной загрузки (~5–10 мин). +- Bridge подключится к EMQX после перезагрузки EMQX (auth теперь идёт в монолит). + +**Следующий шаг:** end-to-end проверка: создать устройство через REST API → +MQTT CONNECT (wss) с кредами устройства → publish телеметрии → SQS → +consumer → PG → чтение через /v1/.../telemetry.