Top Banner
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 [email protected] http://dsg.tuwien.ac.at/staff/truong ICSOC 2016, Banff, 11 Oct, 2016 1
22

On Engineering Analytics of Elastic IoT Cloud Systems

Apr 11, 2017

Download

Education

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: On Engineering Analytics of Elastic IoT Cloud Systems

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

[email protected]

http://dsg.tuwien.ac.at/staff/truong

ICSOC 2016, Banff, 11 Oct, 2016 1

Page 2: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 3: On Engineering Analytics of Elastic IoT Cloud Systems

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: http://timesofindia.indiatimes.comAir Ecosystem, Pacific Controls

https://arrayofthings.github.io/

Page 4: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 5: On Engineering Analytics of Elastic IoT Cloud Systems

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 predix.io, 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

Page 6: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 7: On Engineering Analytics of Elastic IoT Cloud Systems

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)

Page 8: On Engineering Analytics of Elastic IoT Cloud Systems

iCOMOT -- Toolset for IoT Cloud

Systems

8ICSOC 2016, Banff, 11 Oct, 2016

http://tuwiendsg.github.io/iCOMOT/

Page 9: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 10: On Engineering Analytics of Elastic IoT Cloud Systems

(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

Page 11: On Engineering Analytics of Elastic IoT Cloud Systems

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.

https://github.com/tuwiendsg/SoftwareDefinedGateways

Composition of existing middleware

Leverage microservice models to enable flexible adaptation,

e.g., https://github.com/tuwiendsg/GovOps

Page 12: On Engineering Analytics of Elastic IoT Cloud Systems

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

https://github.com/tuwiendsg/SALSA

REST/MQTT-based APIs for configuration at the IoT gateways

http://sincconcept.github.io/HINC/

Leverage known tools (Vagrant, docker) for the emulated

sensors, gateways and cloud services

Page 13: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 14: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 15: On Engineering Analytics of Elastic IoT Cloud Systems

Case studies

ICSOC 2016, Banff, 11 Oct, 2016 15

The company would like to focus only on predictive analytics

Page 16: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 17: On Engineering Analytics of Elastic IoT Cloud Systems

Elasticity monitoring

Monitoring at the IoT is still very primitive with

certain types of gateways

ICSOC 2016, Banff, 11 Oct, 2016 17

Page 18: On Engineering Analytics of Elastic IoT Cloud Systems

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

(https://github.com/tuwiendsg/rSYBL/wiki/API-Description)

Control for IoT Gateways Control for Clouds

Page 19: On Engineering Analytics of Elastic IoT Cloud Systems

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

Page 20: On Engineering Analytics of Elastic IoT Cloud Systems

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

Perc

ent of fa

ilure

s

Number of sensors

VM deployment failure rate on DSGSensor deployment failure rate on DSGVM deployment failure rate on Flexiant

Sensor deployment failure rate on FlexiantVM deployment failure rate on multicloud

Sensor deployment failure rate on multicloud

Page 21: On Engineering Analytics of Elastic IoT Cloud Systems

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 (github.com/tuwiendsg/COMOT4U)

Contracts for “IoT cloud services” (github.com/SINCConcept/P4SINC)

Notebook-based tools for IoT cloud service engineering analytics

New types of IoT cloud systems: http://sincconcept.github.io

ICSOC 2016, Banff, 11 Oct, 2016 21

Page 22: On Engineering Analytics of Elastic IoT Cloud Systems

Thanks for your

attention!

Hong-Linh Truong

Distributed Systems GroupTU Wien

dsg.tuwien.ac.at/staff/truong

ICSOC 2016, Banff, 11 Oct, 2016 22