Governing Elastic IoT Cloud Systems under Uncertainties

17
Governing Elastic IoT Cloud Systems under Uncertainties Stefan Nastic, Georgiana Copil, Hong-Linh Truong , Schahram Dustdar Distributed Systems Group, TU Wien [email protected] dsg.tuwien.ac.at/staff/truong CloudCom 2015, 1 Dec 2015, Vancouver, Canada 1

Transcript of Governing Elastic IoT Cloud Systems under Uncertainties

Governing Elastic IoT Cloud Systems under Uncertainties

Stefan Nastic, Georgiana Copil, Hong-Linh Truong, Schahram Dustdar

Distributed Systems Group, TU Wien

[email protected] dsg.tuwien.ac.at/staff/truong

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 1

Outline

§  IoT Cloud Systems & Motivation §  IoT Cloud Uncertainties §  Specifying uncertainties in governance

processes §  Actuation under uncertainties §  Experiments §  Conclusions and future work

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 2

Motivation

§  IoT Cloud Systems/CPS: blending IoT elements and cloud services for complex applications/services

§  We need to coordinate both IoT elements and cloud services at the same time

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 3

Hong Linh Truong, Schahram Dustdar: Principles for Engineering IoT Cloud Systems. IEEE Cloud Computing 2(2): 68-76 (2015) https://github.com/tuwiendsg/COMOT4U/blob/master/models/IoTCloudSystem http://tuwiendsg.github.io/iCOMOT/

Motivation

§  Management and coordination of IoT elements and cloud services §  Emerging novel aspects related to infrastructure

data, elasticity control and governance of policies §  Challenges

§  Which types of uncertainties are in IoT cloud system infrastructures? §  Important for infrastructure and state management

§  How to govern IoT cloud systems under such uncertainties? §  Which elements should be governed and how to carry out

management operations considering uncertainties?

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 4

IoT Cloud Infrastructure Uncertainty Taxonomy

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 5

Infrastructure  uncertainties

Nonfunctional  dimensionality

Functional  dimensionality

Execution  environment

Storage

Data  delivery

Actuation  

Elasticity

Governance

Locality

Platform(virtual  infrastructure  

layer)

Hardware  

Temporal  manifestation

Persistent

Recurring

SporadicEffect  

propagation

Application  

Physical  environment

External  to  infrastructure

Observation  time  

Deployment  time

Runtime

Cause

Human  action

Natural  phenomenon  

Quality

Compliance

Dependability

Technological  

Human

Composite  Function

Further check: •  https://github.com/tuwiendsg/COMOT4U/blob/master/docs/u-taxonomy.pdf •  www.u-test.eu

Uncertainties due to Data Quality and Actuation Dependability

§  Data needed for governance §  Status of IoT cloud systems

infrastructure elements: availability, operational capabilities, etc.

§  Meta-data about infrastructure elements: location, type of gateways, owners, etc.

§  Actuation operation: failed, delay, side-effects

§  DataQualityUncertainties: about monitoring data/infrastructure state

§  ActuationDependabilityUncertainties

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 6

Governance

DataDeliveryUncertainty

InfrastructureUncertainty

GovernanceUncertainty

GovernanceProcessExecutionUncertainty

ActuationUncertainty

ExecutionEnvironmentUncertainty

RuntimeExecutionEnvironmentUncertainty

U-Govops architecture

Key contributions: governance policy specification and governance enforcement considering uncertainties

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 7

Prototype: https://github.com/tuwiendsg/COMOT4U/tree/master/uGovOps

SYBL for uGovops §  SYBL:

§  Directive language for elasticity requirements specification

§  Used for elasticity control of cloud services

§  Extensions for uncertainty of IoT Cloud Systems: §  GOVERNANCE_SCOPE §  CONSIDERING_UNCERTAINTY

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 8

http://dsg.tuwien.ac.at/research/viecom/SYBL/ https://github.com/tuwiendsg/COMOT4U/blob/master/docs/UGovOpsSYBLLanguage.pdf

