SlideShare une entreprise Scribd logo
1  sur  38
FIWARE at the edge:
FogFlow, a new GE for IoT edge computing
Bin Cheng (bin.cheng@neclab.eu),
Ernö Kovacs (ernoe.kovacs@neclab.eu)
NEC Labs Europe
Agenda
§ Overview of FogFlow
• motivation, value proposition, major design, key feature
§ How to deploy FogFlow
• Set up your own FogFlow system
§ How to use the programming models in FogFlow
• Service topology: launching dynamic data flows on demand, development process and use case
(anomaly detection)
• Fog function: serverless edge computing, development process and use case (smart parking)
§ Integration with other systems
• AWS IoT, Orion Context Broker
§ References
1
2
Part I: Overview of FogFlow
Motivation of FogFlow
3
Lower Complexity
Lower Cost
Higher Efficiency
Smart
Cities
Public
Safety
Smart
Factories
IoT services
difficult to program
Infrastructure
difficult to manage
Edges
IoT devices
not able to be smart
After using NEC FogFlow
Edge Computing Framework
Lack of model
High complexity from
heterogeneity and
dynamics
No fast, closed control
loop
Development + Operation
Development + Operation
Faster response time,
better scalability
Value Proposition of FogFlow
4
IoT Service
providers
Infrastructure
Providers
Device
Providers
Edge
programming
model
Fast control
loop
Optimized
orchestration
Low
learning cost
Low
OPEX
Fast
time-to-market
Improved
QoS
FogFlow: Context-driven Cloud-Edge Orchestration
§ FogFlow is a cloud-edge orchestrator to orchestrate dynamic NGSI-based data
processing flows on-demand between producers and consumers for providing timely
results to make fast actions, based on context (system context and data context)
Producers
(sensors)
Consumers
(actuators)
cloud
edge edge edge
raw context information
timely results fast actions
FogFlow dynamic
processing flows
Data context
System context
How It Works
6
Template of your IoT Service Execution Plan Deployment Plan
cloud
edge1
edge2
Task
generation
Task
specification
Task
deployment
Cloud-Edge
Programming model Cloud-Edge Orchestration
Graphical
editor
Automation &
optimizations
Cloud-Edge
Environment IoT Devices
Key Features (1): Agile Edge Programming
7
Reusable
building blocks
Compositing them with declarative hints
Submit
Select
Your service is
ready in minutes
Programming Cloud and Edges easily and fast
Key Features (1): Automated and Optimized Orchestration for
Cloud-Edge
8
Connected
Device
Backend
Cloud(s)
Other
Edges
Sensing
Notify
Orchestrating
Collaborative
deployment
Closed control loop
Dynamic processing flows
Reacting
Nearby
Edge
Collaborative
deployment
Orchestrating and managing dynamic processing flows over cloud
and edges in an efficient and optimized manner
9
Part I: Deployment of FogFlow
System Architecture of FogFlow
10
System Components in FogFlow
11
Set Up The Cloud Part:
§ Step 1: download the following compressed file
• wget https://github.com/smartfog/fogflow/raw/master/deployment/core/fogflow-core.tar.gz
§ Step 2: extract deployment scripts from the downloaded file
• tar xvf fogflow-core.tar.gz
§ Step3: change the configuration files for each fogflow components, including
• discovery, broker, master, worker, designer
§ Step4: use docker-compose to launch all components
• docker-compose up or docker-compose start
12
How configuration files should be changed accordingly?
discovery-config.json
broker-config.json
worker-config.json
master-config.json designer-config.json
Nothing to change
"my_ip": "155.54.239.141",
"host": "155.54.239.141",
"my_ip": "155.54.239.141",
"discoveryURL": "http://155.54.239.141:8071/ngsi9",
"brokerURL": "http://155.54.239.141:8070/ngsi10",
"agentIP": "155.54.239.141",
HOST_IP = 155.54.239.141
Set Up The Edge Part:
14
§ Step 1: download the following compressed file
• wget https://github.com/smartfog/fogflow/raw/master/deployment/edge/fogflow-edge.tar.gz
§ Step 2: extract deployment scripts from the downloaded file
• tar xvf fogflow-edge.tar.gz
§ Step3: change the configuration files for each fogflow components, including
• broker, worker
§ Step4: use docker-compose to launch all components
• docker-compose up or docker-compose start
How configuration files should be changed accordingly?
15
broker-config.json
worker-config.json
"host": "155.54.239.141",
"discoveryURL": "http://155.54.239.141:8071/ngsi9",
"my_ip": "155.54.239.141",
"message_bus": "amqp://admin:mypass@155.54.239.141:5672/",
"iot_discovery_url": "http://155.54.239.141:8071/ngsi9",
HOST_IP = 155.54.239.141
Verify Your Deployment via FogFlow Dashboard
§ Check if the FogFlow dashboard can be accessed from your browser
16
HOST_IP = 155.54.239.141
http://HOST_IP:8080/
Other possible changes to the configuration files
§ Port numbers used by each component
• Must pay attention to the dependency between different components
§ Geo-location of each component
17
"physical_location":{
"longitude": 139.463377,
"latitude": 36.509163,
"section": "01",
"district": "02",
"city": "Tokyo"
},
18
Part II: Programming Models in FogFlow
Two Types of Programming Models in FogFlow
§ Service topology: on-demand data processing flows
• Triggered by a requirement on demand
• Output-driven
§ Fog function: serverless edge computing, function triggered by context availability
• Triggered by context availability automatically
• Input-driven
19
requirement
Fog
function
availability of input data
Linked automatically
Orchestration of Service Topology
20
Service Topology
Execution Plan
Deployment Plan
cloud
edge1edge2
q Expected output
q Scope
q scheduler
locality aware deployment
dynamic execution graph
Context-driven Cloud-Edge Orchestration: granularity, scope
21
Data Context and
availability
(metadata, availability)
System Context
(locality, mobility, capacity,
security, …)
Programming model
with graphical editor
scope
granularity
Development Process
22
Use Case Example
23
Designing a IoT Service
24
Developing Dockerized Operators
25
Templates for Python/Javascript are available in github
fogflow/application/template
Defining Your Service Topology
26
Triggering Your IoT Service
27
Service Topology
Execution Plan
Deployment Plan
cloud
edge1edge2
q Expected output
q Scope
q scheduler
locality aware deployment
dynamic execution graph
Orchestration requirement
Fog Function in FogFlow: serverless edge computing
§ Fog function: just do one thing for a single functionality
• Triggered by the availability(metadata) of its inputs, light-weight
28
fog function
input
function
instances
trigger
ff2
Twin ATwin BTwin C
ff1
Digital Twins
Fog Function
Instances
A network of twins, linked via fog
functions
How Fog Function Works in FogFlow
29
Input Annotation
Docker image
Output
Annotation
IoT Discovery Broker(s)
FogFlow
Orchestrator
Function
instance(s)
FogFlow Worker(s)
(cloud or edges)
IoT Device(s)
fog function
Twins
1) Submit
Fog function
2)SUBSCRIBE,
NGSI9
3) UPDATE, NGSI10
4) UPDATE,
NGSI9
5)NOTIFY,
NGSI9
5) Create and deploy fog function instances
6) Processing data and create/update
digital twin
Editor to Annotate a Fog Function in FogFlow
30
Python or Javascript
Code or
annotation
Implementation image
docker
images
Register a basic operator
31
Implement an operator
§ template is available at github
• https://github.com/smartfog/fogflow/tree/master/application/fogfunction/javascript
32
exports.handler = function(contextEntity, publish, query, subscribe)
Example of how to publish the generate result
Example of how to query something
Example of how to subscribe something
Use Case: Smart Parking
33
Connected
car
private
site
Public
site
Real-time
estimation
Prediction
Arrival time
Recommender
Utilizing NGSI API to
access digital twins
Digital twins: Public parking sites,
private parking sites, connected cars
34
Part III: Integration with Other FIWARE GEs
Integration with Other GEs
35
Distributed Context
Management System
OrionProcessing
tasks
FogFlow subscription
APPS
Other
GE(s)
sensors actuators
FogFlow
Dashboard
notify
e.g. Cygnus
non-NGSI
devices
Adapter(s)
(e.g., openMTC, IoT
Agent)
Reference and Acknowledgement
§ The code repository of FogFlow is available at github,
https://github.com/smartfog/fogflow
§ Online tutorial is available at http://fogflow.readthedocs.io/
§ This work has been partially funded by the European Union’s Horizon 2020 research
and innovation program within the CPaaS.io project under Grant Agreement No.
723076
36
Thank you!
http://fiware.org
Follow @FIWARE on Twitter

