Orchestration Tools For Efficient Deployment of IoT Applications In Fog Computing: A Systematic Review

  • TL;DR
  • Abstract
  • Literature Map
  • Similar Papers
TL;DR

This systematic review examines container orchestration tools for deploying IoT applications in fog computing, highlighting their role in managing lightweight microservices amid increasing data streams. It emphasizes the need to meet IoT-specific requirements and proposes future research directions to address current gaps in performance evaluation and tool selection.

Abstract
Translate article icon Translate Article Star icon

Internet of Things (IoT) is the developing technology that enables devices to communicate without human interaction. IoT utilizes cloud computing services to collect and process data for IoT devices and to manage the device remotely. Cloud computing is not efficient enough to handle the fast stream of data produced by the IoT, therefore scaling up IoT applications to meet demands of high peak becomes easier and highly automated in fog computing. Containers are mostly used as virtualization solutions for IoT in fog computing. It enables the execution of small microservices to large applications. However, the rise of many lightweight containers has resulted in new application architectures and fundamentally changing how applications are deployed and visualized. Due to this change, container orchestration tools were proposed. These tools allow users to coordinate and manage containers. However, container orchestration tools need to meet the requirements of IoT applications and constraints imposed on the nodes in fog. This paper presents a systematic literature review on the selection of orchestration tools for the efficient deployment of IoT applications in fog computing. Moreover, the performance of IoT applications must be considered by applying different metrics. This paper aims to propose potential research directions to address identified gaps in the selection of orchestration tools.

Similar Papers
  • Conference Article
  • Cite Count Icon 98
  • 10.1109/compsac.2017.248
Towards Container Orchestration in Fog Computing Infrastructures
  • Jul 1, 2017
  • Saiful Hoque + 4 more

The Cloud Computing paradigm promoted the outsourcing of IT infrastructure and enterprise applications paving the way to save costs of building and maintaining computing infrastructures on-premise. In this environment, scale up of applications to attend demands in high peaks become easier and highly automated. Virtualization was a key technology to enable these characteristics. Nowadays, Container technology became popular as an alternative to Virtual Machines, and is being widely applied, as a consequence, Orchestration tools are being extensively applied in the Cloud environment. Despite its success, when it comes to the Internet of Things (IoT), Cloud Computing falls short to meet several requirements. Fog Computing appear as a complimentary technology to the Cloud to deliver the missing requirements in the IoT scene. Managing services deployed in a Fog Environment is a complex task and infrastructure management and orchestration tools can make it seamless. In this paper, we evaluate how Containers can affect the overall performance of applications in Fog Nodes. We analyze different Container Orchestration tools and how they meet Fog requirements to run applications. We also propose a Container Orchestration Framework for Fog Computing infrastructures.

  • Conference Article
  • Cite Count Icon 39
  • 10.23919/indiacom54597.2022.9763171
A Comparative Analysis of Container Orchestration Tools in Cloud Computing
  • Mar 23, 2022
  • Anshita Malviya + 1 more

Cloud Computing is an emerging technology that is used not only by developers but also by end-users. It has vital importance in the Information Technology (IT) industries as its future would create a great transition from conventional IT services. These days, containerization in cloud computing has become an important research area. The selection of container orchestration tools is one of the difficult tasks for the organizations involved in the management of the vast number of containers. These tools have their strengths, weaknesses, and functionalities which need to be considered. This paper presents a comparative analysis of the container orchestration tools. This analysis would help the professionals to decide whether they need an orchestrator bound to a single technology or an orchestrator which provides the independent solution. In this paper, four popular orchestration tools viz., Kubernetes, Docker Swarm, Mesos, and Redhat OpenShift are analyzed on various parameters viz., security, deployment, stability, scalability, cluster installation, and learning curve. We observed that Kubernetes has the best scheduling features whereas Docker Swarm is easy to use. We also found that Mesos has good scalability whereas OpenShift is a highly secure orchestration tool.

  • Conference Article
  • Cite Count Icon 41
  • 10.1109/icbk.2019.00033
A Performance Comparison of Cloud-Based Container Orchestration Tools
  • Nov 1, 2019
  • Yao Pan + 4 more

Compared to the traditional approach of using virtual machines as the basis for the development and deployment of applications running in Cloud-based infrastructures, container technology provides developers with a higher degree of portability and availability, allowing developers to build and deploy their applications in a much more efficient and flexible manner. A number of tools have been proposed to orchestrate complex applications comprising multiple containers requiring continuous monitoring and management actions to meet application-oriented and non-functional requirements. Different container orchestration tools provide different features that incur different overheads. As such, it is not always easy for developers to choose the orchestration tool that will best suit their needs. In this paper we compare the benefits and overheads incurred by the most popular open source container orchestration tools currently available, namely: Kubernetes and Docker in Swarm mode. We undertake a number of benchmarking exercises from well-known benchmarking tools to evaluate the performance overheads of container orchestration tools and identify their pros and cons more generally. The results show that the overall performance of Kubernetes is slightly worse than that of Docker in Swarm mode. However, Docker in Swarm mode is not as flexible or powerful as Kubernetes in more complex situations.

  • Conference Article
  • Cite Count Icon 38
  • 10.1109/wf-iot48130.2020.9221340
