mender----What is Mender?

What is Mender?

    Mender is an open source remote software updater for embedded Linux devices. It includes both a client and a management server, which are both licensed under Apache 2.0.

    It enables the management of software updates to connected devices remotely, whether over-the-air or over any TCP/IP network.

    It allows you to deploy an image-based update from the server-side component of Mender to your connected device or devices. The deployment is done securely using HTTPS and the partitioned setup makes sure your device will stay up and running should anything interrupt the update process.

How it works

    Mender is a client-server application, where the client is installed in embedded devices running Linux. The Mender client regularly checks with the Mender server over HTTPS to see if it has an image update available for deployment, and deploys it if there is. A dual A/B rootfs partition layoutensures robustness, so that the embedded device can recover even during incomplete or corrupted deployment installations.

                             

Partition layout and reliability

    For reliability during the update process, Mender uses a dual A/B rootfs partition layout. The Mender client daemon runs in user space in the currently booted rootfs partition.


    During the update process, the Mender client writes the updated image to the rootfs partition that is not running and configures U-Boot to boot from the updated rootfs partition. The device is then rebooted. If booting the updated partition fails, the partition that was running is booted instead, ensuring that the device does not get bricked. If the boot succeeds, Mender sets the updated partition to boot permanently when Mender starts as part of the boot process.

    As Mender downloads and installs the image, other applications on the device continue to run as normal. The only time the device has downtime is during the reboot into the updated partition, which typically takes a minute, depending on the device configuration.

Persistent data can be stored in the data partition, which is left unchanged during the update process.


Mender是什么?

 

        Mender是一个远程更新嵌入式设备的开源软件它包含客户端与管理服务器,这两部分都是基于apache-2.0许可。

    无论是基于OTA还是TCP/IP网络协议,他都能使得软件升级管理服务器能够远程连接到设备。

    它允许你配置mender的管理服务器,来对所有连接到服务器的设备进行基于镜像的更新升级,这个升级部署是非常安全的,它基于HTTPS以及分区设置,用来保证升级进程持续更新而不会被任何其他的进程打断。


它是怎样工作的

    Mender是基于客户端-服务器的应用,客户端是运行在linux系统的嵌入式设备上面。mender的客户端定期通过HTTPS协议去mender的服务器上检查,是否有配置可更新的镜像。如果有则部署相关升级。类似的A/B双系统有助于提供稳定性,如果设备升级未完成或者部署实施损坏了,可以恢复。

                                             




分区布局与可靠性

为了保证一个可靠的升级进程,mender使用了A/B双系统布局。Mender后台客户端程序运行在当前启动的系统分区的用户空间。


在升级过程,mender客户端把更新的镜像写入到未启动的分区,配置uboot从刚更新的分区启动,然后设备重启,如果启动失败,然后从之前启动过的分区启动,确保设备不会 变砖。如果启动成功,在启动进程mender起来之后,设置这个更新的分区为永久启动分区。

 

由于mender下载以及安装过程,设备上面的其他应用都是可以正常运行的,设备仅有的不可运行时期,就是重启进入新的系统过程,这个时间依赖设备的配置,通常时间很短。不变的数据,可以存储在data分区,data分区在升级过程是不会被升级的。



原文网址链接: https://mender.io/what-is-mender


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值