Contenu connexe

Tendances

FIWARE Training: IoT and Legacy
FIWARE Training: IoT and LegacyFIWARE Training: IoT and Legacy
FIWARE Training: IoT and Legacy
FIWARE
 
FIWARE Training: API Umbrella
FIWARE Training: API UmbrellaFIWARE Training: API Umbrella
FIWARE Training: API Umbrella
FIWARE
 

Tendances (20)

FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.5.0対応)
 
Fiware IoT_IDAS_intro_ul20_v2
Fiware IoT_IDAS_intro_ul20_v2Fiware IoT_IDAS_intro_ul20_v2
Fiware IoT_IDAS_intro_ul20_v2
 
FIWARE Big Data Ecosystem : Cygnus
FIWARE Big Data Ecosystem : CygnusFIWARE Big Data Ecosystem : Cygnus
FIWARE Big Data Ecosystem : Cygnus
 
FIWARE の ID 管理、アクセス制御、API 管理
FIWARE の ID 管理、アクセス制御、API 管理FIWARE の ID 管理、アクセス制御、API 管理
FIWARE の ID 管理、アクセス制御、API 管理
 
コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略コンテキストデータの永続化のための戦略
コンテキストデータの永続化のための戦略
 
FIWARE Context Information Management
FIWARE Context Information ManagementFIWARE Context Information Management
FIWARE Context Information Management
 