Kubernetes in Fog Computing: Feasibility Demonstration, Limitations and Improvement Scope : Invited Paper
  • Jun 1, 2020
  • Paridhika Kayal

Fog computing (also known as edge computing) is a decentralized computing architecture that seeks to minimize service latency and average response time in IoT applications by providing compute and network services physically close to end-users. Fog environment consists of a network of fog nodes and IoT applications are composed of containerized microservices communicating with each other. Due to limited resources of fog nodes, it is often not possible to deploy all the containers of an application on a single fog node. Therefore, communicating containers need to be distributed on multiple fog nodes. Distribution and management of containerized IoT applications is always a critical issue to the system performance in a fog environment. Kubernetes, an open-source system, has grown into a container orchestration standard by simplifying the deployment and management of containerized applications. Despite the progress made by the academia and industry with respect to container management and the wide-scale acceptance of Kubernetes in cloud environments, container management in fog environment is still in the early stage in terms of research and practical deployment. This article aims to fill this gap by analyzing the expediency of Kubernetes container orchestration tool in the fog computing model. The paper also highlights limitations with the current Kubernetes approach and provide ideas for further research to adapt to the needs of the fog environment. Lastly, we provide experiments that demonstrate the feasibility and industrial practicality of deploying and managing containerized IoT applications in the fog computing environment.

  • Research Article
  • Cite Count Icon 265
  • 10.1016/j.comcom.2021.09.003
Edge and fog computing for IoT: A survey on current research activities & future directions
  • Sep 23, 2021
  • Computer Communications
  • Mohammed Laroui + 5 more

Edge and fog computing for IoT: A survey on current research activities & future directions

  • Book Chapter
  • Cite Count Icon 4
  • 10.1007/978-3-031-08254-2_9
Fog Computing Security and Privacy for Internet of Things (IoT) and Industrial Internet of Things (IIoT) Applications: State of the Art
  • Jan 1, 2022
  • Yasmine Harbi + 2 more

Over the past decade, moving computing and storage processes into cloud data centers has been the trend. However, cloud computing is currently encountering different challenges to meet new requirements of the next wave of the Internet, namely, the Internet of Things (IoT). Fog computing is an emerging paradigm that extends cloud computing services to the edge of the network. It is an efficient architecture that supports the IoT requirements and enables a new breed of IoT applications such as Industrial IoT (IIoT) and Industry 4.0. Nevertheless, the characteristics of fog computing arise several security concerns and challenges. In this chapter, we introduce the fog computing architecture and features that are critical for IoT networks. We present common applications of fog computing paradigm in the context of IoT and provide a classification of these applications. Then, we discuss security issues of fog computing toward IoT applications. Finally, we illustrate security challenges that need to be addressed in fog-enabled IoT deployments.KeywordsIoTIIoTIndustry 4.0Fog computingSecurity attacks

  • PDF Download Icon
  • Research Article
  • Cite Count Icon 13
  • 10.3390/app12010140
EdgeX over Kubernetes: Enabling Container Orchestration in EdgeX
  • Dec 23, 2021
  • Applied Sciences
  • Seunghwan Lee + 4 more

With the exponential growth of the Internet of Things (IoT), edge computing is in the limelight for its ability to quickly and efficiently process numerous data generated by IoT devices. EdgeX Foundry is a representative open-source-based IoT gateway platform, providing various IoT protocol services and interoperability between them. However, due to the absence of container orchestration technology, such as automated deployment and dynamic resource management for application services, EdgeX Foundry has fundamental limitations of a potential edge computing platform. In this paper, we propose EdgeX over Kubernetes, which enables remote service deployment and autoscaling to application services by running EdgeX Foundry over Kubernetes, which is a product-grade container orchestration tool. Experimental evaluation results prove that the proposed platform increases manageability through the remote deployment of application services and improves the throughput of the system and service quality with real-time monitoring and autoscaling.

  • Book Chapter
  • Cite Count Icon 22
  • 10.1007/978-981-19-3391-2_1
Container Orchestration in Edge and Fog Computing Environments for Real-Time IoT Applications
  • Sep 2, 2022
  • Zhiyu Wang + 3 more

