Abstract
Edge Computing is a novel computing paradigm moving server resources closer to end-devices. In the context of IoT, Edge Computing is a centric technology for enabling reliable, context-aware and low-latency services for several application areas such as smart healthcare, smart industry and smart cities. In our previous work, we have proposed a three-tier IoT Edge architecture and a virtual decentralized service platform based on lightweight microservices, called nanoservices, running on it. Together, these proposals form a basis for virtualizing the available local computational capacity and utilizing it to provide localized resource-efficient IoT services based on the applications’ need. Furthermore, locally-deployed functions are resilient to access network problems and can limit the propagation of sensitive user data for improved privacy. In this paper, we propose an automatic service and resource discovery mechanism for efficient on-the-fly deployment of nanoservices on local IoT nodes. As use case, we have selected a healthcare remote monitoring scenario, which requires high service reliability and availability in a highly dynamic environment. Based on the selected use case, we propose a real-world prototype implementation of the proposed mechanism on Raspberry Pi platform. We evaluate the performance and resource-efficiency of the proposed resource matching function with two alternative deployment approaches: containerized and non-containerized deployment. The results show that the containerized deployment is more resource-efficient, while the resource discovery and matching process takes approximately 6–17 seconds, where containerization adds only 1–1.5 seconds. This can be considered a feasible price for streamlined service management, scalability, resource-efficiency and fault-tolerance.
Highlights
During the past decade, microservice architectures (MSA) [1], [2] have superseded the monolithic service architectures as the foundation of modern cloud computing systems
The authors of this paper have developed a concept of nanoservice [9], [10], which can be seen as a miniature version of a microservice, dedicated to perform a singlepurpose granular operations, such as periodically reading sensor data and sending it further to a gateway node, performing a computational task when requested, accessing a local database, or controlling an actuator based on a request
We develop further the concept of dynamic nanoservice deployment mechanism to fulfil the needs of service requirements in a non-uniform, resource constrained, and highly dynamic local IoT environment
Summary
Microservice architectures (MSA) [1], [2] have superseded the monolithic service architectures as the foundation of modern cloud computing systems. A number of decentralized components, operated by various stakeholders, need to be seamlessly integrated to provide services based on the current need in a dynamic operation environment consisting of capacity-constrained, in many cases mobile, devices. This operational environment generates high requirements for resource discovery and matching the discovered resources to the needs of the system and the applications. We develop further the concept of dynamic nanoservice deployment mechanism to fulfil the needs of service requirements in a non-uniform, resource constrained, and highly dynamic local IoT environment.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.