Первый стабильный выпуск системы OTA-обновлений Mender

27 февраля 2017 года

После двух лет разработки доступен первый стабильный релиз проекта Mender, в рамках которого развивается система для организации OTA-обновления (over-the-air) встраиваемых решений и потребительских устройств на базе различных Linux-окружений. Выпуск Mender 1.0 позиционируется как первый, готовый для внедрения в реальных проектах. Код клиентской и серверной частей системы написан на языке Go и поставляется под лицензией Apache 2.0. Целью проекта является упрощение развёртывания инфраструктуры для доставки и установки OTA-обновлений, что даёт возможность разработчикам прошивок сосредоточиться на создании продукта, не отвлекаясь на решение задач по распространению обновлений.

Mender предоставляет разработчикам серию компонентов, позволяющих развернуть серверы для доставки и сборки атомарно устанавливаемых обновлений, при которых система обновляется целиком. Разработчик формирует обновлённый образ прошивки и добавляет его на управляющий сервер Mender. Предоставляемый проектом инструментарий для сборки обновлений оптимизирован для работы со встраиваемыми дистрибутивами на базе платформы Yocto, но он также может быть адаптирован для любых других систем сборки дистрибутивов. В качестве примеров доступны два эталонных сценария для платы BeagleBone Black и для виртуального устройства vexpress-qemu. Поддерживается как интерфейс командной строки, так и web-интерфейс для управления распространением обновлений.

На потребительские устройства устанавливается специальный клиентский компонент, который периодически опрашивает сервер и при наличии обновления загружает его. Взаимодействие с сервером осуществляется только по HTTPS, аутентификация сервера выполняется на основе проверки TLS-сертификата, интегрированного в прошивку. Обновление включает полноценный образ корневой файловой системы. Для экономии трафика и сокращения времени загрузки в будущем планируется обеспечить поддержку delta-обновлений, включающих только изменения, относительно прошлого обновления.

Для организации атомарного обновления всей системы на накопителе создаётся два идентичных корневых раздела - активный и пассивный. Новое обновление устанавливается в пассивный раздел, никак не влияя на работу активного. После перезагрузки разделы меняются местами - раздел с новым обновлением становится активным, а прошлый активный раздел переводится в пассивный режим и ожидает установки следующего обновления. Если после обновления что-то пошло не так, осуществляется откат на прошлый вариант прошивки.

Источники править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Первый стабильный выпуск системы OTA-обновлений Mender», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.