Kong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in Production
Kong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in ProductionKong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in Production
Kong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in Production
 
FIWARE Training: IoT and Legacy
FIWARE Training: IoT and LegacyFIWARE Training: IoT and Legacy
FIWARE Training: IoT and Legacy
 
FIWARE勉強会 20190913
FIWARE勉強会 20190913FIWARE勉強会 20190913
FIWARE勉強会 20190913
 
Operational Dashboards with FIWARE WireCloud
Operational Dashboards with FIWARE WireCloudOperational Dashboards with FIWARE WireCloud
Operational Dashboards with FIWARE WireCloud
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 1.13.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 1.13.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 1.13.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 1.13.0対応)
 
FIWARE Generic Enablers introduction
FIWARE Generic Enablers introductionFIWARE Generic Enablers introduction
FIWARE Generic Enablers introduction
 
FIWARE Wednesday Webinars - Performing Big Data Analysis Using Cosmos With Sp...
FIWARE Wednesday Webinars - Performing Big Data Analysis Using Cosmos With Sp...FIWARE Wednesday Webinars - Performing Big Data Analysis Using Cosmos With Sp...
FIWARE Wednesday Webinars - Performing Big Data Analysis Using Cosmos With Sp...
 
What is an IoT Agent
What is an IoT AgentWhat is an IoT Agent
What is an IoT Agent
 
FIWARE Big Data Ecosystem : Cygnus and STH Comet
FIWARE Big Data Ecosystem : Cygnus and STH CometFIWARE Big Data Ecosystem : Cygnus and STH Comet
FIWARE Big Data Ecosystem : Cygnus and STH Comet
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.2.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.2.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.2.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 2.2.0対応)
 
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.7.0対応)
 
オープンソースのAPIゲートウェイ Kong ご紹介
オープンソースのAPIゲートウェイ Kong ご紹介 オープンソースのAPIゲートウェイ Kong ご紹介
オープンソースのAPIゲートウェイ Kong ご紹介
 
FIWARE Training: API Umbrella
FIWARE Training: API UmbrellaFIWARE Training: API Umbrella
FIWARE Training: API Umbrella
 
