Using TOSCA for Automating the Deployment of Iot Environments

Using TOSCA for Automating the Deployment of Iot Environments

Internet of Things Out of the Box: Using TOSCA for Automating the Deployment of IoT Environments Ana C. Franco da Silva1, Uwe Breitenbücher2, Pascal Hirmer1, Kálmán Képes2, Oliver Kopp1, Frank Leymann2, Bernhard Mitschang1 and Ronald Steinke3 1Institute for Parallel and Distributed Systems, University of Stuttgart, Stuttgart, Germany 2Institute of Architecture of Application Systems, University of Stuttgart, Stuttgart, Germany 3Next Generation Network Infrastructures, Fraunhofer FOKUS, Berlin, Germany Keywords: Internet of Things, TOSCA, Application Deployment, Device Software. Abstract: The automated setup of Internet of Things environments is a major challenge due to the heterogeneous nature of the involved physical components (i.e., devices, sensors, actuators). In general, IoT environments consist of (i) physical hardware components, (ii) IoT middlewares that bind the hardware to the digital world, and (iii) IoT applications that interact with the physical devices through the middlewares (e.g., for monitoring). Setting up each of these requires sophisticated means for software deployment. In this paper, we enable such a means by introducing an approach for automated deployment of entire IoT environments using the Topology and Orchestration Specification for Cloud Applications standard. Based on topology models, all components involved in the IoT environment (devices, IoT middlewares, applications) can be set up automatically. Moreover, to enable interchangeability of IoT middlewares, we show how they can be used as a service to deploy them individually and on-demand for separate use cases. This enables provisioning whole IoT environments out-of- the-box. To evaluate the approach, we present three case studies giving insights in the technical details. 1 INTRODUCTION abstracting the complexity of the devices (Mineraud et al., 2016). Third, although the connection between The Internet of Things (IoT) paradigm has received an IoT application and the IoT middleware is typically great attention in the last years. It relies on the in- hard wired, an IoT application might require different terconnection and cooperation of so-called smart de- middlewares to fulfill its goals due to different use vices, attached with sensors and actuators, that are cases and business constraints. Therefore, an impor- able to sense the state of an environment and to adapt tant aspect for the setup of IoT environment is also it through their actuators (Atzori et al., 2010; Gubbi the interchangeability of different IoT middlewares. A et al., 2013). Such smart devices provide the founda- high interchangeability enables building more flexible tion for the existence of a multitude of so-called IoT IoT applications, tailor-made for specific use cases. applications. An example of such an IoT application Furthermore, it is important that the setup of IoT envi- is a smart home, which is able to automatically regu- ronments is done in an automated manner because a late its temperature based on sensor data. Using such manual setup is time-consuming and error-prone due IoT applications requires setting up the whole IoT en- to the high complexity and dynamic in the IoT. vironment consisting of smart devices, middlewares In this paper, we show how the Topology and to bind the devices to IoT applications, and the IoT Orchestration Specification for Cloud Applications applications themselves. However, the setup of such (TOSCA) standard (OASIS, 2013) can be used to fully IoT environments comes with major challenges. First, automate the setup of entire IoT environments includ- physical hardware components (i.e., devices, sensors, ing (i) physical hardware components, (ii) IoT middle- actuators) are highly heterogeneous since they em- wares that bind the hardware to the digital world, and ploy different technologies, protocols, and data mod- (iii) IoT applications that interact with the physical els. Second, heterogeneity emerges among the many devices through the middlewares. Using our approach, existing IoT middlewares, which are employed to bind we can set up entire IoT environments out-of-the-box, the physical hardware to higher-level IoT applications, i.e., once the IoT environment is modeled in TOSCA, 330 Silva, A., Breitenbücher, U., Hirmer, P., Képes, K., Kopp, O., Leymann, F., Mitschang, B. and Steinke, R. Internet of Things Out of the Box: Using TOSCA for Automating the Deployment of IoT Environments. DOI: 10.5220/0006243303580367 In Proceedings of the 7th International Conference on Cloud Computing and Services Science (CLOSER 2017), pages 330-339 ISBN: 978-989-758-243-1 Copyright © 2017 by SCITEPRESS – Science and Technology Publications, Lda. All rights reserved Internet of Things Out of the Box: Using TOSCA for Automating the Deployment of IoT Environments Deployment Artifact (Web Shop) (Database) WAR Create Deploy Database Web Shop start, stop (WebServer) (DBMS) deployWAR Install Install Web DBMS Server installPkg (OperatingSystem) (OperatingSystem) execScript Provision Provision VM & OS VM & OS createVM (CloudProviderVM) (CloudProviderVM) terminate Implemented by Implementation Artifact connectsTo hostedOn Figure 1: left: example of a TOSCA build plan, right: the corresponding TOSCA Topology Template to set up a web shop. this model can be reused to set up the IoT environ- physical components and IoT applications, while main- ment without further configuration or modifications in taining low-costs for the deployment of entire IoT en- the model. In particular, we present how the generic vironments (Botta et al., 2016). TOSCA concepts can be used for modeling IoT sce- The OASIS standard TOSCA enables model- narios, their technologies and how heterogeneous IoT ing, provisioning, and management of cloud applica- middleware systems can be deployed, wired, and ex- tions (Binz et al., 2014). As indicated by its name, the changed by a standard-based TOSCA runtime environ- Topology and Orchestration Specification for Cloud ment. Moreover, the paper shows how IoT middleware Applications consists of two parts: (i) the topology can be used as a service and how it can be deployed and (ii) the orchestration of cloud applications. The individually and on-demand for separate use cases. We topology describes the structure of the application, i.e., additionally present three case studies giving insights its software, platform, and infrastructure components. in the technical details of our approach. Consequently, TOSCA unifies the paradigms software- The remainder of this paper is as follows: Sect. 2 as-a-service, platform-as-a-service, and infrastructure- introduces the background of our approach. Sect. 3 as-a-service. In these topologies – called Topology presents how to set up entire IoT environments out- Templates in TOSCA – software components (e.g., of-the-box using TOSCA. In Sect. 4, we evaluate our databases, application servers) are represented as so- approach based on three case studies. Finally, Sect. 5 called Node Templates, and their connections, e.g., describes related work and Sect. 6 gives a summary of that one component is hosted on another component, the paper and an outlook on future work. as Relationship Templates. Each template has a type. Three Relationship Types are used in our approach: (i) the Relationship Type hostedOn, (ii) the Relationship Type connectsTo, describing a communication channel 2 BACKGROUND between two software components, e.g., to access a database, and (iii) the Relationship Type dependsOn, Cloud computing is a recently emerged paradigm for describing that one software component depends on hosting and delivering services over the Internet (Ley- another one (e.g., software packages, libraries), mean- mann et al., 2016; Zhang et al., 2010), which has been ing that it cannot be operated without it. Node and increasingly employed together with the IoT paradigm Relationship Templates can be attached with proper- in order to provide IoT environments with properties ties (e.g., user credentials). Implementation Artifacts such as scalability and interoperability. Cloud com- (IA) and Deployment Artifacts (DA) can be linked to puting can enable a rapid setup and integration of new Node Types and Relationship Types. Implementation 331 CLOSER 2017 - 7th International Conference on Cloud Computing and Services Science IoT Application Stack IoT Middleware Stack Smart Device Stack IoT Application IoT Middleware Device Software (e.g. dashboard) (e.g., Message Broker) (e.g., Python Script) Device Software Software Software Dependency (DA) Dependency Operating System Operating System Operating System (e.g., Ubuntu) (e.g., Ubuntu) (e.g., Raspbian) Cloud Provider Cloud Provider Smart Device Raspberry Pi (e.g., vSphere) (e.g., vSphere) (e.g., Raspberry Pi) connectsTo hostedOn dependsOn Figure 2: Abstract topology model for IoT environments. Artifacts contain the logic, e.g., a piece of code, to based) due to the devices’ limited resources. These configure, install, start, or uninstall a component. De- scripts are able to read sensor values and invoke ac- ployment Artifacts in contrast represent binary files, tuators through the hardware interface (e.g., GPIO). such as installers, images or JAR files, that are required The device software represents the bridge between to properly provision a component. the hardware components and the IoT middlewares. The orchestration part of TOSCA describes all ac- Through the middleware, IoT applications can receive tions necessary to provision, manage, and deprovi- sensor data as well as send control commands to actua-

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us