Quickly evaluate Mender with the new FREE 12-month signup trial
We are excited to share with you that we have launched a new free hosted trial version. The goal of this free trial is to help our prospective users and customers evaluate all the different features and capabilities of the latest Mender releases to enable them make a better decision when they decide to select a plan for their pre and post-production OTA needs. The new free hosted trial version, includes the same features of Mender Enterprise hosted for 12 months with up to a maximum of 10 devices. This new version will allow simple and frictionless evaluation of all the features of Mender with no credit card requirement. If you are currently in the development phase and evaluating Mender we recommend the new free trial as this will give you more features and a longer evaluation period at no extra charge.
Want to learn the basics of Mender? Read on.
Mender helps companies update firmware and software on their connected devices to deliver new features and security patches.
The Mender client runs on your device. If you run a normal operating system on a popular board, it is likely that you will find a Mender client that works out of the box on Mender Hub. If you have a Raspberry Pi or Beaglebone running Linux check out our getting started guide.
The Mender client is written in Go and optimized to run on more powerful IoT devices, often referred to as edge or gateway devices. If your device can handle the Linux kernel, it is a good fit for Mender. Mender is designed to support updating microcontrollers and sensors, but this requires more preparations.
The Mender server is the brain of the system. Whether you want to self-manage the server, or use the hosted Mender server instance, the purpose of the server remains the same:
- Ensure integrity and security of your software and devices (onboarding)
- Store new software versions to be deployed to devices
- Define and coordinate the actual deployment of new software to devices
- Ensure you feel confident and safe when updating your devices remotely
The Mender server is written in Go and consists of different micro-services running inside containers. If you want to manage the Mender server yourself, you can do so easily on your own infrastructure, or by using a public cloud vendor. For large scale, we recommend setting up a Kubernetes cluster to manage your devices. For ease of use and peace of mind, we recommend using Hosted Mender.
Different types of firmware and software updates
Mender supports different types of software updates, ranging from single files, to containers, to packages, to full partitions. To support different formats today and in the future Mender uses something called update modules.
An Update Module is basically a wrapper where you define the kind (file, package, container, etc.) of update you want to conduct on your device. Head over to the section on Mender Hub to learn more and see a module in action.
System updates is the most common use-case for Mender. System update means updating your whole partition. The advantages of this is its resiliency as if updating a partition fails, Mender will roll back into a previously good known state. The main disadvantage of System update is that even the smallest change will require a whole new partition to be updated. To address this drawback Mender offers delta-based updates so even though your partition might be tens or hundreds of megabyte in size, only the difference between the old and new software version will be transferred to the devices.
Application updates is another common use-case. This method doesn’t provide the atomicity promised by system updates and therefore is not as resilient. On the other hand, application updates are similar to the software updates you're used to for updating desktops and servers. It is fast and ideal for frequent updates where the risk and costs of bricking a remotely deployed device is not devastating.
Deploy with confidence
At Mender we work hard to equip you with the tools you need to deploy with confidence, whether you want to update to one or one million devices. From our principle of security by design to quality assurance of our code, we always seek to find ways to make the updating process secure, stable and predictable.
Mender comes with a wide variety of services to instill this confidence. Examples of such services are:
- Dynamic grouping of device (slice and dice devices the way you like)
- Phased roll-out (deploy in phases by device group or times)
- Auto-retry if intermittent transfers (don’t let a device hang out there)
- Software and hardware integrity (signing all software)
- “Live” reporting of the state of the deployment (address issues fast)
- Detailed logs of the deployment (understand what happened)
- Role based access control so only privileged personal can make changes to production devices
Mender is fully API-driven for easy integration with third party systems. Most features are generic by design to allow for customization. The “confidence” features mentioned above are all fully configurable. To bridge the support for extreme customization with ease of use, Mender has adopted two terms: “State scripts” and “Artifacts”.
Mender State Scripts
Mender state scripts allows for running different scripts on your device during an update process. Mender comes with 9 pre-defined states (idle, download, rollback, sync, etc.) of which each has an “entry”, “exit” and “error” state. For instance this means that you can quality assure the download sequence by running certain scripts prior to the client starting the download of a new software, and after the download has completed and before the next state in the process.
As explained, Mender supports all types of firmware and software updates. Common for all updates is that the update process, configurations, the new software binaries, etc. must be wrapped into what we call a Mender Artifact, which is basically a packaged file that contains everything the client needs to conduct the update. To ensure the update integrity it is this artifact file that needs to be signed, which means that there is nothing in your update process that is either unsigned or unencrypted.
API, GUI or CLI
To accommodate for individual preferences most of the Mender functionality can be conducted using either the API, our Web gui or command lines tools.
When is Mender a great fit
Mender is an enterprise grade OTA solution made by experienced system management engineers. We know enterprise requirements, and Mender have taken these requirements into the design, while at the same time making Mender affordable and accessible to smaller and medium sized companies. Mender is a great fit if:
- Security and robustness is important to you
- You have a large number of (mixed) devices
- Your devices run Yocto, or some Linux flavor
- You want to build a best-of-breed IoT lifecycle management stack
- You value interoperability, easy integration with other system, like your CI/CD
- You seek a long-term platform that will support future devices and OTA needs
- You like the idea of open source and dislike lock-in