FIWAREシステム内の短期履歴の管理
FIWAREシステム内の短期履歴の管理FIWAREシステム内の短期履歴の管理
FIWAREシステム内の短期履歴の管理
 

Similaire à FIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing

Similaire à FIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing (20)

FogFlow: Cloud-Edge Orchestrator in FIWARE
FogFlow: Cloud-Edge Orchestrator in FIWAREFogFlow: Cloud-Edge Orchestrator in FIWARE
FogFlow: Cloud-Edge Orchestrator in FIWARE
 
FIWARE Tech Summit - FogFlow - New GE for IoT Edge Computing
FIWARE Tech Summit - FogFlow - New GE for IoT Edge ComputingFIWARE Tech Summit - FogFlow - New GE for IoT Edge Computing
FIWARE Tech Summit - FogFlow - New GE for IoT Edge Computing
 
CPaaS.io Y1 Review Meeting - Cloud & Edge Programming
CPaaS.io Y1 Review Meeting - Cloud & Edge ProgrammingCPaaS.io Y1 Review Meeting - Cloud & Edge Programming
CPaaS.io Y1 Review Meeting - Cloud & Edge Programming
 
FIWARE Global Summit - FogFlow GE: Intent-based Edge Programming
FIWARE Global Summit - FogFlow GE: Intent-based Edge ProgrammingFIWARE Global Summit - FogFlow GE: Intent-based Edge Programming
FIWARE Global Summit - FogFlow GE: Intent-based Edge Programming
 
Docker meetup - PaaS interoperability
Docker meetup - PaaS interoperabilityDocker meetup - PaaS interoperability
Docker meetup - PaaS interoperability
 
Developers’ mDay u Banjoj Luci - Janko Isidorović, Mainflux – Unified IoT Pl...
Developers’ mDay u Banjoj Luci - Janko Isidorović, Mainflux –  Unified IoT Pl...Developers’ mDay u Banjoj Luci - Janko Isidorović, Mainflux –  Unified IoT Pl...
Developers’ mDay u Banjoj Luci - Janko Isidorović, Mainflux – Unified IoT Pl...
 
Is 12 Factor App Right About Logging
Is 12 Factor App Right About LoggingIs 12 Factor App Right About Logging
Is 12 Factor App Right About Logging
 
クラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Age
クラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Ageクラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Age
クラウドネイティブ時代の分散トレーシング - Distributed Tracing in a Cloud Native Age
 
Open Source Edge Computing Platforms - Overview
Open Source Edge Computing Platforms - OverviewOpen Source Edge Computing Platforms - Overview
Open Source Edge Computing Platforms - Overview
 
SpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSASpringBoot and Spring Cloud Service for MSA
SpringBoot and Spring Cloud Service for MSA
 
OSMC 2009 | NConf - Enterprise Nagios configurator by Angelo Gargiulo
OSMC 2009 | NConf - Enterprise Nagios configurator by Angelo GargiuloOSMC 2009 | NConf - Enterprise Nagios configurator by Angelo Gargiulo
OSMC 2009 | NConf - Enterprise Nagios configurator by Angelo Gargiulo
 
[Call for code] IBM 블록체인을 활용하여 투명하게 구호기금 관리하기 - Hyperledger Fabric v1.1 by 맹개발
[Call for code] IBM 블록체인을 활용하여 투명하게 구호기금 관리하기 - Hyperledger Fabric v1.1 by 맹개발 [Call for code] IBM 블록체인을 활용하여 투명하게 구호기금 관리하기 - Hyperledger Fabric v1.1 by 맹개발
[Call for code] IBM 블록체인을 활용하여 투명하게 구호기금 관리하기 - Hyperledger Fabric v1.1 by 맹개발
 
Networking Challenges for the Next Decade
Networking Challenges for the Next DecadeNetworking Challenges for the Next Decade
Networking Challenges for the Next Decade
 
HPC on OpenStack
HPC on OpenStackHPC on OpenStack
HPC on OpenStack
 
What's New in Docker - February 2017
What's New in Docker - February 2017What's New in Docker - February 2017
What's New in Docker - February 2017
 
