Общая задача

Развернуть и настроить полную инфраструктуру Apache Kafka для обеспечения централизованного управления топиками и доступа к данным.

Технические требования

1. Инфраструктура

  • 3 инстанса брокеров Kafka (допускается запуск на одной физической/виртуальной ноде)
  • ZooKeeper (как минимум один инстанс) для координации брокеров
  • Обеспечить стабильную работу кластера с отказоустойчивостью

2. Мониторинг

  • Обязательно: метрика размера необработанной очереди (lag) - разница между последним offset продюсера и последним коммитом для каждой consumer group
  • Опционально: общая длина каждого топика, метрики брокеров (память, диск, network I/O)
  • Подключить систему мониторинга (например, Kafka Exporter + Prometheus + Grafana) для визуализации задержек и нагрузки

3. Реестр топиков и users/groups

  • Создать единый реестр (может быть конфигурационный файл или таблица в БД), который содержит:
    • Список всех топиков с описанием
    • Список consumer group, их права доступа (чтение/запись) к конкретным топикам
    • Авторизационные данные для каждого пользователя, жёстко привязанные к одной или нескольким группам)

4. Управление через веб-интерфейс или конфиги

  • Все действия по добавлению/удалению топиков и consumer groups должны выполняться только через веб-интерфейс (Kafka UI, AkHQ, CMCAK и т.п.) или с помощью server.properties / сценариев ops
  • Строгий запрет: клиентские приложения не могут сами создавать топики или защищать consumer groups при подписке (отключить auto.create.topics.enable, проверять group при первом коммите)

5. Аутентификация и авторизация

  • Включить ACL (mutual TLS, SASL/SCRAM или SASL/PLAIN) для авторизации - у каждого пользователя permission привязаны к individual matching group
  • Право на запись: только если группе разрешено производить данные в указанный топик
  • Права читать фиксированный consumption из конкретных ссылок

Ожидаемый результат

  • Полностью настроенный кластер Kafka (3 brokers + ready service point)
  • Экспорт метрик -> dashboard с lag и здравый портрег
  • Документирована инструкция/скрипты для обновления базы users
  • 1 click за два слова запустить лампо звучит так же очеловечен верфт лага

Клиент сам решает, универсально команда без продавца.

Разработка бота для кофейни на Python с админкой

Требуется создать телеграм-бота для приема заказов в кофейню. Бот должен быть написан на чистом Python и иметь функциональную панель администратора для управления заказами и меню. Все детали будут уточнены с исполнителем.