FogIoT Orchestrator: an Orchestration System for IoT Applications in Fog Environment
Bruno Donassolo - Orange Labs Ilhem Fajjari - Orange Labs Arnaud Legrand - INRIA - LIG Panayotis Mertikopoulos - INRIA - LIG April 5, 2018
1 / 21
FogIoT Orchestrator: an Orchestration System for IoT Applications in - - PowerPoint PPT Presentation
FogIoT Orchestrator: an Orchestration System for IoT Applications in Fog Environment Bruno Donassolo - Orange Labs Ilhem Fajjari - Orange Labs Arnaud Legrand - INRIA - LIG Panayotis Mertikopoulos - INRIA - LIG April 5, 2018 1 / 21 Outline 1
Bruno Donassolo - Orange Labs Ilhem Fajjari - Orange Labs Arnaud Legrand - INRIA - LIG Panayotis Mertikopoulos - INRIA - LIG April 5, 2018
1 / 21
1 Introduction 2 Architecture 3 Use case 4 Implementation 5 Conclusion
2 / 21
Cloud Sensors swarm
processing.
applications.
3 / 21
Fog Fog Fog Cloud Sensors swarm
distributed, mobile and dynamic environment.
it are not simpler. . .
4 / 21
2-phases:
Requirements:
5 / 21
What do we need to create a fog environment?
1 Infrastructure
6 / 21
What do we need to create a fog environment?
1 Infrastructure
2 Model/write the application
6 / 21
What do we need to create a fog environment?
1 Infrastructure
2 Model/write the application 3 Hardware abstraction
6 / 21
What do we need to create a fog environment?
1 Infrastructure
2 Model/write the application 3 Hardware abstraction 4 Deploy app. components in the infrastructure
6 / 21
What do we need to create a fog environment?
1 Infrastructure
2 Model/write the application 3 Hardware abstraction 4 Deploy app. components in the infrastructure 5 Monitoring the infrastructure
6 / 21
programming model
ture
7 / 21
Temperature sensor Long-term Analysis Filter Decision Temperature sensor Temperature sensor Temperature sensor CPU Disk RAM CPU RAM CPU RAM Actuator Req: Latency Endpoints Fog Temp > 50°C Temp > 70°C at 2 sensors each 1s Temperature Temperature Read Temp. Req: Latency Req: Latency Emergency Req: Bandwidth Disk Temperature (24 hours period) DB
fog application
8 / 21
9 / 21
9 / 21
10 / 21
11 / 21
12 / 21
12 / 21
12 / 21
ple
tion protocols and hardware specifics
13 / 21
Application description:
Functional
src : std.Trigger(tick=1, data="fire") snk : io.Log(loglevel="INFO") src.data > snk.data
Deployment
{"requirements":{"src":[{ "op":"node_attr_match", "kwargs":{"index":["node_name", {"name":"runtime-0"}]},"type":"+"}]}}
14 / 21
Architecture:
Deployment:
Image from: Calvin – Merging Cloud and IoT https://doi.org/10.1016/j.procs.2015.05.059 15 / 21
Architecture:
Deployment:
Image from: Calvin – Merging Cloud and IoT https://doi.org/10.1016/j.procs.2015.05.059
What is missing?
App is running. . . What about the monitoring?
15 / 21
Prometheus
tests
scrape_configs:
static_configs:
16 / 21
Cadvisor
ers
17 / 21
Blackbox exporter
18 / 21
Blackbox exporter
scrape_configs:
module: [icmp] # ping request static_configs:
# List of target IPs relabel_configs: replacement: 127.0.0.1:9115 # The blackbox exporter’s
18 / 21
Netdata - FireQoS - Traffic Control
19 / 21
Netdata - FireQoS - Traffic Control
Objective
Measure bandwidth used by calvin between 2 machines interface eth0 world bidirectional ethernet class calvin match host IP_address
19 / 21
ronment
20 / 21
ronment
20 / 21
ronment
20 / 21
ronment
20 / 21
21 / 21