You are here
Edge Computing in IIoT - Part 2
Operating more than one application simultaneously in an IoT environment, especially when it comes to establishing connectivity between the core network and the small subnetworks at the edge, can turn out to be quite complicated. Different components may clash creating maintenance problems.
Two main technological solutions are available today to address the issue of running multiple IoT applications: Virtual machines and Dockers.
Compartmentalizing Applications with Virtual Machines
In the last couple of years, IoT communications have been increasingly using virtual machines to run more than one application on the same hardware. The most noticeable advantage of these machines is their ability to create almost full isolation by compartmentalizing applications and, thus, minimize conflicts.
In addition, by providing high degree of isolation virtual machines allow the use of a different operating systems for each application. These operating systems do not necessarily have to be identical to the one run by the host.
However, efficiency comes at a cost. Virtual machines have one major disadvantage – they consume plenty of gigabytes. Absorbing much memory and processing power eventually comes at the expense of the applications themselves.
Docker Containers – an Economical and Flexible Solution
Linux Docker containers operate in a different manner. They allocate a specific segment of the operating system’s resources for each application. By doing so, they offer some key advantages:
* Cost-effectiveness – Docker containers consume much less resources compared to virtual machines and, thus, provide a cost effective solution for IoT operators.
* Effective management – With Docker containers, applications can be arranged in separate components (e.g., in-memory cache, databases). Each component can be modified, updated or scaled independently allowing greater ease of operation.
* Flexible edge computing – Applications can be easily moved from the cloud to the edge of the network.
However, Docker containers have their own inherent flaws. Since applications running on them are related to the same operating system, the isolation process is less efficient compared to virtual machines. This also lowers their performance in terms of bare-metal speed.
In addition, Docker containers are not persistent. Unlike virtual machines, they do not have their own file system. As a result, once they are restarted, they need to be rebuilt.
Lastly, Docker containers pose a security challenge. An attack carried out against an operating system put all containers that run on it at a serious risk.
LXD - Optimized for IIoT Networks
The LXD is an upgrade of Linux containers. Its unique features optimize it for industrial IoT gateways, including an advanced command-line interface, high scalability and enhanced security mechanism. LXDs also enable smooth live migration and easy integration with cloud platforms.
Most importantly, LXDs can function as lightweight virtual machines while each container operates with its own full operating system compared to Docker containers which work through one operating system. This feature enables Dockers to run inside LXD containers.
Edge computing is gaining traction in IIoT to minimize latency, reduce costs and footprint and maximize efficiency. Choosing the right virtualization technology is key for such deployments and LXD containers offer the most cost effective, optimized solution for IIoT gateways.
If you’ve still haven’t seen our Edge Computing in IIoT presentation, check it out here.
Check out our previous post on the subject – Edge Computing in IIoT Part 1.
About RAD's Blog
We’ll be blogging on a wide range of hot topics affecting service providers and critical infrastructure network operators. Our resident experts will be discussing vCPE, Cyber Security, 5G, Industrial IoT and much, much more.