Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Advanced Cloud Infrastructures
From Data Centers to Fog Computing (part 1)Guillaume Pierre
Master 2 CCS & SIF, 2017
Advanced Cloud Infrastructures 1 / 35
Advanced Cloud Infrastructures 2 / 35
Advanced Cloud Infrastructures 3 / 35
Table of Contents
1 Cloud Data Centers
2 Cloud-based applications are changing
3 Edge Computing
4 Fog Computing
5 Research question: what is the smallest, cheapest machine which canstill be used as a fog computing node?
6 Virtualizing a Raspberry Pi
Advanced Cloud Infrastructures Cloud Data Centers 4 / 35
Traditional system architectures
MachineOS
Middleware
Application
Traditionalarchitecture
Advanced Cloud Infrastructures Cloud Data Centers 5 / 35
Traditional system architectures
MachineOS
Middleware
Application
Traditionalarchitecture
Advanced Cloud Infrastructures Cloud Data Centers 5 / 35
The varying capacity problem
Com
pute
cap
aci
ty
Time
Demand
Advanced Cloud Infrastructures Cloud Data Centers 6 / 35
The varying capacity problem
Com
pute
cap
aci
ty
Time
DemandNecessary capacity
Advanced Cloud Infrastructures Cloud Data Centers 6 / 35
The varying capacity problem
Compute
capacity
Time
DemandNecessary capacity
Advanced Cloud Infrastructures Cloud Data Centers 6 / 35
The varying capacity problem
Compute
capacity
Time
DemandNecessary capacity
What if demand increases beyond the capacity?
Advanced Cloud Infrastructures Cloud Data Centers 6 / 35
Cloud Computing
Di�cult to vary capacity!
Manual resourcemanagement
Resources available on demand
Resource management is fullyautomated
Pay only for what you use
VirtualizationMachine
OS
Middleware
Application
Machine + OSMachine + OSMachine + OS
Infrastructure as a Service
Traditionalarchitecture
Cloudarchitecture
Advanced Cloud Infrastructures Cloud Data Centers 7 / 35
Cloud Computing
VirtualizationMachine
OS
Middleware
Application
Machine + OSMachine + OSMachine + OS
Infrastructure as a Service
Applications & Services
Traditionalarchitecture
Cloudarchitecture
PaaS MapReduce Spark ...Storm
Advanced Cloud Infrastructures Cloud Data Centers 7 / 35
Table of Contents
1 Cloud Data Centers
2 Cloud-based applications are changing
3 Edge Computing
4 Fog Computing
5 Research question: what is the smallest, cheapest machine which canstill be used as a fog computing node?
6 Virtualizing a Raspberry Pi
Advanced Cloud Infrastructures Cloud-based applications are changing 8 / 35
The new mobile computing landscape
Since 2016: mobile network tra�c > �xed tra�c
Advanced Cloud Infrastructures Cloud-based applications are changing 9 / 35
New types of mobile applications
Interactive applications require ultra-low network latencies
E.g., augmented reality require end-to-end delays under 20ms
But latencies to the closest data center are 20-30ms using wirednetworks, up to 50-150ms on 4G mobile networks!!!
Advanced Cloud Infrastructures Cloud-based applications are changing 10 / 35
The new IoT landscape
Fact: IoT-generated tra�c grows faster than the Internet backbonecapacity
Advanced Cloud Infrastructures Cloud-based applications are changing 11 / 35
New types of mobile applications
Throughput-oriented applications require local computations
E.g., distributed videosurveillance is relevant only close to the cameras
Why waste long-distance network resources?
Advanced Cloud Infrastructures Cloud-based applications are changing 12 / 35
Question
Who owns computing resources located
closest to the mobile end usersand the IoT devices?
Answer: Mobile network operators
Advanced Cloud Infrastructures Cloud-based applications are changing 13 / 35
Question
Who owns computing resources located
closest to the mobile end usersand the IoT devices?
Answer: Mobile network operators
Advanced Cloud Infrastructures Cloud-based applications are changing 13 / 35
Table of Contents
1 Cloud Data Centers
2 Cloud-based applications are changing
3 Edge Computing
4 Fog Computing
5 Research question: what is the smallest, cheapest machine which canstill be used as a fog computing node?
6 Virtualizing a Raspberry Pi
Advanced Cloud Infrastructures Edge Computing 14 / 35
Mobile network operator's revenues
Where does mobile network operator's revenues come from?I 1990's: Voice (not any more)I 2000's: Text/SMS (not any more)I 2010's: Data (not for very long. . . )I What's next?
Services!
Let's steal part of the cloud computing business. . .
I No cloud data center can be closer to the users than us!
Advanced Cloud Infrastructures Edge Computing 15 / 35
Mobile network operator's revenues
Where does mobile network operator's revenues come from?I 1990's: Voice (not any more)I 2000's: Text/SMS (not any more)I 2010's: Data (not for very long. . . )I What's next? Services!
Let's steal part of the cloud computing business. . .
I No cloud data center can be closer to the users than us!
Advanced Cloud Infrastructures Edge Computing 15 / 35
Edge computing
Before:
After:
Advanced Cloud Infrastructures Edge Computing 16 / 35
Standardization e�orts
European Telecommunications Standards Institute:Mobile Multi-Access Edge Computing
I Fujitsu, Hewlett-Packard, Huawei, Intel, Juniper, Motorola,NEC,Nokia, Orange, Samsung, Sony, Vodafone, . . .
I Focus: integration within mobile phone networks
Open Edge Computing InitiativeI Focus: opennessI Intel, Huawei, Vodafone, Carnegie-Mellon university, . . .
Open Fog ConsortiumI ARM, Cisco, Dell, Intel, Microsoft, . . .
Fog/Edge/Massively Distributed Clouds WG at OpenStack
Advanced Cloud Infrastructures Edge Computing 17 / 35
Standardization e�orts
European Telecommunications Standards Institute:Mobile Multi-Access Edge Computing
I Fujitsu, Hewlett-Packard, Huawei, Intel, Juniper, Motorola,NEC,Nokia, Orange, Samsung, Sony, Vodafone, . . .
I Focus: integration within mobile phone networks
Open Edge Computing InitiativeI Focus: opennessI Intel, Huawei, Vodafone, Carnegie-Mellon university, . . .
Open Fog ConsortiumI ARM, Cisco, Dell, Intel, Microsoft, . . .
Fog/Edge/Massively Distributed Clouds WG at OpenStack
Advanced Cloud Infrastructures Edge Computing 17 / 35
Standardization e�orts
European Telecommunications Standards Institute:Mobile Multi-Access Edge Computing
I Fujitsu, Hewlett-Packard, Huawei, Intel, Juniper, Motorola,NEC,Nokia, Orange, Samsung, Sony, Vodafone, . . .
I Focus: integration within mobile phone networks
Open Edge Computing InitiativeI Focus: opennessI Intel, Huawei, Vodafone, Carnegie-Mellon university, . . .
Open Fog ConsortiumI ARM, Cisco, Dell, Intel, Microsoft, . . .
Fog/Edge/Massively Distributed Clouds WG at OpenStack
Advanced Cloud Infrastructures Edge Computing 17 / 35
Standardization e�orts
European Telecommunications Standards Institute:Mobile Multi-Access Edge Computing
I Fujitsu, Hewlett-Packard, Huawei, Intel, Juniper, Motorola,NEC,Nokia, Orange, Samsung, Sony, Vodafone, . . .
I Focus: integration within mobile phone networks
Open Edge Computing InitiativeI Focus: opennessI Intel, Huawei, Vodafone, Carnegie-Mellon university, . . .
Open Fog ConsortiumI ARM, Cisco, Dell, Intel, Microsoft, . . .
Fog/Edge/Massively Distributed Clouds WG at OpenStack
Advanced Cloud Infrastructures Edge Computing 17 / 35
Table of Contents
1 Cloud Data Centers
2 Cloud-based applications are changing
3 Edge Computing
4 Fog Computing
5 Research question: what is the smallest, cheapest machine which canstill be used as a fog computing node?
6 Virtualizing a Raspberry Pi
Advanced Cloud Infrastructures Fog Computing 18 / 35
What is fog computing?
Fog computing = cloud
+ edge
+ end-user devicesas a single execution platform
Low latency
Localized tra�cI Less global tra�cI Better reliabilityI PrivacyI . . .
Advanced Cloud Infrastructures Fog Computing 19 / 35
Fog 6= Cloud
We need cloud servers close to the users, but the users are everywhere(and they are mobile)
I Let's place one cloud server within short range of any end-user device⇒ Fog computing resources will need to be distributed in thousands of
locations
Fog nodes will be connected with commodity networksI Forget your multi-Gbps data center networks!
Fog nodes must be small, cheap, easy to deploy and to replace
Advanced Cloud Infrastructures Fog Computing 20 / 35
Fog 6= Cloud
We need cloud servers close to the users, but the users are everywhere(and they are mobile)
I Let's place one cloud server within short range of any end-user device⇒ Fog computing resources will need to be distributed in thousands of
locations
Fog nodes will be connected with commodity networksI Forget your multi-Gbps data center networks!
Fog nodes must be small, cheap, easy to deploy and to replace
Advanced Cloud Infrastructures Fog Computing 20 / 35
Fog 6= Cloud
We need cloud servers close to the users, but the users are everywhere(and they are mobile)
I Let's place one cloud server within short range of any end-user device⇒ Fog computing resources will need to be distributed in thousands of
locations
Fog nodes will be connected with commodity networksI Forget your multi-Gbps data center networks!
Fog nodes must be small, cheap, easy to deploy and to replace
Advanced Cloud Infrastructures Fog Computing 20 / 35
Fog 6= Cloud
Typical Cloud platform
Few data centers
Lots of resources per datacenter
High-performance networks
Cloud resource location is(mostly) irrelevant
Typical Fog platform
Huge number ofpoints-of-presence
Few resources per PoP
Commodity networks
Fog resource location isextremely important
Advanced Cloud Infrastructures Fog Computing 21 / 35
Fog 6= Cloud
Typical Cloud platform
Few data centers
Lots of resources per datacenter
High-performance networks
Cloud resource location is(mostly) irrelevant
Typical Fog platform
Huge number ofpoints-of-presence
Few resources per PoP
Commodity networks
Fog resource location isextremely important
Advanced Cloud Infrastructures Fog Computing 21 / 35
Table of Contents
1 Cloud Data Centers
2 Cloud-based applications are changing
3 Edge Computing
4 Fog Computing
5 Research question: what is the smallest, cheapest machine which canstill be used as a fog computing node?
6 Virtualizing a Raspberry Pi
Advanced Cloud InfrastructuresResearch question: what is the smallest, cheapest machine
which can still be used as a fog computing node? 22 / 35
Raspberry PIs are more powerful than you may think
RPi3 Pine A64+ HP 820 G2
CPU (s) 46.5 4.1 2.8
Memory (MB/s) 933 1098 5658
Network (Mb/s) 94.2 922 935
Storage (MB/s) 2.53 2.42 23.9
Power when idle (W) 2 2 15
Power under load (W) 4.4 4.1 24.5
Price ∼ 92 e ∼ 74 e ∼ 1600 e
We chose RPi3 as our base platform for the time being
Mostly because of easy purchase options and community support. . .
Advanced Cloud InfrastructuresResearch question: what is the smallest, cheapest machine
which can still be used as a fog computing node? 23 / 35
What about a real application?
Input: live video stream
Processing: face recognition algorithm running inside Apache Flink
The RPIs are �only� 3-5 times slower than my laptop
But they are 17 times cheaper
If my applications scale horizontally I can use as many RPIs asnecessary
Advanced Cloud InfrastructuresResearch question: what is the smallest, cheapest machine
which can still be used as a fog computing node? 24 / 35
What about a real application?
Input: live video stream
Processing: face recognition algorithm running inside Apache Flink
The RPIs are �only� 3-5 times slower than my laptop
But they are 17 times cheaper
If my applications scale horizontally I can use as many RPIs asnecessary
Advanced Cloud InfrastructuresResearch question: what is the smallest, cheapest machine
which can still be used as a fog computing node? 24 / 35
Table of Contents
1 Cloud Data Centers
2 Cloud-based applications are changing
3 Edge Computing
4 Fog Computing
5 Research question: what is the smallest, cheapest machine which canstill be used as a fog computing node?
6 Virtualizing a Raspberry Pi
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 25 / 35
Virtualization
Operating system
App 1 App 2 ...App 3
"The hardware machine"
Assembler layer
Digital logic layer (memory, compute circuits)
Micro-architecture
Peripherals (disk, screen,network, keyboard...)
Bus
Traditional machinearchitecture:
Applications
Operating system
Hardware
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 26 / 35
Virtualization
Operating system
Assembler layer
"The hardware machine"
Assembler layer
Digital logic layer (memory, compute circuits)
Micro-architecture
Peripherals (disk, screen,network, keyboard...)
Bus
Let's create a �special appli-cation� which behaves exactlythe same as the assemblerlayer. . .
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 26 / 35
Virtualization
Host operating system
Hypervisor(assembler layer)
Virtual machine
Assembler layer
Digital logic layer (memory, compute circuits)
Micro-architecture
Peripherals (disk, screen,network, keyboard...)
Bus
Guest operating system
App 1 App 2 ...
"The hardware machine"
We can execute any operatingsystem on top of it. . .
. . . and any applicationover the guest operatingsystem
⇒ We have a virtual ma-chine
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 26 / 35
Virtualization
Host operating system
Hypervisor
Virtual machine 1
Assembler layer
Digital logic layer(memory, compute circuits)
Micro-architecture
Peripherals (disk, screen,network, keyboard...)
Bus
Guest operating system
App 1 App 2 ...
"The hardware machine"
Hypervisor
Virtual machine 2
Guest operating system
App 1 App 2 ...
8 cores, 16 GB RAM
2 cores, 6 GB RAM 4 cores, 8 GB RAM
We can run multiple virtualmachines on the same physicalmachine:
Each virtual machineruns in full isolation fromthe other VMs
Each virtual machineowns a subset of thehardware resources of thephysical machine
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 26 / 35
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 27 / 35
Why is virtualization interesting for cloud providers?
Isolation: I can create multiple VMs on the same machine and giveeach VM to a di�erent user (they will not see nor interferewith each other)
Customization: Each user can customize their VMs according to their ownrequirements.
Consolidation: Few applications can really exploit a large server machine toits maximum capacity. With virtualization I can split thiscapacity in smaller units and thereby increase my resourceutilization.
Management: Virtualization simpli�es resource management: I canmeasure how many resources each user is using, migrate VMsfrom one host to another, etc.
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 28 / 35
Virtualization technologies
Virtualization technologies are now totally mainstream:
Commercial: VMware, Microsoft App-V, . . .
Open-Source: KVM, VirtualBox, Xen, . . .
Paravirtualization vs. full virtualization:
Paravirtualization works on any hardware platform but it requiresspecial support in the guest OS. Slow!
Full virtualization exploits special features of modern CPUs, does notrequire special support in the guest OS. Faster!
Virtual machines are waaaaaayyyyyy too heavyweight for a RPI
Each guest OS needs lots of memory
Each OS needs to execute lots of background stu�
Impossible to run 100+ VMs on a single machine. . .
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 29 / 35
Virtualization technologies
Virtualization technologies are now totally mainstream:
Commercial: VMware, Microsoft App-V, . . .
Open-Source: KVM, VirtualBox, Xen, . . .
Paravirtualization vs. full virtualization:
Paravirtualization works on any hardware platform but it requiresspecial support in the guest OS. Slow!
Full virtualization exploits special features of modern CPUs, does notrequire special support in the guest OS. Faster!
Virtual machines are waaaaaayyyyyy too heavyweight for a RPI
Each guest OS needs lots of memory
Each OS needs to execute lots of background stu�
Impossible to run 100+ VMs on a single machine. . .
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 29 / 35
Containers
Operating system
App 1 App 2 ...App 3
"The hardware machine"
Assembler layer
Digital logic layer (memory, compute circuits)
Micro-architecture
Peripherals (disk, screen,network, keyboard...)
Bus
Traditional machinearchitecture:
Applications
Operating system
Hardware
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 30 / 35
Containers
Operating system
App 1 App 2 ...App 3
"The hardware machine"
Assembler layer
Digital logic layer (memory, compute circuits)
Micro-architecture
Peripherals (disk, screen,network, keyboard...)
Bus
Container 1 Container 2
Let's create groups of processes whichbelong together:
Process groups are totally isolatedfrom each other
Each process group belongs to asingle user
Each process group has its ownhardware resource limits (CPU,RAM, . . . )
Each process group has its ownnetwork access policy
Etc.
⇒ We have containers
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 30 / 35
Container technologies
Containers are an operating system featureI No need for special CPU supportI Fully supported in Linux, Windows, . . .I We usually add an extra software layer to simplify management: Docker
Containers are less customizable than VMsI Container owners cannot choose their OSI But was that really necessary in the �rst place? Not always.
Containers are much more lightweight than VMsI No need to run lots of (mostly identical) operating systems next to
each otherI Containers often start in less than 1 secondI We can easily run hundreds of containers on a mid-sized machine
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 31 / 35
LXC containers
Performance
Performance is extremely closeto bare-metal
Agility
Starting 150 containers w/ ApacheI Total time: 36 s
(240ms/container)I Consumes about 2% of CPUI Memory usage: ∼ 10MB/container
Stopping 150 containers:I Total time: 9 seconds
http://www.slideshare.net/BodenRussell/realizing-linux-containerslxc
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 32 / 35
Docker is a shipping container system for code
https://impythonist.wordpress.com/2015/06/21/
docker-the-future-of-virtualization-for-your-django-web-development/
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 33 / 35
https://blog.docker.com/2015/10/raspberry-pi-dockercon-challenge-winner/
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 34 / 35
Teaser
Next week we'll see thatbuilding a real fog platformis not as easy as it looks . . .
Advanced Cloud Infrastructures Virtualizing a Raspberry Pi 35 / 35