Files
tf_provider/apps/iot-demo/HISTORY/09-final-deploy.md
T

2.1 KiB

Шаг 9 — DEV стенд: все 6 сервисов развёрнуты

Дата: 2026-07-21

Финальный состав (6 сервисов)

# Ресурс Terraform Имя Роль
1 nubes_kafka iot-kafka Шина сообщений
2 nubes_redis iot-redis Кэш дашборда
3 nubes_mongodb iot-mongo Постоянное хранение
4 nubes_flask iot-producer Генератор IoT → Kafka
5 nubes_flask iot-consumer Kafka → Redis + MongoDB
6 nubes_nodejs iot-dashboard Redis → графики Chart.js

Git-репозитории

Репо Назначение
Nail/tf-iot-producer Flask — IoT продюсер (Kafka TLS)
Nail/tf-iot-consumer Flask — Kafka → Redis + MongoDB
Nail/tf-iot-dashboard Node.js — дашборд Chart.js

Поток данных

Producer (Flask) → Kafka → Consumer (Flask) → Redis (кэш)
                                            → MongoDB (история)
Dashboard (Node.js) ← Redis (API /api/latest, /api/counters, /api/recent)

Реальные ключи (определены опытным путём)

Kafka

  • bootstrap: state_out_flat["internalConnect.bootstrap.fqdn"]:9093TLS
  • vault: vault_secrets["users"]["iot-app"]["user.password"]

Redis

  • host: state_out_flat["internalConnect.master"]
  • vault: vault_secrets["users"]["default"]["password"]

MongoDB

  • host: state_out_flat["internalConnect"]
  • port: 27017
  • vault: vault_secrets["users"]["admin"]["password"]

Структура приложений

  • Flask: site/app.py + requirements.txt (БЕЗ Procfile)
  • Node.js: server.js + package.json (npm start)

Неудачные сервисы

Сервис Причина
nubes_clickhouse GitHub release assets timeout
nubes_superset IAM 408 timeout
nubes_akhq toBoolean() on null — баг платформы