Edge Computer With Cloud-Native Hardware Design

DZone 's Guide to

Edge Computer With Cloud-Native Hardware Design

In this article, check out an edge computer that was specifically designed with cloud-native hardware in mind.

· IoT Zone ·
Free Resource

There are many discussions around edge computing and its adoption scenarios, but only a few offer real solutions that aligned with existing infrastructure realities. One of the key ingredients that could accelerate edge transformation is the ability to use an existing software stack for continuous deployment to the edge. A new type of hardware design that can organically coexist with the cloud ecosystem could be a solution to address the challenge. As a result, we designed the Turing Pi device, which is an edge computer with cloud-native hardware architecture.

The idea of processing data closer to the source isn't new. Though, the opportunities that IoT and machine learning open to it sound more promising than ever. 

It is doubtful that the edge computing is going to replace the cloud. More likely, the edge is going to be an extension. That's why the synergy of these two paradigms is empirical. Cloud computing has spawned many cloud-native solutions. Technologies like containers, serverless, Kubernetes changed the way developers build, deliver, and scale software. What all these technologies have in common is that they were designed for clusters of distributed resources. The idea behind the Turing Pi is a cluster of computers interconnected with Ethernet but all in one compact device. This architecture allows deploying and scaling software to the edge in the same way as in the cloud.

The concept of a cluster board is similar to a PC motherboard but with an Ethernet network instead of a PCI bus. Rather than using just one processor, the cluster board can combine multiple processors and multiple types of processors. As an example, general-purpose compute modules can work in combination with machine learning modules. This heterogeneous approach could open a wider adaptation of machine learning applications at the edge. 

Turing Pi architecture

In other words, Turing Pi is a compact, energy-efficient, out of the box RACK system. These characteristics allow placing clusters in various locations, hard to reach places and building things like mobile data centers. Striking use case of cluster computing adoption is the Chick-Fil-A restaurant chain. 

The company placed local Kubernetes clusters in more than two thousand restaurants. That helped Chick-Fil-A to build a resilient, highly available, internet-independent system. As a result, the company automated critical business processes and reduced public cloud load by processing data locally. The possibility of using cloud-native technologies at the edge helped Chick-Fil-A to accelerate innovations and get their code running in production as fast as possible. 

The Turing Pi model is mostly aimed at developers and researchers. The cluster board has mini ITX (6.7” x 6.7”) size, 1 Gbps onboard switch, GbE port, HDMI port, eight USB ports, audio jack, and works either from ATX or 12V power supply. Each of the seven cluster nodes has its own 40-pin GPIO, microSD slot, and independent power management via I2C bus. The cluster board currently supports Raspberry Pi compute modules, which are intended for industrial applications. Each compute module has 1.2 GHz quad-core ARM processor, 1 Gb RAM, up to 32 Gb eMMC storage. Raspberry Pi, by far, is the most popular single-board computer, and its colossal software ecosystem could help to lower entry points for new developers. 

Turing Pi is a new type of platform which intended to support innovations and development of new types of applications for edge computing use cases. We believe that this simple, yet robust hardware design could lay a new standard for edge computing. Please leave your thoughts and feedback in the comments below.

clusters ,edge architecture ,edge computing ,interner of things ,kubernetes ,microservice

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}