docs: все TF файлы с детальными комментариями на каждую строку

This commit is contained in:
“Naeel”
2026-07-22 09:26:20 +04:00
parent 837a663367
commit 3dac50b78a
7 changed files with 238 additions and 176 deletions
+52 -91
View File
@@ -1,100 +1,61 @@
# =============================================================================
# locals.tf — все настраиваемые значения IOT_KAFKA_DEMO
# Kafka + ClickHouse + Superset + Flask (producer + consumer)
# Общие переменные для всех ресурсов демо-стенда IoT
# Пайплайн: Producer -> RabbitMQ -> Consumer -> Redis+MongoDB -> Dashboard
# Все значения вынесены сюда — в ресурсах хардкода нет
# =============================================================================
locals {
# --- RabbitMQ: очередь сообщений (сервис 93) ---
rmq_resource_name = "iot-rmq" # имя инстанса в личном кабинете Nubes
rmq_cpu = 300 # CPU в millicores (1000 = 1 ядро)
rmq_memory = 512 # память в MB
rmq_disk = 5 # диск в GB
rmq_replicas = 1 # количество реплик (нод)
rmq_timeout = "11m" # таймаут ожидания операций create/modify
rmq_queue = "iot-events" # имя очереди: producer кладёт, consumer забирает
# ═══════════════════════════════════════════════════════════════════════════
# Kafka
# ═══════════════════════════════════════════════════════════════════════════
# --- Redis: кэш дашборда (сервис 91) ---
rds_resource_name = "iot-rds" # имя инстанса (rds = ReDiS)
rds_cpu = 300 # CPU millicores
rds_memory = 512 # память MB
rds_disk = 5 # диск GB
rds_replicas = 1 # реплик (нод)
rds_timeout = "11m" # таймаут операций
kafka_resource_name = "iot-kafka-v2"
kafka_cpu = 500
kafka_memory = 1024
kafka_disk = 10
kafka_replicas = 1
kafka_version = "3.7"
kafka_timeout = "15m"
# --- MongoDB: архив всех событий (сервис 92) ---
mgo_resource_name = "iot-mgo" # имя инстанса (mgo = MonGO)
mgo_cpu = 300 # CPU millicores
mgo_memory = 512 # память MB
mgo_disk = 5 # диск GB
mgo_replicas = 1 # реплик (нод)
mgo_timeout = "11m" # таймаут операций
# Kafka — topic
kafka_topic_name = "iot-events"
kafka_topic_parts = 3
kafka_topic_repl = 1
# --- Producer (Node.js): генерирует IoT-события -> RabbitMQ ---
prod_resource_name = "iot-prod" # имя инстанса (prod = PRODucer)
prod_domain = "iotprod22" # поддомен (станет iotprod22.nodejsk8s.dev.nubes.ru)
prod_git_path = "https://gitea.services.ngcloud.ru/Nail/tf-iot-producer.git" # Git-репо с кодом producer
prod_git_revision = "0bf1847" # хеш коммита (менять для редеплоя нового кода)
prod_cpu = 300 # CPU millicores
prod_memory = 256 # память MB
prod_replicas = 1 # количество подов
prod_timeout = "11m" # таймаут операций
# Kafka — user (общий для producer и consumer)
kafka_username = "iot-app"
# --- Consumer (Node.js): RabbitMQ -> Redis + MongoDB ---
cons_resource_name = "iot-cons3" # имя инстанса (cons = CONSumer, версия 3)
cons_domain = "iotcons22n" # поддомен -> iotcons22n.nodejsk8s.dev.nubes.ru
cons_git_path = "https://gitea.services.ngcloud.ru/Nail/tf-iot-consumer.git" # Git-репо с кодом consumer
cons_git_revision = "03fefc0" # хеш коммита (менять для редеплоя)
cons_cpu = 300 # CPU millicores
cons_memory = 256 # память MB
cons_replicas = 1 # количество подов
cons_timeout = "11m" # таймаут операций
# ═══════════════════════════════════════════════════════════════════════════
# RabbitMQ
# ═══════════════════════════════════════════════════════════════════════════
rabbit_resource_name = "iot-rabbit"
rabbit_cpu = 300
rabbit_memory = 512
rabbit_disk = 5
rabbit_replicas = 1
rabbit_timeout = "11m"
rabbit_queue = "iot-events"
# ═══════════════════════════════════════════════════════════════════════════
# Flask — Producer
# ═══════════════════════════════════════════════════════════════════════════
producer_resource_name = "iot-producer-v3"
producer_domain = "iotprodtest"
producer_git_path = "https://gitea.services.ngcloud.ru/Nail/tf-iot-producer.git"
producer_git_revision = "a6ed190"
producer_cpu = 300
producer_memory = 256
producer_replicas = 1
producer_timeout = "11m"
# ═══════════════════════════════════════════════════════════════════════════
# Flask — Consumer
# ═══════════════════════════════════════════════════════════════════════════
consumer_resource_name = "iot-consumer-v4"
consumer_domain = "iotconstest"
consumer_git_path = "https://gitea.services.ngcloud.ru/Nail/tf-iot-consumer.git"
consumer_git_revision = "354cf38"
consumer_cpu = 300
consumer_memory = 256
consumer_replicas = 1
consumer_timeout = "11m"
# ═══════════════════════════════════════════════════════════════════════════
# Redis
# ═══════════════════════════════════════════════════════════════════════════
redis_resource_name = "iot-redis"
redis_cpu = 300
redis_memory = 512
redis_disk = 5
redis_replicas = 1
redis_timeout = "11m"
# ═══════════════════════════════════════════════════════════════════════════
# MongoDB
# ═══════════════════════════════════════════════════════════════════════════
mongo_resource_name = "iot-mongo"
mongo_cpu = 300
mongo_memory = 512
mongo_disk = 5
mongo_replicas = 1
mongo_timeout = "11m"
# ═══════════════════════════════════════════════════════════════════════════
# Node.js Dashboard
# ═══════════════════════════════════════════════════════════════════════════
dashboard_resource_name = "iot-dashboard"
dashboard_domain = "iotdashtest"
dashboard_git_path = "https://gitea.services.ngcloud.ru/Nail/tf-iot-dashboard.git"
dashboard_git_revision = "42eb636"
dashboard_cpu = 300
dashboard_memory = 256
dashboard_replicas = 1
dashboard_timeout = "11m"
# --- Dashboard (Node.js + Chart.js): Redis -> графики ---
dash_resource_name = "iot-dash" # имя инстанса (dash = DASHboard)
dash_domain = "iotdash22" # поддомен -> iotdash22.nodejsk8s.dev.nubes.ru
dash_git_path = "https://gitea.services.ngcloud.ru/Nail/tf-iot-dashboard.git" # Git-репо с кодом dashboard
dash_git_revision = "bc6f43d" # хеш коммита (менять для редеплоя)
dash_cpu = 300 # CPU millicores
dash_memory = 256 # память MB
dash_replicas = 1 # количество подов
dash_timeout = "11m" # таймаут операций
}