Resource management is the principal factor to fully utilize the potential of Edge/Fog computing to execute real-time and critical IoT applications. Although some resource management frameworks exist, the majority are not designed based on distributed containerized components. Hence, they are not suitable for highly distributed and heterogeneous computing environments. Containerized resource management frameworks such as FogBus2 enable efficient distribution of framework’s components alongside IoT applications’ components. However, the management, deployment, health check, and scalability of a large number of containers are challenging issues. To orchestrate a multitude of containers, several orchestration tools are developed. But, many of these orchestration tools are heavyweight and have a high overhead, especially for resource-limited Edge/Fog nodes. Thus, for hybrid computing environments, consisting of heterogeneous Edge/Fog and/or Cloud nodes, lightweight container orchestration tools are required to support both resource-limited resources at the Edge/Fog and resource-rich resources at the Cloud. Thus, in this paper, we propose a feasible approach to build a hybrid and lightweight cluster based on K3s, for the FogBus2 framework that offers containerized resource management framework. This work addresses the challenge of creating lightweight computing clusters in hybrid computing environments. It also proposes three design patterns for the deployment of the FogBus2 framework in hybrid environments, including (1) Host Network, (2) Proxy Server, and (3) Environment Variable. The performance evaluation shows that the proposed approach improves the response time of real-time IoT applications up to 29% with acceptable and low overhead.KeywordsEdge computingFog computingContainer orchestrationInternet of ThingsResource management framework

  • Book Chapter
  • Cite Count Icon 1
  • 10.1002/9781119701460.ch6
IoTCloud and Fog Computing
  • Dec 11, 2020
  • Muhammad Azhar Iqbal + 3 more

Internet of Things (IoT) applications offer services, which cover all aspects of human life, i.e. home and building automation, smart cities, city waste management, smart grid, smart health, intelligent traffic management, health monitoring, emergency and surveillance services, supply chain, retail, smart industry, etc. This chapter provides details related to Cloud and Fog computing with reference to their implications in IoT systems. Fog computing acts as a bridge between smart end‐user devices and IoT Cloud to enhance the performance of IoT applications, which require low latency real‐time response. Several IoT applications can be considered as Fog‐based applications due to their substantial dependency on Fog infrastructure. The chapter discusses few scenarios and applications related to vehicles with Fog computing. Fog computing helps to distribute safety and infotainment information in the intelligent traffic system. The intelligent decision support system can be implemented using Fog computing to improve drivers' safety.

  • Research Article
  • Cite Count Icon 561
  • 10.1109/access.2018.2866491
Fog Computing: Survey of Trends, Architectures, Requirements, and Research Directions
  • Jan 1, 2018
  • IEEE Access
  • Ranesh Kumar Naha + 6 more

Emerging technologies such as the Internet of Things (IoT) require latency-aware computation for real-time application processing. In IoT environments, connected things generate a huge amount of data, which are generally referred to as big data. Data generated from IoT devices are generally processed in a cloud infrastructure because of the on-demand services and scalability features of the cloud computing paradigm. However, processing IoT application requests on the cloud exclusively is not an efficient solution for some IoT applications, especially time-sensitive ones. To address this issue, Fog computing, which resides in between cloud and IoT devices, was proposed. In general, in the Fog computing environment, IoT devices are connected to Fog devices. These Fog devices are located in close proximity to users and are responsible for intermediate computation and storage. One of the key challenges in running IoT applications in a Fog computing environment are resource allocation and task scheduling. Fog computing research is still in its infancy, and taxonomy-based investigation into the requirements of Fog infrastructure, platform, and applications mapped to current research is still required. This survey will help the industry and research community synthesize and identify the requirements for Fog computing. This paper starts with an overview of Fog computing in which the definition of Fog computing, research trends, and the technical differences between Fog and cloud are reviewed. Then, we investigate numerous proposed Fog computing architectures and describe the components of these architectures in detail. From this, the role of each component will be defined, which will help in the deployment of Fog computing. Next, a taxonomy of Fog computing is proposed by considering the requirements of the Fog computing paradigm. We also discuss existing research works and gaps in resource allocation and scheduling, fault tolerance, simulation tools, and Fog-based microservices. Finally, by addressing the limitations of current research works, we present some open issues, which will determine the future research direction for the Fog computing paradigm.

  • Research Article
  • Cite Count Icon 21
  • 10.1016/j.jpdc.2024.104837
Proactive auto-scaling technique for web applications in container-based edge computing using federated learning model
  • Jan 9, 2024
  • Journal of Parallel and Distributed Computing
  • Javad Dogani + 1 more

Proactive auto-scaling technique for web applications in container-based edge computing using federated learning model

  • Book Chapter
  • Cite Count Icon 6
  • 10.1007/978-981-19-1585-7_8
IoT Network Used in Fog and Cloud Computing
  • Jan 1, 2022
  • Umang Kant + 1 more

