Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

On Engineering Analytics of Elastic IoT Cloud Systems


Published on

Developing IoT cloud platforms is very challenging, as IoT
cloud platforms consist of a mix of cloud services and IoT elements, e.g.,
for sensor management, near-realtime events handling, and data analyt-
ics. Developers need several tools for deployment, control, governance
and analytics actions to test and evaluate designs of software compo-
nents and optimize the operation of di erent design con gurations. In
this paper, we describe requirements and our techniques on support-
ing the development and testing of IoT cloud platforms. We present our
choices of tools and engineering actions that help the developer to design,
test and evaluate IoT cloud platforms in multi-cloud environments.

Published in: Education
  • Be the first to comment

  • Be the first to like this

On Engineering Analytics of Elastic IoT Cloud Systems

  1. 1. On Engineering Analytics of Elastic IoT Cloud Systems Hong-Linh Truong with Georgiana Copil, Schahram Dustdar, Duc-Hung Le, Daniel Moldovan, Stefan Nastic Distributed Systems Group, TU Wien ICSOC 2016, Banff, 11 Oct, 2016 1
  2. 2. Outline  Motivation  Design and engineering actions  iCOMOT  Software components  Deployment, control and monitoring  Case studies  Conclusions and future work ICSOC 2016, Banff, 11 Oct, 2016 2
  3. 3. Emerging IoT/CPS applications  Emergency responses, on-demand crowd sensing, Geo Sports monitoring, cyber-physical systems testing, etc. ICSOC 2016, Banff, 11 Oct, 2016 3 Geo Sports: Picture courtesy Future Position X, Sweden Indian Overfly collapses figure source: Air Ecosystem, Pacific Controls
  4. 4. DevOps focus: IoT and Cloud integration models  Resources as services: IoT networks (sensors, gateways), edge/fog systems (micro data centers and network functions), big data centers (cloud VM, storage) ICSOC 2016, Banff, 11 Oct, 2016 4 Cloud (big, centralized data centers) Cloud (big, centralized data centers) IoT network (IoT sensors, gateways, etc.) IoT network (IoT sensors, gateways, etc.) Network functions (Network function virtualization + micro datacenter)  Applications require on-demand resources provisioning across IoT networks, network functions and the clouds
  5. 5. Common goals for IoT Cloud service engineering analytics  Type 1  Mainly focus on IoT networks: sensors, IoT gateways, IoT-to- cloud connectivity (e.g., connect to, IBM Bluemix, Amazon IoT, etc.)  Type 2  Mainly focus on (public/private) services in data centers: e.g., load balancer, NoSQL databases, and big data ingest systems  Using both open sources and cloud-provided services  Type 3  Equally focus on both IoT and cloud sides and have the need to control at both sides  Highly interactions between the two sides, not just data flows from IoT to clouds ICSOC 2016, Banff, 11 Oct, 2016 5
  6. 6. Type 3: Key concerns ICSOC 2016, Banff, 11 Oct, 2016 6 End-to-end Resource slice Application services atop Virtual infrastructures as a service Key questions: how to simplify the development, provisioning and testing of the applications atop their virtual resource slice This talk: focusing on our experiences and tools
  7. 7. Design and engineering actions  Selecting and developing software components for IoT cloud platforms  Diverse types of components (forms, complexity and interfaces) for IoT and clouds  Dynamic connectors allowing adaptation  Symbiosis development and testing  Provisioning and operating software components  Code deployed across IoT and cloud systems  Coordinated control, monitoring and analysis ICSOC 2016, Banff, 11 Oct, 2016 7 Hong Linh Truong, Schahram Dustdar: Principles for Engineering IoT Cloud Systems. IEEE Cloud Computing 2(2): 68-76 (2015)
  8. 8. iCOMOT -- Toolset for IoT Cloud Systems 8ICSOC 2016, Banff, 11 Oct, 2016
  9. 9. Software components Requirements  Not just cloud services but also different types of (virtual) sensors, gateways, and connectivity components  Different implementation models and pay-per-use models Solutions  Treat all software components as service units  Use IoT software-defined unit concept to abstract functions, provisioning and management mechanisms ICSOC 2016, Banff, 11 Oct, 2016 9 Examples:  Software-defined IoT units: sensors, gateways, lightweighted analyzers, light storage, queues, VMs, cloud services (NoSQL databases, streaming data analyzer, etc.)  Leverage a combination of Docker Hub, Git-based repository, Maven, and IoT marketplaces
  10. 10. (Virtual) Software sensors Requirements  Emulated + real software sensors in different scenarios  Work with different types of APIs Solutions  Sensors with dynamic control capabilities  Solutions for individual sensors and sensor topologies  Coupling sensors with virtual environments ICSOC 2016, Banff, 11 Oct, 2016 10 Examples:  Cloud connectivity: e.g., MQTT and AMQP  Data Point/Control Points associated with Things: emulation with data sources from files, accessing Things with software-defined gateway API profiles or with Thing-specific APIs  Management API: REST, MQTT, and even shellscripts
  11. 11. IoT Gateways Requirements  Light-weighted gateways but (partially) support fog/edge computing models Solutions  Software-defined gateways as virtual environments for deploying different units  Dynamic configuration of software components ICSOC 2016, Banff, 11 Oct, 2016 11 Examples:  Utilizing lightweight virtual containers/VMs  New middleware with high-level APIs that abstract Data Points, Control Points, Cloud connectivity, etc.   Composition of existing middleware  Leverage microservice models to enable flexible adaptation, e.g.,
  12. 12. Software deployment and configuration Requirements  Support different types of IoT gateways with different interfaces  Complex configuration protocols for different topologies Solutions  Integrate different configuration tools and languages  Develop protocols and programming APIs for exchanging configuration commands ICSOC 2016, Banff, 11 Oct, 2016 12 Examples:  Use TOSCA (or any configuration language) for both IoT and clouds based on deployment agents supporting TOSCA   REST/MQTT-based APIs for configuration at the IoT gateways   Leverage known tools (Vagrant, docker) for the emulated sensors, gateways and cloud services
  13. 13. Elasticity monitoring and analytics Requirements  Cross IoT and cloud analytics  High level end-to-end metrics  Correlate monitoring data from different service/component topologies Solutions  Expand monitoring capabilities to the IoT gateways  Interfaces to deployment, configuration and control systems  User-defined metrics ICSOC 2016, Banff, 11 Oct, 2016 13 Examples:  Relay basic metrics from IoT gateways (e.g., nr. sensors, queue length, etc.) to centralized monitoring services  All management services subscribe/exchange monitoring data through scalable queues  Analyze based on service topologies
  14. 14. Elasticity control Requirements  Able to control at the IoT side  Must work with various protocols/systems (e.g., using public clouds)  Control in combined with business data analytics Solutions  Primitive actions for gateways: control sensors, cloud connectivity, etc.  High-level coordination working with different interfaces ICSOC 2016, Banff, 11 Oct, 2016 14 Examples  Using REST API/shellscripts to control IoT gateways + SYBL at the data centers  Programing-language based workflows for coordination-aware controls to enable different connectors  Deal with uncertainties
  15. 15. Case studies ICSOC 2016, Banff, 11 Oct, 2016 15 The company would like to focus only on predictive analytics
  16. 16. Configuration ICSOC 2016, Banff, 11 Oct, 2016 16  Sensors/gateways and cloud services have different management systems and interfaces Deploy different topologies and configure topologies to work together IoT sensors Cloud Service
  17. 17. Elasticity monitoring  Monitoring at the IoT is still very primitive with certain types of gateways ICSOC 2016, Banff, 11 Oct, 2016 17
  18. 18. Cross IoT and cloud controls ICSOC 2016, Banff, 11 Oct, 2016 18  Gateways control is very different from cloud controls  Low-level REST API in IoT gateways management and REST with SYBL for cloud services ( Control for IoT Gateways Control for Clouds
  19. 19. Elasticity control process ICSOC 2016, Banff, 11 Oct, 2016 19  Using programming language based workflows  to easily connect cloud management services with business logics  Example with Airflow Elasticity control + business function analytics  not easy to automate and optimize the cross IoT cloud elasticity control process
  20. 20. Deployment failures/uncertainties ICSOC 2016, Banff, 11 Oct, 2016 20  Understand the impact of heterogeneity on deployment and configuration  Need to deal with uncertainties at both sides 0 10 20 30 40 50 100 150 200 250 Percentoffailures Number of sensors VM deployment failure rate on DSG Sensor deployment failure rate on DSG VM deployment failure rate on Flexiant Sensor deployment failure rate on Flexiant VM deployment failure rate on multicloud Sensor deployment failure rate on multicloud
  21. 21. Conclusions and future work  Service engineering analytics for IoT cloud systems  Support various DevOps actions for both IoT and clouds in a coordinated manner  great challenges due to the heterogeneity of software service units  Our work  Analyze different requirements and present concrete solutions  Deal with the heterogeneity of IoT networks and clouds through a rich set of tools  Could support reproducibility for service engineering analytics  Future work  Uncertainty analytics (  Contracts for “IoT cloud services” (  Notebook-based tools for IoT cloud service engineering analytics  New types of IoT cloud systems: ICSOC 2016, Banff, 11 Oct, 2016 21
  22. 22. Thanks for your attention! Hong-Linh Truong Distributed Systems Group TU Wien ICSOC 2016, Banff, 11 Oct, 2016 22