#SYBL.CloudServiceLevel Cons1: CONSTRAINT responseTime < 5 ms Cons2: CONSTRAINT responseTime < 10 ms WHEN nbOfUsers > 10000 Str1: STRATEGY CASE fulfilled(Cons1) OR fulfilled(Cons2): minimize(cost) #SYBL.ServiceUnitLevel Str2: STRATEGY CASE ioCost < 3 Euro : maximize( dataFreshness ) #SYBL.CodeRegionLevel Cons4: CONSTRAINT dataAccuracy>90% AND cost<4 Euro

Specifying uncertainties in governance processes

§  Describe scopes in which governance processes will be applied

§  Rough set logics to compute an objective approximation of governance scopes for dealing with missing data

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 9

G:GOVERNANCE_SCOPE query:= location=buildingX & type=JACE-545 CONSIDERING_UNCERTAINTY: missing_data = "location<=’?’,type<=’*’" AND selection_strategy = optimistic AND use_cache = false

S:STRATEGY CASE Fulfilled (CND1): setUpdateRate(5s) FOR G CONSIDERING_UNCERTAINTY: Run_in_isolation = true AND Keep_alive = 5min AND Degree_parallelism = 200 AND Tolerate_fault_percentage = 20% AND Fallback_count = 2 AND Time_to_next_fallback = 500ms

§  The elasticity control strategies work in specific governance scopes & considering additional uncertainty parameters

Resolving rough governance scopes

§  Determine similar resources, under attributes G with missing information, by considering problem-dependent uncertainty parametrization

§  Based on the specified

selection_strategy  the U-GovOps returns a governance scope

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 10

Dealing with actuations under uncertainties

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 11

Experiments

§  Emulating an IoT Cloud System in the scenario §  Infrastructures

§  Using Docker (~ 1000 docker containers) and CentOS §  https://hub.docker.com/r/dsgtuwien/govops-box/

§  U-GovOps: 4 Ubuntu VMs

§  Emulating §  Missing or incomplete data §  Actuation uncertainties §  Using Dell Blockage tools to perform random fault

injection

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 12

Evaluation governance scopes under missing data

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 13

G1: GOVERNANCE_SCOPE query: location=building3&type=JACE-545||owner=TUW CONSIDERING_UNCERTAINTY: missing_data =location<=’?’, owner<=’*’ AND selection_strategy =optimistic; M1: MONITORING abnormal_behavior := sensorAlert(G1)==true OR heartBeatAVG(G1)>5min; S1: STRATEGY CASE abnormal_behavior: setProtocol(’mqtt’), changeUpdateRate(’5s’) FOR G1 CONSIDERING_UNCERTAINTY: running_inisolation =true AND keep_alive=1min AND fallback_count =2 AND tolerate_fault_percentage= 20% AND invocation_caching =true; C1: CONSTRAINT cost<200 CONSIDERING_UNCERTAINTY: decision_confidence >=20%; S2: STRATEGY CASE responseTime>250ms: scaleOut() CONSIDERING_UNCERTAINTY: …

F1 score for test accuracy •  Controlled

experiments •  50 reruns

Error rates for governance scopes due to missing data

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 14

The operator can make trade-offs by selecting appropriate strategies for their specific purpose

Lost actuations rates for isolated actuations

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 15

Performance and additional cost must be paid for uncertainty management

Conclusions and Future Work §  IoT cloud systems have complex types of

uncertainties that must be taken into account §  Our uGovOps supports uncertainties in IoT cloud

management and engineering analytics §  Language specification and enforcement §  Runtime management foundations

§  Future work §  Substantial improvement of uncertainty runtime

governance §  Support new types of uncertainties §  Incorporation of knowledge from uncertainty testing

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 16

Thanks for your attention!

Hong-Linh Truong Distributed Systems Group TU Wien dsg.tuwien.ac.at/staff/truong

CloudCom 2015, 1 Dec 2015, Vancouver, Canada 17