Conference Paper

Towards Agile Management of Containerised Software at the Edge

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

The rapid development and commercial adoption of the Internet of Things (IoT) has led to ubiquitous presence of relatively powerful and network-connected devices at the network Edge. Software running on such Edge infrastructures installed at customers' premises and acting as network gateways is often required to be updated, for example, to react to emerging business requirements, contextual changes or sudden security threats. The amount of effort required to deploy and operate software components at the Edge-i.e. to perform fleet management-grows proportionally to the size and complexity of the IoT fleet, and goes beyond manual capabilities of IoT vendors, aiming to achieve economies of scale. Addressing this challenge has become possible with the recent advances in the containerisation technology supported by IoT Cloud platforms, which offered IoT vendors an automated way to deploy and manage software components at scale. Accordingly, this paper focuses on this emerging technological domain and provides an overview of the current baseline, existing challenges, and future trends.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... As a result, the container engine shares and exploits a lot of resources offered by the operating system thus reducing containers' footprint. These characteristics make container technologies suitable not only for the Cloud, but also for Edge devices [13]. ...
... We demonstrate this support using a smart home simulation called HomeIO. 13 More details on the deployment demo using the HomeIO simulation can be found in this video. 14 In the smart home system, there are IoT applications (e.g., UserCom-fortApp) that get access to sensors' data (e.g., temperature) from the smart home to make decisions and send commands to control the actuators, e.g., window blinds. ...
... If the room is bright because of daylight, it will switch off the LED-lights, and vice versa. On the other hand, if the room temperature is high, the application may need to close the window blinds to 13. https://realgames.co/home-io/ ...
... We refer to this problem as the last-mile software deployment, i.e. deployment of code to terminal IoT devices, which do not have immediate connection to the Internet, yet are able to communicate with a local edge gateway. The presented approach is part of a wider research effort on applying modeldriven engineering techniques to automate software management activities in the IoT-Edge-Cloud continuum [19], [20]. ...
... With the rapid adoption of edge computing, orchestration of containerised micro-services on edge gateways via a centralised cloud platform has recently become the state of practice, with the prominent offerings such as MS Azure IoT Edge, 4 AWS IoT Greengrass, 5 and Balena Cloud 6 available [20]. From a practical point of view, it is therefore a natural fit to implement the four-step functionality of the deployment agent as loosely coupled micro-services, packaged and provisioned as individual software containers, thus facilitating reuse, fault tolerance, and redundancy. ...
... Santo et al. [13] deliver a comprehensive overview of orchestration methods in fog computing and detail how container-based applications are orchestrated over fog infrastructures using clusters of Single Board Computers (SBCs). Dautov et al. [14] discuss technological advancements in IoT and Edge computing and emphasize the importance of containerization, messaging queues, and embedded hardware in the orchestration of containerbased applications over the Cloud-Edge continuum. While all the above studies are valuable for understanding Cloud-Edge computing environments, they do not especially consider sustainability aspects. ...
... Some challenges related to the technical and business parts such as reliability, agile software deployments, economy of scale, generic and targeted software updates, initial provisioning and context-specific configuration have been addressed [31]. Moreover, balenaCloud has been cited as a young platform to deploy full-featured container images on Edge devices remotely. ...
Article
The landscape of healthcare is experiencing a digitalization shift, transferring many medical activities to the patients’ homes, a phenomenon commonly referred to as Hospital-at-Home. While Internet of Things (IoT) devices facilitate the building of such systems, there is a need for powerful middleware that encapsulates device-to-device communication, and enables the construction of user-friendly, secure, and robust Hospital-at-Home systems. A key challenge for such middleware is to build a trustworthy and lightweight key management system allowing different devices in the system to exchange messages securely. In this paper we present a simple, easily manageable and scalable such architecture which, in addition, supports long term data protection using post-quantum cryptographic primitives. Our proposed solution utilizes a Merkle tree to enable the IoT devices to establish trust between each other automatically, even in the absence of Internet connection. We have implemented the architecture and present performance figures as well as a security analysis of our approach.
Article
Full-text available
Enabling data processing at the network edge, as close to the actual source of data as possible, is a challenging, yet realistic goal to be achieved by the Internet of Things (IoT), which still primarily relies on the Cloud for data processing. By further extending the Fog and Edge computing principles, recent research advancements enabled aggregation of computing resources from multiple edge devices to support data-intensive task processing using Big Data clustering middleware. The use of these existing solutions is hindered by the heterogeneous, dynamic, mobile, resource-constrained and time-critical nature of IoT ecosystems. More specifically, a particularly challenging goal is to discover, select, and cluster suitable edge devices - on the one hand, and decompose and allocate data-intensive tasks with respect to discovered resources - on the other. To address this challenge, this paper introduces a novel decentralised architecture for clustering heterogeneous edge devices and executing data-intensive IoT workflows. The proposed approach first breaks down a complex workflow into simpler tasks, then discovers and selects suitable edge devices, and finally allocates the tasks to the selected nodes, connecting them to recompose the original workflow. To support the clusterisation process, the proposed solution relies on a unified semantic knowledge base that provides a common vocabulary of terms for modelling task requirements and edge device properties, as well as enables automated task grouping and match-making for device discovery and selection, using built-in reasoning capabilities.
Article
Full-text available
Abstract The Internet of Things (IoT) facilitates creation of smart spaces by converting existing environments into sensor-rich data-centric cyber-physical systems with an increasing degree of automation, giving rise to Industry 4.0. When adopted in commercial/industrial contexts, this trend is revolutionising many aspects of our everyday life, including the way people access and receive healthcare services. As we move towards Healthcare Industry 4.0, the underlying IoT systems of Smart Healthcare spaces are growing in size and complexity, making it important to ensure that extreme amounts of collected data are properly processed to provide valuable insights and decisions according to requirements in place. This paper focuses on the Smart Healthcare domain and addresses the issue of data fusion in the context of IoT networks, consisting of edge devices, network and communications units, and Cloud platforms. We propose a distributed hierarchical data fusion architecture, in which different data sources are combined at each level of the IoT taxonomy to produce timely and accurate results. This way, mission-critical decisions, as demonstrated by the presented Smart Healthcare scenario, are taken with minimum time delay, as soon as necessary information is generated and collected. The proposed approach was implemented using the Complex Event Processing technology, which natively supports the hierarchical processing model and specifically focuses on handling streaming data ‘on the fly’—a key requirement for storage-limited IoT devices and time-critical application domains. Initial experiments demonstrate that the proposed approach enables fine-grained decision taking at different data fusion levels and, as a result, improves the overall performance and reaction time of public healthcare services, thus promoting the adoption of the IoT technologies in Healthcare Industry 4.0.
Article
Full-text available
While the number of cloud solutions is continuously increasing, the development and operation of large-scale and distributed cloud applications are still challenging. A major challenge is the lack of interoperability between the existing cloud solutions, which increases the complexity of maintaining and evolving complex applications potentially deployed across multiple cloud infrastructures and platforms. In this article, we show how the Cloud Modelling Framework leverages model-driven engineering and supports the DevOps ideas to tame this complexity by providing: (i) a domain-specific language for specifying the provisioning and deployment of multi-cloud applications, and (ii) a models@run-time environment for their continuous provisioning, deployment, and adaptation.
Conference Paper
Full-text available
Internet of Things (IoT) consists of smart devices that communicate with each other. It enables these devices to collect and exchange data. Besides, IoT has now a wide range of life applications such as industry, transportation, logistics, healthcare, smart environment, as well as personal, social gaming robot, and city information. Smart devices can have wired or wireless connection. As far as the wireless IoT is the main concern, many different wireless communication technologies and protocols can be used to connect the smart device such as Internet Protocol Version 6 (IPv6), over Low power Wireless Personal Area Networks (6LoWPAN), ZigBee, Bluetooth Low Energy (BLE), Z-Wave and Near Field Communication (NFC). They are short range standard network protocols, while SigFox and Cellular are Low Power Wide Area Network (LPWAN).standard protocols. This paper will be an attempt to review different communication protocols in IoT. In addition, it will compare between commonly IoT communication protocols, with an emphasis on the main features and behaviors of various metrics of power consumption security spreading data rate, and other features. This comparison aims at presenting guidelines for the researchers to be able to select the right protocol for different applications.
Article
Full-text available
The need for ever-shorter development cycles, continuous delivery, and cost savings in cloud-based infrastructures led to the rise of containers, which are more flexible than virtual machines and provide near-native performance. Among all container solutions, Docker, a complete packaging and software delivery tool, currently leads the market. This article gives an overview of the container ecosystem and discusses the Docker environment's security implications through realistic use cases. The authors define an adversary model, point out several vulnerabilities affecting current Docker usage, and discuss further research directions.
Conference Paper
Full-text available
Message oriented middleware (MOM) refers to the software infrastructure supporting sending and receiving messages between distributed systems. AMQP and MQTT are the two most relevant protocols in this context. They are extensively used for exchanging messages since they provide an abstraction of the different participating system entities, alleviating their coordination and simplifying the communication programming details. These protocols, however, have not been thoroughly tested in the context of mobile or dynamic networks like vehicular networks. In this paper we present an experimental evaluation of both protocols in such scenarios, characterizing their behavior in terms of message loss, latency, jitter and saturation boundary values. Based on the results obtained, we provide criteria of applicability of these protocols, and we assess their performance and viability. This evaluation is of interest for the upcoming applications of MOM, especially to systems related to the Internet of Things.
Conference Paper
Full-text available
High latency, network congestion and network bottleneck are some of problems in cloud computing. Moving from centralized to decentralized paradigm, Edge computing could offload the processing to the edge which indirectly reduces application response time and improves overall user experience. This paper evaluate Docker, a container based technology as a platform for Edge Computing. 4 fundamental criteria were evaluated 1) deployment and termination, 2) resource & service management, 3) fault tolerance and 4) caching. Based on our evaluation and experiment Docker provides fast deployment, small footprint and good performance which make it potentially a viable Edge Computing platform.
Conference Paper
Full-text available
Todays in-vehicle IT architectures are dominated by a large network of interactive, software driven digital microprocessors called electronic control units (ECU). However, ECUs relying on information received from open communication channels created by other ECUs or even other vehicles that are not under its control leaves the doors wide open for manipulations or misuse. Thus, especially safety-relevant ECUs need effective, automotive-capable security measures that protect the ECU and its communications efficiently and dependably. Based on a requirements engineering approach that incorporates all security-relevant automotive use cases and all distinctive automotive needs and constraints, we present an vehicular hardware security module (HSM) that enables a holistic protection of in-vehicle ECUs and their communications. We describe the hardware design, give technical details on the prototypical implementation, and provide a first evaluation on the performance and security while comparing our approach with HSMs already existing.
Article
To enable and support smart environments, a recent ICT trend promotes pushing computation from the remote Cloud as close to data sources as possible, resulting in the emergence of the Fog and Edge computing paradigms. Together with Cloud computing, they represent a stacked architecture, in which raw datasets are first pre-processed locally at the Edge and then vertically offloaded to the Fog and/or the Cloud. However, as hardware is becoming increasingly powerful, Edge devices are seen as candidates for offering data processing capabilities, able to pool and share computing resources to achieve better performance at a lower network latency—a pattern that can be also applied to Fog nodes. In these circumstances, it is important to enable efficient, intelligent, and balanced allocation of resources, as well as their further orchestration, in an elastic and transparent manner. To address such a requirement, this article proposes an OpenStack-based middleware platform through which resource containers at the Edge, Fog, and Cloud levels can be discovered, combined, and provisioned to end users and applications, thereby facilitating and orchestrating offloading processes. As demonstrated through a proof of concept on an intelligent surveillance system, by converging the Edge, Fog, and Cloud, the proposed architecture has the potential to enable faster data processing, as compared to processing at the Edge, Fog, or Cloud levels separately. This also allows architects to combine different offloading patterns in a flexible and fine-grained manner, thus providing new workload engineering patterns. Measurements demonstrated the effectiveness of such patterns, even outperforming edge clusters.
Conference Paper
Automating the deployment of IoT applications is a complex challenge, especially if multiple heterogeneous sensors, actuators, and business components have to be integrated. This demonstration paper presents a generic, standards-based system that is able to fully automatically deploy IoT applications based on the TOSCA standard, the standardized MQTT messaging protocol, the Mosquitto message broker, and the runtime environment OpenTOSCA. We describe a demonstration scenario and explain in detail how this scenario can be deployed fully automatically using the mentioned technologies.
Book
Automating the deployment of IoT applications is a complex challenge, especially if multiple heterogeneous sensors, actuators, and business components have to be integrated. This demonstration paper presents a generic, standards-based system that is able to fully automatically deploy IoT applications based on the TOSCA standard, the standardized MQTT messaging protocol, the Mosquitto message broker, and the runtime environment OpenTOSCA. We describe a demonstration scenario and explain in detail how this scenario can be deployed fully automatically using the mentioned technologies.
Article
With the increasing adoption of embedded smart devices and their involvement in different application fields, complexity may quickly grow, thus making vertical ad hoc solutions ineffective. Recently, the Internet of Things (IoT) and Cloud integration seems to be one of the winning solutions in order to opportunely manage the proliferation of both data and devices. In this paper, following the idea to reuse as much tooling as possible, we propose, with regards to infrastructure management, to adopt a widely used and competitive framework for Infrastructure-as-a-Service such as OpenStack. Therefore, we describe approaches and architectures so far preliminary implemented for enabling Cloud-mediated interactions with droves of sensor- and actuator-hosting nodes by presenting Stack4Things, a framework for Sensing-and-Actuation-as-a-Service (SAaaS). In particular, starting from a detailed requirement analysis, in this work, we focus on the subsystems of Stack4Things devoted to resource control and management as well as on those related to the management and collection of sensing data. Several use cases are presented justifying how our proposed framework can be viewed as a concrete step toward the complete fulfillment of the SAaaS vision.
Article
This issue's "Cloud Tidbit" focuses on container technology and how it's emerging as an important part of the cloud computing infrastructure. It looks at Docker, an open source project that automates the faster deployment of Linux applications, and Kubernetes, an open source cluster manager for Docker containers.
Internet of things (iot) communication protocols
  • S Al-Sarawi
  • M Anbar
  • K Alieyan
  • M Alzubaidi
S. Al-Sarawi, M. Anbar, K. Alieyan, and M. Alzubaidi, "Internet of things (iot) communication protocols," in 2017 8th International conference on information technology (ICIT). IEEE, 2017, pp. 685-690.
Towards IoT Diversity via Automated Fleet Management
  • R Dautov
  • H Song
R. Dautov and H. Song, "Towards IoT Diversity via Automated Fleet Management," in Joint Proceedings of the Workshop on Model-Driven Engineering for the Internet of Things (MDE4IoT) & of the Workshop on Interplay of Model-Driven and Component-Based Software Engineering (ModComp). CEUR, 2019, pp. 47-54.
A survey of IoT cloud platforms
  • P P Ray
P. P. Ray, "A survey of IoT cloud platforms," Future Computing and Informatics Journal, vol. 1, no. 1-2, pp. 35-46, 2016.