EdgeX Foundry, the common framework for IoT edge computing, now available as a snap
by Tony Espy on 25 February 2019
EdgeX Foundry is now available as a snap, making it available to millions of Linux users and developers via the ever-expanding Snap Store.
EdgeX Foundry is a vendor-neutral open source project hosted by The Linux Foundation building a common open framework for IoT edge computing. EdgeX provides the ability to extract data from a multitude of IoT devices and sensors, providing short term persistence, local analytics, and the ability to export device and sensor data using REST, MQTT, 0MQ, or other protocols, to client endpoints of choice.
In adopting the universal Linux app packaging format, EdgeX Foundry will make its IoT Edge platform available to an ever-growing community of Linux developers, including those on Debian, Fedora, Manjaro, OpenSUSE, Zorin and Ubuntu. Automatic updates and rollback capabilities are staples of snap software, meaning EdgeX Foundry users will always have the best and latest version running.
Snaps are containerised software packages, designed to work perfectly and securely within any Linux environment; across desktop, the cloud and IoT devices. Thousands of snaps have been created since the first one in 2016. EdgeX Foundry joins Plex, Spotify, Skype, and Slack, who have all benefited from snaps’ update and security features.
“Canonical’s Snap Store provides an easy and secure way to distribute our software to an increasing number of developers and users,” said Jim White, Vice Chair – Technical Steering Committee at EdgeX Foundry. “What’s more, snaps help cater to EdgeX Foundry developers, who benefit from snap confinement, binary delta downloads, ease of deployment/configuration, and sophisticated service management.”
The EdgeX snap is fully confined, which means snapd ensures that applications and services provided by the EdgeX snap may only use hardware and system resources that have been explicitly granted to the snap. Binary delta downloads is a feature which benefits users of snaps by lowering the bandwidth required for software updates. Ease of deployment/configuration stems from the fact that the snap provides all of the EdgeX reference services as a single package. This makes it trivial to build an appliance-like image using the EdgeX snap with Ubuntu Core.
Finally, it also should be noted that all of the EdgeX reference services in the snap are deployed as system services. This ensures that EdgeX will be automatically started when a device boots, services can be individually managed (i.e. enabled/disabled/started/stopped/restarted), and services will be automatically restarted by the system if they exit due to an error condition.