OPENNEBULA TECHDAY KUALA LUMPURMALAYSIA17 FEB 2016
Bukhary Ikhwan IsmailResearcher
Advanced Computing Lab
Application Delivery Platform Towards Edge Computing
Content
1. Motivation2. What is Edge Computing?3. Application Use cases4. Supporting Technology5. Demo
Motivation
• Current Trends
1. Explosive amount of data at the Edge• video, audio, smart devices, sensors or IoT
2. End users demands• better performance
• user experience
• Real time analysis
• We need a way to process data at its source to produce – fast results – real time analytics – for better decision making.
What is Edge Computing?• Pushes – application and data away from centralized nodes closer to the “things” (devices, users,
data).
• Characteristics of the Infra – Geo-distributed– Ideally – “One hop Away”– Generic platform - virtualization
• Benefits– Less data transfer - remove bottlenecks– Improves user QoS– Opportunity to improve OR create new app - Leverage resources that is closer to“things”.
Edge Computing Topology
This environment is characterized by:
Proximity low latency High bandwidth Location awareness
DCISPRANBUILDINGDEVICESThing
Own by TelcoBase station
Own by entitiesMalls, schools, clinics
Voluntary Computing Laptops, desktops, smartphones
ETSI – European Telecommunication Standards Institute
Performance : Is there a low latency requirement? E.g. gaming, safety
Data preprocessing opportunities:Does it make sense to compress or transmit selected data before transferring? e.g. Video Surveillance, traffic monitoring
Distributed application: Does processing at the edge is more attractive? E.g. smart city, monitoring, IoT?
Process locally: Is it better to process data at the edge vs. sending huge data to DC?e.g. Big Data, data cleansing
“Edge computing helps ensure that the right processing takes place at the right time and location” – CISCO
Attaining IoT Value: How To Move from Connecting Things to Capturing Insights Gain an Edge by Taking Analytics to the Edge. Andy Noronha Robert Moriarty Kathy O’Connell Nicola Villa. Cisco 2015
Application suitable at the Edge
Any suitable technology for Application Delivery?
• Light Weight Container Technology for application
• Open platform for developers and sysadmins to build, ship and run distributed app.
• Common use case
– Continuous Integration
– Continuous Delivery – build, deploy, test, release
– Infrastructure Optimization – hypervisor to container infra.
Docker
Docker as a Container System for code..
Docker Benefits• Build better software
– SoC – Developer vs. sysAdmin.
– Accelerate Development
• Eliminate env inconsistencies
• run anywhere
• Raspberry Pi supported
Why Docker for Edge Computing?• Docker Engine meets our needs for application delivery
– Application Provisioning• Simplifies distribution, installation & execution of app.
– Remote management• Easy to update • Pre-configured = easy to manage
– Can run on small devices• Lightweight & Small footprint
DEMO
12
Why Docker is suitable for Edge Computing
Demo context
13
Data Center
Site 1
Site 2 Site 3
Site 4
Video surveillance Remote app for users
Our Demo Context1. Discovery - Discover new devices and join the
platform2. Application Deployment3. Offloading example
Smart cities IoT
Demo 1: DiscoveryNew host
Form mesh network
Configure host
Join resourcePlatfor
m
DC-master
EDGE-node01 EDGE-node02
EDGE-node03
Demo 2: Deployment Simulation at School
EDGE at Remote School
Scenario 1:- Normal Setup
Scenario 2:- Scaling
EDGE-node01 EDGE-node02
LB
• Deploy Load Balancer• Deploy 2 LMS
• Reconfigure load balancer• Deploy additional LMS
DC-Mgmt
• LMS in VM requires 3GB (minimum). +/- 7 Minutes to be ready.
• App in a container would be up in seconds
2 containers 4 containers 8 containers 16 containers
0.29 0.510.97
2.60
Scaling CONTAINERSSE
CON
DS
Deployment Discussion – Fast Start Time
• Two contributing factors that makes it fast
VM
LMS 84 MBAPACHE/PHP 211 MB
Centos VM Image
2355 MB
LMS 84 MB
211MBAPACHE/PHP
181MBContainer
Centos minimal library
1st Factor: Image size
13X smaller
Deployment Discussion – Why is it fast?
Image
App 1
Ver. 1 (1MB)
Ver. 2 (3.4MB)
Ver. 3 (1.4MB)
App 2 (24MB)
App 3 (20MB)
Tomcat (50MB)
JDK (240MB)
APACHE/PHP
Centos
Benefits- Small changes to image.- Transfer only deltas (making transferring app faster)- lower storage usage.
Deployment Discussion – Why it is fast?• Two contributing factors that makes it fast
1st Factor: Image size: Layering
Image Transfer (3GB) VM Boot LMS
4 ~ 6 min 70 sec 2 sec
7 MinutesVM
Image Transfer LMS
20 sec 0.294 sec
Container 20.294 sec
0.294 sec
Cached Container 0.294 secLMS
2nd Factor: start sequence
Benefits1. EC – Generic platform - change app fast.
1. H. M. Patel, Y. Hu, P. Hédé, I. B. M. J. Joubert, C. Thornton, B. Naughton, I. Julian, R. Ramos, C. Chan, V. Young, S. J. Tan, and D. Lynch, “Mobile-Edge Computing-– Introductory Technical White Paper,” Sophia Antipolis, 2014.
Deployment Discussion – Why it is fast?• Two contributing factors makes it fast
Memory Storage0
10002000300040005000
4750
2650
113 475
VM Container
MB
Benefits1. Low footprint & lower resource consumption - edge consists of low end devices [2] .
1. European Telecommunications Standards Institute (ETSI), “Executive Briefing – Mobile Edge Computing ( MEC ) Initiative,” Sophia Antipolis, 2014
Reduce up to 97.62% in memory
Reduce up to 82.08% in storage
Deployment Discussion – Resource Foot Print
Sample Usecase: Mi-Morphe• Mi-Morphe - data cleansing application
– ETL (Extract Transform & Load)– Removes missing/undefined data– Remove duplicate data
Process locally: Is it better to run app OR process data at the edge instead of sending huge data to DC?
Method 1:- User upload data to Cloud
WAN
Cloud Datacenter
User Data
VMMi-morphe
Boot VM
Upload 5GB Data
Process Data
Download 5GB Data
Clone image
WAN
Cloud Datacenter
Mi-MorpheVM image
HypervisorDownload VM
image
VMMi-Morphe
Process Data
User Data
Method 2:- Download VM to user site
Solution – Offload Mi-Morphe to Data Source
WAN
Container Image
Mi-Morphe
edge03Offload container Image to the edge
resource ContainerMi-Morphe
Start Database, Apache Tomcat,
Carte Server
Process Data
Hostcloud01
Hostcloud-registry
User Data
Customer end-pointe.g..
Laptop/Desktop/Server
• Method 1: User Upload data to cloud
• Method 2: Download VM to user site
• Solution: Offload Mi-Morphe engine to data source.
Clone 10GB Image
5 minBoot
5 minUpload 5G of Data
73 minMi-Morphe Process
50 minDownload 5GB of Data
73 min 3H 26 min
Boot
5 minMi-Morphe Process
3000 secsDownload 10GB of VM
140 min 3H 15 min
Download 1.3 GB image
19 min:Launch Container Mi-Morphe Process
50 min 1H 9 min
• Reduce bandwidth usage on WAN. • Offload the applications to the edge. 1 hop away from compute resources.
Benefits:
Sample Usecase: Mi-Morphe
*19 min - but if the layers are cached, the time to download is much more smaller.
Some of Docker Ecosystem
We may use some of it
Conclusion• Docker is suitable for Edge Computing Application Delivery
– Docker as in Docker Engine
• Some of tools in Docker ecosystem – might help
• The orchestration platform is unique toward Edge. – Need to address those requirements.