Pepeunit
INFO
Pepeunit - платформа с открытым исходным кодом, основанная на принципах Fediverse и IoT, предназначенная для организации устройств в единую, управляемую информационную систему.
CI/CD для Unit
Pepeunit способен на основе внешних Git репозиториев из Gitlab и Github, создавать готовые к использованию программы - это могут быть программы на основе Интерпритируемых или Компилируемых языков программирования.
Федеративное взаимодействие
Pepeunit - федеративная платформа, отдельные инстансы которой, могут узнавать о других инстансах и объединятся в большую сеть для взаимодействия. Unit могут взаимодействовать с другими Unit даже если они находятся на разных инстансах.
Конвейеры обработки данных
Pepeunit способен производительно накапливать, предварительно отчищенные и трансформированные данные в Clickhouse и Postgresql. Обработка производится на основании конвейерных конфигураций в YML формате. Cкорость обработки обеспечивает отдельный микросервис написанный на Golang. Доступно 4 основных типа накопления данных:
Last Value- сохранение последнего значенияN Records- сохранениеNпоследних записейTime Window- сохранение всех записей за установленное временное окноAggregation- сохранение данных аггрегированных при помощи фукнций:avg, sum, min, max- за выбранное временное окно
Интеграция с Grafana
Pepeunit - позволяет создавать кастомные Dashboard из Visualization. В качестве данных служат UnitNode с настроенными DataPipe
Управление устройствами IoT
Pepeunit предоставляет несколько способов взаимодействия с Unit
Управление топиками
Pepeunit позволяет отслеживать состояние Unit при помощи системы именования топиков. UnitNode могут образовывать связи Output -> Input для передачи информации между разными Unit.
Настройка политик доступа
Pepeunit позволяет регулировать уровни доступа Пользователь-Unit и Unit-Unit. Глубина взаимодействия с платформой определяется ролью Пользователя и видимостью отдельных сушностей Repo, Unit, UnitNode.