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.
Upcoming SlideShare
CIF16: Tor in Haskell, or How To Write Programs For Unikernels (Adam Wick, Galois Inc.)
Next
Download to read offline and view in fullscreen.

4

Share

Download to read offline

CIF16: Rethinking Foundations for Zero-devops Clouds (Maxim Kharchenko, Cloudozer CTO)

Download to read offline

The unikernel approach should not be limited to cloud workloads. The cloud infrastructure itself must be built around the same principles. Our goal is to be able to unroll a private cloud on a hundred of servers within an hour. The resultant cloud infrastructure should not require any maintenance afterwards. The talk discusses the current progress of Cloudozer in making this vision a reality.

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

CIF16: Rethinking Foundations for Zero-devops Clouds (Maxim Kharchenko, Cloudozer CTO)

  1. 1. Rethinking Foundations for Zero-DevOps clouds Maxim Kharchenko CTO/Cloudozer Jan 22, 2016
  2. 2. How hard is to setup a cloud? “It took us almost a year” “3 months just to setup networking” “OpenStack does not work” “Amazon did it”
  3. 3. Zero-DevOps cloud  Our noble goal is to make setting up a cloud as easy as plugging in Ethernet cables   Zero-DevOps cloud has a programmer's interface,  NO separate interface for an administrator   The key idea is to use unikernels for cloud management
  4. 4. Zero-DevOps cloud  [Diagram]
  5. 5. Pieces of the puzzle 1.An Erlang-based unikernel (LING) 2.Inter-domain communication w/o the host kernel 3.Front- and backend drivers implemented in Erlang 4.Fast packet capture using netmap 5.Unikernelised OpenFlow switch (LINCX)
  6. 6. Trivialised cloud infrastructure  Our noble goal is to make the setup of a new cloud infrastructure as easy as plugging in Ethernet cables  Today's talk discusses pieces of the trivialised cloud puzzle:  Erlang-based unikernels  A unikernelised software switch  Message passing w/o a kernel  and more...
  7. 7. LING is an Erlang unikernel  Runs directly on Xen  Also POSIX, ARM and MIPS baremetal ports  Optimised for fast startup  A LING Xen domain starts in 30ms  Highly compatible with Erlang/OTP from Ericsson  Still not a drop-in replacement  Open source (github.com/cloudozer/ling)
  8. 8. Lets run LING  It is as easy as:   $ railing image  $ sudo xl create -c domain_config 
  9. 9. LING is as fast  ESTONE test results: LING Erlang/OTP Time to complete 2.612s 2.710s ESTONES 180,000 171,500
  10. 10. LINCX – an OpenFlow switch  LINCX runs on LING and uses all of Erlang  Flow tables are (hot-loaded) modules  OpenFlow rules compiled to Erlang  Flow tables use pattern matching directly  Cloudozer rewritten earlier version of the switch and made it run 100x faster  Programmable networking is essential for a cloud  Open source (github.com/FlowForwarding/lincx)
  11. 11. Netmap in LING  Packet capture is a bottleneck of an OpenFlow switch  LING supports netmap-enabled interfaces that bypass host networking stack  LINCX with traditional drivers is limited to <500kpps, netmap drivers reach 1.5-2mln pps 
  12. 12. 10GbE switch in software  Netmap-based packet capture makes the Erlang runtime the bottleneck  To pave the way for switching 10GbE in software:  Use native compilation of Erlang  Make GC more deterministic  Keep everything in L3 cache  Codenamed 'Project L' (see below)
  13. 13. Message passing in LING Container1 Process1 Process2 Container1 Process1 Container2 Process2 Always worked Adde d Container1 Process1 Box1 Container2 Process2 Box2 Not yet
  14. 14. Demo: inter-domain message passing   %% domain 41  {42,shell} ! {hi,self()}.   %% domain 42  flush().  Shell got {hi,<41.5>}   (networking not involved)
  15. 15. Demo: message-passing works for Python  Pystraw library (github.com/cloudozer/pystraw)   %% domain 41  {0,master} ! hello.   # domain 0, Python shell  MESSAGE hello TO master  pystraw.send(41, shell, “hi”) 
  16. 16. Self-replication in LING  Management of VM images is the cornerstone of the cloud  LING can make a bootable Xen image from a running instance   ling_selfie:make()  ling_selfie:share()
  17. 17. Demo: A native compiler for Erlang  A part of the Project L  Semantics of Erlang, syntax is different  Type inference, no type annotations  Compiles to LLVM  Preliminary benchmark showed 8x speed improvement vs standard Erlang (Black- Scholes model calculations)
  18. 18. Cloudozer 101  Founded in 2012  Cloudozer mission: advancement of OS-less technologies  Registered in UK, primary place of business: Kyiv, Ukraine  Headcount: 6  cloudozer.com - erlangonxen.org
  19. 19. Questions welcome Thank you
  • artob

    Jun. 23, 2016
  • klein128

    Feb. 11, 2016
  • NivesTorresi

    Feb. 10, 2016
  • am2004

    Feb. 9, 2016

The unikernel approach should not be limited to cloud workloads. The cloud infrastructure itself must be built around the same principles. Our goal is to be able to unroll a private cloud on a hundred of servers within an hour. The resultant cloud infrastructure should not require any maintenance afterwards. The talk discusses the current progress of Cloudozer in making this vision a reality.

Views

Total views

1,703

On Slideshare

0

From embeds

0

Number of embeds

195

Actions

Downloads

18

Shares

0

Comments

0

Likes

4

×