Files
tf_provider/apps/iot-demo/HISTORY/02-repos.md
T

1.2 KiB

Шаг 2 — Репозитории и код приложений

Дата: 2026-07-21

Созданы Git-репозитории на Gitea

Репозиторий URL
tf-iot-producer https://gitea.services.ngcloud.ru/Nail/tf-iot-producer
tf-iot-consumer https://gitea.services.ngcloud.ru/Nail/tf-iot-consumer

Producer (tf-iot-producer)

app.py — Flask + KafkaProducer:

  • Генерирует фейковые IoT-события (8 датчиков: температура, влажность, энергия)
  • Шлёт в Kafka каждые PRODUCE_INTERVAL секунд (по умолчанию 3)
  • Топик и брокеры — из env (задаёт Terraform)
  • SASL_PLAINTEXT аутентификация
  • GET / — статистика (events_sent, errors)
  • GET /health — healthcheck

Consumer (tf-iot-consumer)

app.py — Flask + KafkaConsumer + ClickHouse:

  • Читает события из Kafka, пишет батчами по 10 в ClickHouse
  • Создаёт таблицу iot_events (MergeTree) при старте
  • SASL_PLAINTEXT → Kafka, HTTP → ClickHouse
  • GET / — статистика (events_consumed, events_in_db)
  • GET /health — healthcheck