Persistent Fault-Tolerant Storage at the Fog Layer
Clouds are powerful computer centers that provide computing and storage facilities that can be remotely accessed. The flexibility and cost-efficiency offered by clouds have made them very popular for business and web applications. The use of clouds is now being extended to safety-critical applicatio...
Main Author: | |
---|---|
Format: | Others |
Language: | English |
Published: |
Mälardalens högskola, Inbyggda system
2021
|
Subjects: | |
Online Access: | http://urn.kb.se/resolve?urn=urn:nbn:se:mdh:diva-55680 http://nbn-resolving.de/urn:isbn:978-91-7485-518-0 |
id |
ndltd-UPSALLA1-oai-DiVA.org-mdh-55680 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-UPSALLA1-oai-DiVA.org-mdh-556802021-09-24T05:23:49ZPersistent Fault-Tolerant Storage at the Fog LayerengBakhshi Valojerdi, ZeinabMälardalens högskola, Inbyggda systemVästerås : Mälardalen University2021DependabilityFog ComputingFault-toleranceContainerizationEmbedded SystemsInbäddad systemteknikComputer SciencesDatavetenskap (datalogi)Clouds are powerful computer centers that provide computing and storage facilities that can be remotely accessed. The flexibility and cost-efficiency offered by clouds have made them very popular for business and web applications. The use of clouds is now being extended to safety-critical applications such as factories. However, cloud services do not provide time predictability which creates a hassle for such time-sensitive applications. Moreover, delays in the data communication between clouds and the devices the clouds control are unpredictable. Therefore, to increase predictability an intermediate layer between devices and the cloud is introduced. This layer, the Fog layer, aims to provide computational resources closer to the edge of the network. However, the fog computing paradigm relies on resource-constrained nodes, creating new potential challenges in resource management, scalability, and reliability. Solutions such as lightweight virtualization technologies can be leveraged for solving the dichotomy between performance and reliability in fog computing. In this context, container-based virtualization is a key technology providing lightweight virtualization for cloud computing that can be applied in fog computing as well. Such container-based technologies provide fault tolerance mechanisms that improve the reliability and availability of application execution. By the study of a robotic use-case, we have realized that persistent data storage for stateful applications at the fog layer is particularly important. In addition, we identified the need to enhance the current container orchestration solution to fit fog applications executing in container-based architectures. In this thesis, we identify open challenges in achieving dependable fog platforms. Among these, we focus particularly on scalable, lightweight virtualization, auto-recovery, and re-integration solutions after failures in fog applications and nodes. We implement a testbed to deploy our use-case on a container-based fog platform and investigate the fulfillment of key dependability requirements. We enhance the architecture and identify the lack of persistent storage for stateful applications as an important impediment for the execution of control applications. We propose a solution for persistent fault-tolerant storage at the fog layer, which dissociates storage from applications to reduce application load and separates the concern of distributed storage. Our solution includes a replicated data structure supported by a consensus protocol that ensures distributed data consistency and fault tolerance in case of node failures. Finally, we use the UPPAAL verification tool to model and verify the fault tolerance and consistency of our solution. Licentiate thesis, comprehensive summaryinfo:eu-repo/semantics/masterThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:mdh:diva-55680urn:isbn:978-91-7485-518-0Mälardalen University Press Licentiate Theses, 1651-9256 ; 309application/pdfinfo:eu-repo/semantics/openAccess |
collection |
NDLTD |
language |
English |
format |
Others
|
sources |
NDLTD |
topic |
Dependability Fog Computing Fault-tolerance Containerization Embedded Systems Inbäddad systemteknik Computer Sciences Datavetenskap (datalogi) |
spellingShingle |
Dependability Fog Computing Fault-tolerance Containerization Embedded Systems Inbäddad systemteknik Computer Sciences Datavetenskap (datalogi) Bakhshi Valojerdi, Zeinab Persistent Fault-Tolerant Storage at the Fog Layer |
description |
Clouds are powerful computer centers that provide computing and storage facilities that can be remotely accessed. The flexibility and cost-efficiency offered by clouds have made them very popular for business and web applications. The use of clouds is now being extended to safety-critical applications such as factories. However, cloud services do not provide time predictability which creates a hassle for such time-sensitive applications. Moreover, delays in the data communication between clouds and the devices the clouds control are unpredictable. Therefore, to increase predictability an intermediate layer between devices and the cloud is introduced. This layer, the Fog layer, aims to provide computational resources closer to the edge of the network. However, the fog computing paradigm relies on resource-constrained nodes, creating new potential challenges in resource management, scalability, and reliability. Solutions such as lightweight virtualization technologies can be leveraged for solving the dichotomy between performance and reliability in fog computing. In this context, container-based virtualization is a key technology providing lightweight virtualization for cloud computing that can be applied in fog computing as well. Such container-based technologies provide fault tolerance mechanisms that improve the reliability and availability of application execution. By the study of a robotic use-case, we have realized that persistent data storage for stateful applications at the fog layer is particularly important. In addition, we identified the need to enhance the current container orchestration solution to fit fog applications executing in container-based architectures. In this thesis, we identify open challenges in achieving dependable fog platforms. Among these, we focus particularly on scalable, lightweight virtualization, auto-recovery, and re-integration solutions after failures in fog applications and nodes. We implement a testbed to deploy our use-case on a container-based fog platform and investigate the fulfillment of key dependability requirements. We enhance the architecture and identify the lack of persistent storage for stateful applications as an important impediment for the execution of control applications. We propose a solution for persistent fault-tolerant storage at the fog layer, which dissociates storage from applications to reduce application load and separates the concern of distributed storage. Our solution includes a replicated data structure supported by a consensus protocol that ensures distributed data consistency and fault tolerance in case of node failures. Finally, we use the UPPAAL verification tool to model and verify the fault tolerance and consistency of our solution. |
author |
Bakhshi Valojerdi, Zeinab |
author_facet |
Bakhshi Valojerdi, Zeinab |
author_sort |
Bakhshi Valojerdi, Zeinab |
title |
Persistent Fault-Tolerant Storage at the Fog Layer |
title_short |
Persistent Fault-Tolerant Storage at the Fog Layer |
title_full |
Persistent Fault-Tolerant Storage at the Fog Layer |
title_fullStr |
Persistent Fault-Tolerant Storage at the Fog Layer |
title_full_unstemmed |
Persistent Fault-Tolerant Storage at the Fog Layer |
title_sort |
persistent fault-tolerant storage at the fog layer |
publisher |
Mälardalens högskola, Inbyggda system |
publishDate |
2021 |
url |
http://urn.kb.se/resolve?urn=urn:nbn:se:mdh:diva-55680 http://nbn-resolving.de/urn:isbn:978-91-7485-518-0 |
work_keys_str_mv |
AT bakhshivalojerdizeinab persistentfaulttolerantstorageatthefoglayer |
_version_ |
1719484777645473792 |