This MeetUp gathering talked about the different virtualization techniques used today and how they are employable in the different software architectures.
3. COMMODITISATION
SHORT HISTORY OF COMPUTE
1960
2000
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
3
4. COMMODITISATION
SHORT HISTORY OF COMPUTE
1960
2000
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
1996 First x86 commodity Linux cluster
4
5. COMMODITISATION
SHORT HISTORY OF COMPUTE
1960
2000
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
5
6. COMMODITISATION
SHORT HISTORY OF COMPUTE
physicalvirtual
1960
2000
today
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
5
7. COMMODITISATION
SHORT HISTORY OF COMPUTE
physicalvirtual
1960
2000
today
▸ VMware on blades
▸ Public Cloud
▸ Containers
▸ Serverless
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
5
8. TCO
COMMODITISATION
SHORT HISTORY OF COMPUTE
physicalvirtual
1960
2000
today
▸ VMware on blades
▸ Public Cloud
▸ Containers
▸ Serverless
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
5
9. COMMODITISATION
COMMODITY ITEMS (SOFTWARE EATS THE WORLD) *
physicalvirtual
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
▸ VMware on blades
▸ Public Cloud
▸ Containers
▸ Serverless
1960
2000
today
HW SW
HW SW
HW SW
HW SW
SW
SW
* rough estimate
6
10. VIRTUALIZATION TECHNIQUES
THE RAISE OF VIRTUALIZATION
physicalvirtual
▸ VMware on blades
▸ Public Cloud
▸ Containers
▸ Serverless
1960
2000
today
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
7
11. VIRTUALIZATION TECHNIQUES
THE RAISE OF VIRTUALIZATION
physicalvirtual
▸ VMware on blades
▸ Public Cloud
▸ Containers
▸ Serverless
1960
2000
today
▸ Mainframes
▸ Minicomputers
▸ Unix Servers/Workstations
▸ Windows/Linux on x86
7
12. VIRTUALIZATION TECHNIQUES
TECHNIQUES USED
▸ Virtualization provides 1:n consolidation of machines
SERVER
HOST KERNEL
HYPERVISORSERVICES
Userland (OS)
KERNEL KERNEL
Userland
SERVICES SERVICES
Traditional Virtualization
Userland
8
13. VIRTUALIZATION TECHNIQUES
TECHNIQUES USED
▸ Virtualization provides 1:n consolidation of machines
▸ Containerization provides OS-level virtualization
SERVER
HOST KERNEL
HYPERVISORSERVICES
Userland (OS)
KERNEL KERNEL
Userland
SERVICES SERVICES
Traditional Virtualization
Userland
SERVER
HOST KERNEL
Userland
App1 App2
Linux Container
UserlandUserland
SERVICES
8
24. VIRTUALIZATION TECHNIQUES
TECHNIQUES USED
▸ Virtualization provides 1:n consolidation of machines
▸ Containerization provides OS-level virtualization
SERVER
HOST KERNEL
HYPERVISORSERVICES
Userland (OS)
KERNEL KERNEL
Userland
SERVICES SERVICES
Traditional Virtualization
Userland
SERVER
HOST KERNEL
Userland
App1 App2
Linux Container
UserlandUserland
SERVICES
10
25. VIRTUALIZATION TECHNIQUES
TECHNIQUES USED
▸ Virtualization provides 1:n consolidation of machines
▸ Containerization provides OS-level virtualization
▸ Uni-Kernels combine bin, libs and kernel
SERVER
HOST KERNEL
HYPERVISORSERVICES
Userland (OS)
KERNEL KERNEL
Userland
SERVICES SERVICES
Traditional Virtualization
Userland
SERVER
HOST KERNEL
Userland
App1 App2
Linux Container
UserlandUserland
SERVICES
UNIKERNEL
SERVER
HOST KERNEL
OS
Serverless
App1
10
26. VIRTUALIZATION TECHNIQUES
UNIKERNELS
▸ Extract what is really needed from the OS
▸ Kernel-parts, which the app (libs) uses
▸ No multi-process, multi-user setup
▸ creates a sealed, single-purpose image
(VM or HW image)
11
34. SERVICE ORIENTED ARCHITECTURE
SERVICE ORIENTED AMBIGUITY
▸ SOA implies an architecture where applications
disappear
▸ SOA is about allowing systems to communicate
over standard structure
▸ SOA is all about using (mostly) asynchronous
messaging
▸ SOA is about exposing software through web
services
https://martinfowler.com/bliki/ServiceOrientedAmbiguity.html
15
36. MICROSERVICES
SOA DONE RIGHT
▸ run services as distinct processes
▸ communicate over network (HTTP, JSON)
▸ composable pieces
IMG -> https://thenewstack.io/the-new-stack-podcast-show-2-the-rise-of-microservices-in-the-paas-world/
17
38. SERVERLESS
FROM SERVICE TO FUNCTION
▸ no service-loop
▸ each request is handled individually
▸ by incoming HTTP-call, network package
▸ no state within function itself (lambda)
!K7, Stateless (Album cover)
19
39. SERVERLESS
HOW TO IMPLEMENT?
▸ pre-staged
▸ Watchdog that loops binary (faas)
▸ Blocking binary run
▸ ad-hoc
▸ fire-up function when requests comes in
AWS Lambda
20