Microservices with kubernetes @190316
Microservices with kubernetes @190316Microservices with kubernetes @190316
Microservices with kubernetes @190316
 
FIWARE Wednesday Webinars - Short Term History within Smart Systems
FIWARE Wednesday Webinars - Short Term History within Smart SystemsFIWARE Wednesday Webinars - Short Term History within Smart Systems
FIWARE Wednesday Webinars - Short Term History within Smart Systems
 
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius SchumacherOSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
OSDC 2018 | Highly Available Cloud Foundry on Kubernetes by Cornelius Schumacher
 
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
 
Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...
Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...
Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...
 

Plus de FIWARE

Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptxCameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
FIWARE
 
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptxBoris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
FIWARE
 
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
FIWARE
 
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdfAbdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
FIWARE
 
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdfFGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FIWARE
 

Plus de FIWARE (20)

Behm_Herne_NeMo_akt.pptx
Behm_Herne_NeMo_akt.pptxBehm_Herne_NeMo_akt.pptx
Behm_Herne_NeMo_akt.pptx
 
Katharina Hogrebe Herne Digital Days.pdf
 Katharina Hogrebe Herne Digital Days.pdf Katharina Hogrebe Herne Digital Days.pdf
Katharina Hogrebe Herne Digital Days.pdf
 
Christoph Mertens_IDSA_Introduction to Data Spaces.pptx
Christoph Mertens_IDSA_Introduction to Data Spaces.pptxChristoph Mertens_IDSA_Introduction to Data Spaces.pptx
Christoph Mertens_IDSA_Introduction to Data Spaces.pptx
 
Behm_Herne_NeMo.pptx
Behm_Herne_NeMo.pptxBehm_Herne_NeMo.pptx
Behm_Herne_NeMo.pptx
 
Evangelists + iHubs Promo Slides.pptx
Evangelists + iHubs Promo Slides.pptxEvangelists + iHubs Promo Slides.pptx
Evangelists + iHubs Promo Slides.pptx
 
Lukas Künzel Smart City Operating System.pptx
Lukas Künzel Smart City Operating System.pptxLukas Künzel Smart City Operating System.pptx
Lukas Künzel Smart City Operating System.pptx
 
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptx
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptxPierre Golz Der Transformationsprozess im Konzern Stadt.pptx
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptx
 
Dennis Wendland_The i4Trust Collaboration Programme.pptx
Dennis Wendland_The i4Trust Collaboration Programme.pptxDennis Wendland_The i4Trust Collaboration Programme.pptx
Dennis Wendland_The i4Trust Collaboration Programme.pptx
 
Ulrich Ahle_FIWARE.pptx
Ulrich Ahle_FIWARE.pptxUlrich Ahle_FIWARE.pptx
Ulrich Ahle_FIWARE.pptx
 
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptx
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptxAleksandar Vrglevski _FIWARE DACH_OSIH.pptx
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptx
 
Water Quality - Lukas Kuenzel.pdf
Water Quality - Lukas Kuenzel.pdfWater Quality - Lukas Kuenzel.pdf
Water Quality - Lukas Kuenzel.pdf
 
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptxCameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
 
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptxFiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
 
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptxBoris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
 
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
 
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdfAbdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
 
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdfFGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
 
HTAG_Skalierung_Plattform_lokal_final_versand.pptx
HTAG_Skalierung_Plattform_lokal_final_versand.pptxHTAG_Skalierung_Plattform_lokal_final_versand.pptx
HTAG_Skalierung_Plattform_lokal_final_versand.pptx
 
WE_LoRaWAN _ IoT.pptx
WE_LoRaWAN  _ IoT.pptxWE_LoRaWAN  _ IoT.pptx
WE_LoRaWAN _ IoT.pptx
 
EU Opp_Clara Pezuela - German chapter.pptx
EU Opp_Clara Pezuela - German chapter.pptxEU Opp_Clara Pezuela - German chapter.pptx
EU Opp_Clara Pezuela - German chapter.pptx
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 