The ever-changing rapid paradigm shift from one technology to another has led to extensive research in interdisciplinary fields. The different technologies are enhancing and transmuting at such an exponential rate that it has become important to effectively manage all the data and related environments associated with them. The aim of this chapter is to contribute to understanding the significance of fog and cloud computing and the related Internet of Things (IoT) networks supporting these technologies in real-time applications. This chapter provides insights on how the IoT frameworks provide increased scalability, increased performance, and immediate pay-as-you-go payment options to both the providers and consumers. This chapter aims to provide detailed information about IoT networks which can be employed in cloud and fog computing. The chapter seeks to provide the readers a brief description on introduction of IoT, IoT networks, cloud computing, and fog computing and their integration with IoT. A detailed comparison between cloud computing and fog computing paradigms throws light on the distinctions between the two paradigms. This chapter highlights the implementation of fog and cloud computing using IoT in detail and also highlights the security issues, threats and concerns related to the discussed technologies and their implementations. We have also explored the IoT network protocols used for the implementation of fog computing and cloud computing using IoT, along with few case studies which underline the applications and examples with respect to the technologies. Since the power and potential of IoT is being realized, major business giants are investing heavily in the technology as the gains are long termed. As per recent reports, the fog computing market is expected to reach an approximate 18 to 20 billion $ by 2022. Also, fog computing has become a necessity only for IoT and cloud, but also for embedded artificial intelligence, it has become an integral part of major interdisciplinary works. And since the technology is acting as the backbone of the industries, it cannot be ignored now and it is here to stay. It is expected that fog computing is anticipated to embark into already existing software, devices as Fog as Service (FaaS).

  • PDF Download Icon
  • Research Article
  • Cite Count Icon 18
  • 10.3390/s21041378
Empirical Performance and Energy Consumption Evaluation of Container Solutions on Resource Constrained IoT Gateways
  • Feb 16, 2021
  • Sensors (Basel, Switzerland)
  • Syed M Raza + 4 more

Containers virtually package a piece of software and share the host Operating System (OS) upon deployment. This makes them notably light weight and suitable for dynamic service deployment at the network edge and Internet of Things (IoT) devices for reduced latency and energy consumption. Data collection, computation, and now intelligence is included in variety of IoT devices which have very tight latency and energy consumption conditions. Recent studies satisfy latency condition through containerized services deployment on IoT devices and gateways. They fail to account for the limited energy and computing resources of these devices which limit the scalability and concurrent services deployment. This paper aims to establish guidelines and identify critical factors for containerized services deployment on resource constrained IoT devices. For this purpose, two container orchestration tools (i.e., Docker Swarm and Kubernetes) are tested and compared on a baseline IoT gateways testbed. Experiments use Deep Learning driven data analytics and Intrusion Detection System services, and evaluate the time it takes to prepare and deploy a container (creation time), Central Processing Unit (CPU) utilization for concurrent containers deployment, memory usage under different traffic loads, and energy consumption. The results indicate that container creation time and memory usage are decisive factors for containerized micro service architecture.

  • Conference Article
  • Cite Count Icon 4
  • 10.1109/cscwd57460.2023.10152549
Cost-Optimized Microservice Deployment for IoT Application in Cloud-Edge Collaborative Environment
  • May 24, 2023
  • Xiaoyuan Zhang + 4 more

With the popularity of cloud native and DevOps, container technology is widely used and combined with microservices. The deployment of container-based microservices in distributed cloud-edge infrastructure requires suitable strategies to ensure the quality of service for users. However, the existing container orchestration tools cannot flexibly select the best deployment location according to the user’s cost budget, and are insufficient in personalized deployment solutions. From the perspective of application providers, this paper considers the location distribution of users, application dependencies, and server price differences, and proposes a genetic algorithm-based Internet-of-Things (IoT) application deployment strategy for personalized cost budgets. The application deployment problem is defined as an optimization problem that minimizes user service latency under cost constraints. This problem is an NP-hard problem, and genetic algorithm is introduced to solve the optimization problem effectively and improve the deployment efficiency. The proposed algorithm is compared with four baseline algorithms, Time-Greedy, Cost-Greedy, Random and PSO, using real datasets and some synthetic datasets. The results show that the proposed algorithm outperforms other competing baseline algorithms.

  • Research Article
  • Cite Count Icon 93
  • 10.1016/j.iot.2023.100866
A comprehensive review on Internet of Things application placement in Fog computing environment
  • Jul 1, 2023
  • Internet of Things
  • Hemant Kumar Apat + 2 more

A comprehensive review on Internet of Things application placement in Fog computing environment

Save Icon
Up Arrow
Open/Close
Notes

Save Important notes in documents

Highlight text to save as a note, or write notes directly

You can also access these Documents in Paperpal, our AI writing tool

Powered by our AI Writing Assistant