Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

M.E.L.I.G. Unikernel and Serverless

416 views

Published on

This MeetUp gathering talked about the different virtualization techniques used today and how they are employable in the different software architectures.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

M.E.L.I.G. Unikernel and Serverless

  1. 1. VM -> SERVERLESS MEETUP 2017-03-23
  2. 2. OF IT-INFRASTRUCTURE COMMODITISATION
  3. 3. COMMODITISATION SHORT HISTORY OF COMPUTE 1960 2000 ▸ Mainframes ▸ Minicomputers ▸ Unix Servers/Workstations ▸ Windows/Linux on x86 3
  4. 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. 5. COMMODITISATION SHORT HISTORY OF COMPUTE 1960 2000 ▸ Mainframes ▸ Minicomputers ▸ Unix Servers/Workstations ▸ Windows/Linux on x86 5
  6. 6. COMMODITISATION SHORT HISTORY OF COMPUTE physicalvirtual 1960 2000 today ▸ Mainframes ▸ Minicomputers ▸ Unix Servers/Workstations ▸ Windows/Linux on x86 5
  7. 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. 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. 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. 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. 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. 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. 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
  14. 14. userland TEXT hardware Traditional Virtualization Containerization application hardware
  15. 15. userland TEXT hardware userland application Traditional Virtualization Containerization application libs sys-calls hardware
  16. 16. userland TEXT hardware kernel userland application Traditional Virtualization Containerization application libs sys-calls hardware hardware
  17. 17. userland TEXT hardware kernel userland application Traditional Virtualization Containerization hypervisor application libs sys-calls hardware hardware
  18. 18. userland TEXT hardware kernel kernel userland application Traditional Virtualization Containerization hypervisor application libs sys-calls hardware hardware
  19. 19. userland TEXT hardware kernel kernel userland application Traditional Virtualization Containerization hypervisor application libs sys-calls hardware hypercalls hardware
  20. 20. userland TEXT hardware kernel kernel userland application Traditional Virtualization Containerization hypervisor application libs sys-calls hardware hypercalls hardware virtualization magic
 (HVM, PV, SR-IOV,
 PCI-passthrough, hyper-calls, …)
  21. 21. userland TEXT hardware kernel kernel userland application Traditional Virtualization Containerization hypervisor kernel application libs sys-calls hardware hypercalls hardware virtualization magic
 (HVM, PV, SR-IOV,
 PCI-passthrough, hyper-calls, …)
  22. 22. userland TEXT hardware kernel kernel Container userland application Traditional Virtualization Containerization lightweight abstraction
 with negligible overhead hypervisor kernel application libs sys-calls hardware hypercalls hardware virtualization magic
 (HVM, PV, SR-IOV,
 PCI-passthrough, hyper-calls, …)
  23. 23. userland TEXT hardware kernel kernel Container userland application Traditional Virtualization Containerization lightweight abstraction
 with negligible overhead hypervisor kernel application libs sys-calls hardware 102 hypercalls hardware virtualization magic
 (HVM, PV, SR-IOV,
 PCI-passthrough, hyper-calls, …)
  24. 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. 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. 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
  27. 27. userland TEXT hardware kernel kernel Traditional Virtualization hypervisor application hardware Unikernel
  28. 28. kernel userland TEXT hardware kernel kernel Traditional Virtualization hypervisor application hardware Unikernel libs app
  29. 29. kernel userland TEXT hardware kernel kernel Traditional Virtualization hypervisor application hardware Unikernel libs app NET VFS + Network + VFS I/O — Multiuser
 — Multiprocess — All other FS — …
  30. 30. kernel userland TEXT hardware kernel kernel Traditional Virtualization hypervisor application hardware Unikernel libs app NET VFS + Network + VFS I/O — Multiuser
 — Multiprocess — All other FS — …
  31. 31. userland TEXT hardware kernel kernel Traditional Virtualization hypervisor application hardware Unikernel + Network + VFS I/O — Multiuser
 — Multiprocess — All other FS — …Unikernel
  32. 32. DEMO
 UNIKERNELS
  33. 33. SOA SOA TO SERVERLESS
  34. 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
  35. 35. MICROSERVICES SOA TO SERVERLESS
  36. 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
  37. 37. SERVERLESS SOA TO SERVERLESS
  38. 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. 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
  40. 40. DEMO
 FAAS
  41. 41. SERVERLESS HOW TO IMPLEMENT? ▸ Technology ▸ linux container ▸ Docker ▸ special purpose ▸ unikernels AWS Lambda 22
  42. 42. christian@qnib.org
 @CQnib QUESTIONS? Thank you for listening

×