EdgeX Foundry

Last updated
EdgeX Foundry
Initial release2 October 2017;6 years ago (2017-10-02) [1]
Written in C, Go
Operating system Linux, macOS, Windows, and other *nix flavors
Type Edge computing platform, IIoT
License Apache 2.0 [2]
Website www.edgexfoundry.org

EdgeX Foundry is a vendor-neutral open-source platform hosted by the Linux Foundation, providing a common framework for industrial IoT edge computing. At the core there is a set of loosely coupled microservices organized in different layers.

Contents

Features

The goal of the project is the simplification and standardization of edge computing architectures applicable in industrial IoT scenarios, where a heterogeneous set of devices, sensors, actuators and other IoT objects (the so-called South Side) produce data that should be computed, and eventually analyzed, stored or aggregated on the fog and up to the cloud (the so-called North Side). The framework is structured in different layers, each one composed of multiple micro services. The modular architecture allows users to easily scale, update and distribute the logic into different systems, improving maintainability. [3]

While core services are required for the whole platform to work, as they are unchangeable, services in other layers may be inserted or replaced in a plug and play fashion. EdgeX Foundry provides also two additional layers, focused on system administration and security.

Deployment

EdgeX Foundry is compatible with Windows, macOS and Linux systems. [4] However developers provide docker containers to ship pre-built and ready to go images of each component. Repositories provide a collection of docker-compose files that can be used to easily setup the entire platform by selecting the release version to target. [5]

Related Research Articles

Wireless sensor networks (WSNs) refer to networks of spatially dispersed and dedicated sensors that monitor and record the physical conditions of the environment and forward the collected data to a central location. WSNs can measure environmental conditions such as temperature, sound, pollution levels, humidity and wind.

<span class="mw-page-title-main">Edge computing</span> Distributed computing paradigm

Edge computing is a distributed computing paradigm that brings computation and data storage closer to the sources of data. This is expected to improve response times and save bandwidth. Edge computing is an architecture rather than a specific technology, and a topology- and location-sensitive form of distributed computing.

<span class="mw-page-title-main">Smart transducer</span>

A smart transducer is an analog or digital transducer, actuator or sensor combined with a processing unit and a communication interface.

The Internet of things (IoT) describes devices with sensors, processing ability, software and other technologies that connect and exchange data with other devices and systems over the Internet or other communications networks. The Internet of things encompasses electronics, communication and computer science engineering. Internet of things has been considered a misnomer because devices do not need to be connected to the public internet, they only need to be connected to a network, and be individually addressable.

Ceph is a free and open-source software-defined storage platform that provides object storage, block storage, and file storage built on a common distributed cluster foundation. Ceph provides completely distributed operation without a single point of failure and scalability to the exabyte level, and is freely available. Since version 12 (Luminous), Ceph does not rely on any other conventional filesystem and directly manages HDDs and SSDs with its own storage backend BlueStore and can expose a POSIX filesystem.

Web of Things (WoT) describes a set of standards by the World Wide Web Consortium (W3C) for the interoperability of different Internet of things (IoT) platforms and application domains.

Middleware is a type of computer software program that provides services to software applications beyond those available from the operating system. It can be described as "software glue".

In computing, Hazelcast is a unified real-time data platform based on Java that combines a fast data store with stream processing. It is also the name of the company developing the product. The Hazelcast company is funded by venture capital and headquartered in Palo Alto, California.

The third platform is a term coined by marketing firm International Data Corporation (IDC) for a model of a computing platform. It was promoted as inter-dependencies between mobile computing, social media, cloud computing, and information / analytics, and possibly the Internet of things. The term was in use in 2013, and possibly earlier. Gartner claimed that these interdependent trends were "transforming the way people and businesses relate to technology" and have since provided a number of reports on the topic.

Kubernetes is an open-source container orchestration system for automating software deployment, scaling, and management. Originally designed by Google, the project is now maintained by the Cloud Native Computing Foundation.