FIWARE Global Summit - FogFlow, a new GE for IoT Edge Computing

  • 1. FIWARE at the edge: FogFlow, a new GE for IoT edge computing Bin Cheng (bin.cheng@neclab.eu), Ernö Kovacs (ernoe.kovacs@neclab.eu) NEC Labs Europe
  • 2. Agenda § Overview of FogFlow • motivation, value proposition, major design, key feature § How to deploy FogFlow • Set up your own FogFlow system § How to use the programming models in FogFlow • Service topology: launching dynamic data flows on demand, development process and use case (anomaly detection) • Fog function: serverless edge computing, development process and use case (smart parking) § Integration with other systems • AWS IoT, Orion Context Broker § References 1
  • 3. 2 Part I: Overview of FogFlow
  • 4. Motivation of FogFlow 3 Lower Complexity Lower Cost Higher Efficiency Smart Cities Public Safety Smart Factories IoT services difficult to program Infrastructure difficult to manage Edges IoT devices not able to be smart After using NEC FogFlow Edge Computing Framework Lack of model High complexity from heterogeneity and dynamics No fast, closed control loop Development + Operation Development + Operation Faster response time, better scalability
  • 5. Value Proposition of FogFlow 4 IoT Service providers Infrastructure Providers Device Providers Edge programming model Fast control loop Optimized orchestration Low learning cost Low OPEX Fast time-to-market Improved QoS
  • 6. FogFlow: Context-driven Cloud-Edge Orchestration § FogFlow is a cloud-edge orchestrator to orchestrate dynamic NGSI-based data processing flows on-demand between producers and consumers for providing timely results to make fast actions, based on context (system context and data context) Producers (sensors) Consumers (actuators) cloud edge edge edge raw context information timely results fast actions FogFlow dynamic processing flows Data context System context
  • 7. How It Works 6 Template of your IoT Service Execution Plan Deployment Plan cloud edge1 edge2 Task generation Task specification Task deployment Cloud-Edge Programming model Cloud-Edge Orchestration Graphical editor Automation & optimizations Cloud-Edge Environment IoT Devices
  • 8. Key Features (1): Agile Edge Programming 7 Reusable building blocks Compositing them with declarative hints Submit Select Your service is ready in minutes Programming Cloud and Edges easily and fast
  • 9. Key Features (1): Automated and Optimized Orchestration for Cloud-Edge 8 Connected Device Backend Cloud(s) Other Edges Sensing Notify Orchestrating Collaborative deployment Closed control loop Dynamic processing flows Reacting Nearby Edge Collaborative deployment Orchestrating and managing dynamic processing flows over cloud and edges in an efficient and optimized manner
  • 10. 9 Part I: Deployment of FogFlow
  • 12. System Components in FogFlow 11
  • 13. Set Up The Cloud Part: § Step 1: download the following compressed file • wget https://github.com/smartfog/fogflow/raw/master/deployment/core/fogflow-core.tar.gz § Step 2: extract deployment scripts from the downloaded file • tar xvf fogflow-core.tar.gz § Step3: change the configuration files for each fogflow components, including • discovery, broker, master, worker, designer § Step4: use docker-compose to launch all components • docker-compose up or docker-compose start 12
  • 14. How configuration files should be changed accordingly? discovery-config.json broker-config.json worker-config.json master-config.json designer-config.json Nothing to change "my_ip": "155.54.239.141", "host": "155.54.239.141", "my_ip": "155.54.239.141", "discoveryURL": "http://155.54.239.141:8071/ngsi9", "brokerURL": "http://155.54.239.141:8070/ngsi10", "agentIP": "155.54.239.141", HOST_IP = 155.54.239.141
  • 15. Set Up The Edge Part: 14 § Step 1: download the following compressed file • wget https://github.com/smartfog/fogflow/raw/master/deployment/edge/fogflow-edge.tar.gz § Step 2: extract deployment scripts from the downloaded file • tar xvf fogflow-edge.tar.gz § Step3: change the configuration files for each fogflow components, including • broker, worker § Step4: use docker-compose to launch all components • docker-compose up or docker-compose start
  • 16. How configuration files should be changed accordingly? 15 broker-config.json worker-config.json "host": "155.54.239.141", "discoveryURL": "http://155.54.239.141:8071/ngsi9", "my_ip": "155.54.239.141", "message_bus": "amqp://admin:mypass@155.54.239.141:5672/", "iot_discovery_url": "http://155.54.239.141:8071/ngsi9", HOST_IP = 155.54.239.141
  • 17. Verify Your Deployment via FogFlow Dashboard § Check if the FogFlow dashboard can be accessed from your browser 16 HOST_IP = 155.54.239.141 http://HOST_IP:8080/
  • 18. Other possible changes to the configuration files § Port numbers used by each component • Must pay attention to the dependency between different components § Geo-location of each component 17 "physical_location":{ "longitude": 139.463377, "latitude": 36.509163, "section": "01", "district": "02", "city": "Tokyo" },
  • 19. 18 Part II: Programming Models in FogFlow
  • 20. Two Types of Programming Models in FogFlow § Service topology: on-demand data processing flows • Triggered by a requirement on demand • Output-driven § Fog function: serverless edge computing, function triggered by context availability • Triggered by context availability automatically • Input-driven 19 requirement Fog function availability of input data Linked automatically
  • 21. Orchestration of Service Topology 20 Service Topology Execution Plan Deployment Plan cloud edge1edge2 q Expected output q Scope q scheduler locality aware deployment dynamic execution graph
  • 22. Context-driven Cloud-Edge Orchestration: granularity, scope 21 Data Context and availability (metadata, availability) System Context (locality, mobility, capacity, security, …) Programming model with graphical editor scope granularity
  • 25. Designing a IoT Service 24
  • 26. Developing Dockerized Operators 25 Templates for Python/Javascript are available in github fogflow/application/template
  • 27. Defining Your Service Topology 26
  • 28. Triggering Your IoT Service 27 Service Topology Execution Plan Deployment Plan cloud edge1edge2 q Expected output q Scope q scheduler locality aware deployment dynamic execution graph Orchestration requirement
  • 29. Fog Function in FogFlow: serverless edge computing § Fog function: just do one thing for a single functionality • Triggered by the availability(metadata) of its inputs, light-weight 28 fog function input function instances trigger ff2 Twin ATwin BTwin C ff1 Digital Twins Fog Function Instances A network of twins, linked via fog functions
  • 30. How Fog Function Works in FogFlow 29 Input Annotation Docker image Output Annotation IoT Discovery Broker(s) FogFlow Orchestrator Function instance(s) FogFlow Worker(s) (cloud or edges) IoT Device(s) fog function Twins 1) Submit Fog function 2)SUBSCRIBE, NGSI9 3) UPDATE, NGSI10 4) UPDATE, NGSI9 5)NOTIFY, NGSI9 5) Create and deploy fog function instances 6) Processing data and create/update digital twin
  • 31. Editor to Annotate a Fog Function in FogFlow 30 Python or Javascript Code or annotation Implementation image docker images
  • 32. Register a basic operator 31
  • 33. Implement an operator § template is available at github • https://github.com/smartfog/fogflow/tree/master/application/fogfunction/javascript 32 exports.handler = function(contextEntity, publish, query, subscribe) Example of how to publish the generate result Example of how to query something Example of how to subscribe something
  • 34. Use Case: Smart Parking 33 Connected car private site Public site Real-time estimation Prediction Arrival time Recommender Utilizing NGSI API to access digital twins Digital twins: Public parking sites, private parking sites, connected cars
  • 35. 34 Part III: Integration with Other FIWARE GEs
  • 36. Integration with Other GEs 35 Distributed Context Management System OrionProcessing tasks FogFlow subscription APPS Other GE(s) sensors actuators FogFlow Dashboard notify e.g. Cygnus non-NGSI devices Adapter(s) (e.g., openMTC, IoT Agent)
  • 37. Reference and Acknowledgement § The code repository of FogFlow is available at github, https://github.com/smartfog/fogflow § Online tutorial is available at http://fogflow.readthedocs.io/ § This work has been partially funded by the European Union’s Horizon 2020 research and innovation program within the CPaaS.io project under Grant Agreement No. 723076 36