In software engineering, a microservice architecture is a variant of the service-oriented architecture structural style. It is an architectural pattern that arranges an application as a collection of loosely coupled, fine-grained services, communicating through lightweight protocols. One of its goals is that teams can develop and deploy their services independently of others. This is achieved by the reduction of several dependencies in the code base, allowing developers to evolve their services with limited restrictions from users, and for additional complexity to be hidden from users. As a consequence, organizations are able to develop software with fast growth and size, as well as use off-the-shelf services more easily. Communication requirements are reduced. These benefits come at a cost to maintaining the decoupling. Interfaces need to be designed carefully and treated as a public API. One technique that is used is having multiple interfaces on the same service, or multiple versions of the same service, so as to not disrupt existing users of the code.

<span class="mw-page-title-main">AWS Lambda</span> Serverless computing platform

AWS Lambda is an event-driven, serverless computing platform provided by Amazon as a part of Amazon Web Services. It is designed to enable developers to run code without provisioning or managing servers. It executes code in response to events and automatically manages the computing resources required by that code. It was introduced on November 13, 2014.

<span class="mw-page-title-main">Dell Technologies PowerFlex</span> Software-defined storage product

Dell Technologies PowerFlex, is a commercial software-defined storage product from Dell Technologies that creates a server-based storage area network (SAN) from local server storage using x86 servers. It converts this direct-attached storage into shared block storage that runs over an IP-based network.

SensorThings API is an Open Geospatial Consortium (OGC) standard providing an open and unified framework to interconnect IoT sensing devices, data, and applications over the Web. It is an open standard addressing the syntactic interoperability and semantic interoperability of the Internet of Things. It complements the existing IoT networking protocols such CoAP, MQTT, HTTP, 6LowPAN. While the above-mentioned IoT networking protocols are addressing the ability for different IoT systems to exchange information, OGC SensorThings API is addressing the ability for different IoT systems to use and understand the exchanged information. As an OGC standard, SensorThings API also allows easy integration into existing Spatial Data Infrastructures or Geographic Information Systems.

WebUSB is a JavaScript application programming interface (API) specification for securely providing access to USB devices from web applications.

gRPC is a cross-platform open source high performance remote procedure call (RPC) framework. gRPC was initially created by Google, which used a single general-purpose RPC infrastructure called Stubby to connect the large number of microservices running within and across its data centers from about 2001. In March 2015, Google decided to build the next version of Stubby and make it open source. The result was gRPC, which is now used in many organizations aside from Google to power use cases from microservices to the "last mile" of computing. It uses HTTP/2 for transport, Protocol Buffers as the interface description language, and provides features such as authentication, bidirectional streaming and flow control, blocking or nonblocking bindings, and cancellation and timeouts. It generates cross-platform client and server bindings for many languages. Most common usage scenarios include connecting services in a microservices style architecture, or connecting mobile device clients to backend services.

The industrial internet of things (IIoT) refers to interconnected sensors, instruments, and other devices networked together with computers' industrial applications, including manufacturing and energy management. This connectivity allows for data collection, exchange, and analysis, potentially facilitating improvements in productivity and efficiency as well as other economic benefits. The IIoT is an evolution of a distributed control system (DCS) that allows for a higher degree of automation by using cloud computing to refine and optimize the process controls.

Network eavesdropping, also known as eavesdropping attack, sniffing attack, or snooping attack, is a method that retrieves user information through the internet. This attack happens on electronic devices like computers and smartphones. This network attack typically happens under the usage of unsecured networks, such as public wifi connections or shared electronic devices. Eavesdropping attacks through the network is considered one of the most urgent threats in industries that rely on collecting and storing data. Internet users use eavesdropping via the Internet to improve information security.

The Cloud Native Computing Foundation (CNCF) is a Linux Foundation project that was founded in 2015 to help advance container technology and align the tech industry around its evolution.

References

  1. Edge, L. F. (2 October 2017). "EdgeX Foundry Announces Major Milestone with First "Barcelona" Release". LF Edge. Retrieved 5 July 2019.
  2. "EdgeX Foundry Project". GitHub .
  3. "EdgeX Foundry Wiki" . Retrieved 5 July 2019.
  4. "EdgeX Foundry Delivers Framework for IoT Edge Computing". Electronic Design. 15 March 2018. Retrieved 5 July 2019.
  5. "EdgeX Developer Scripts". Edgex Repository. Retrieved 5 July 2019.