scaling from bare metal to behemoth with docker and .net vnext
DESCRIPTION
Presented at the Sydney Xerocon 2014, this presentation talks about how to leverage new concepts and technologies such as Docker and the new version of .NET called vNext to create ultra scalable environments and solve problems such as code shipping, dependencies and so on.TRANSCRIPT
![Page 1: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/1.jpg)
Beautiful accounting software
![Page 2: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/2.jpg)
Scaling from bare metal to behemoth with Docker and .NET
vNextJakub Krajcovic, Cloud Architect,
Rackspace Australia
![Page 3: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/3.jpg)
Let me tell you a story
![Page 4: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/4.jpg)
What do we mean by scaling?
![Page 5: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/5.jpg)
Code packaging and shipping
![Page 6: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/6.jpg)
Architecture patterns
![Page 7: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/7.jpg)
Throughput and utilization
![Page 8: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/8.jpg)
Current challenges with scaling
![Page 9: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/9.jpg)
Code shipping today
![Page 10: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/10.jpg)
Always-on environments
![Page 11: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/11.jpg)
Infrastructure is underutilized
![Page 12: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/12.jpg)
What we end up with
![Page 13: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/13.jpg)
How can we solve some of these challenges?
![Page 14: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/14.jpg)
![Page 15: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/15.jpg)
![Page 16: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/16.jpg)
But seriously, what is Docker?
Docker provides a standard way of packing goods [software] into a box with standard properties.
Docker leverages process sandboxing and Union Filesystems to deliver self-contained “boxes” of executable code to multiple environments.
![Page 17: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/17.jpg)
Virtual Machines vs Docker
Server
Host OS
Hypervisor
Guest OS Guest OS
Bins/Libs Bins/Libs
App A App B
Server
Host OS
Docker Engine
Bins/Libs Bins/Libs
App A App B
![Page 18: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/18.jpg)
How does Docker solve our problems?
![Page 19: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/19.jpg)
Docker is a shipping container for code
Docker provides an intermodal container for shipping everything an application needs by combining OS-native isolation and Union Filesystems
![Page 20: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/20.jpg)
Code Shipping with Docker
![Page 21: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/21.jpg)
Different architecture patterns in multi-tenant environments
100 x = 100 x 100 x = 60 x
+
40 x
![Page 22: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/22.jpg)
Better utilization of infrastructure
Docker execution environment
Server Server Server
Libraries
App App App
VM VM VM
Libraries Libraries
Server Server Server
![Page 23: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/23.jpg)
ASP .NET vNext
![Page 24: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/24.jpg)
Code packaging and shipping with vNext
The CLR can be shipped with the application
Everything is a NuGet package
![Page 25: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/25.jpg)
Different architecture patterns in multi-tenant environments
100 x = 100 x 100 x = 60 x
+
40 x
![Page 26: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/26.jpg)
Better utilization of infrastructure
Server Server Server
Libraries
App App App
VM VM VM
Libraries Libraries
Server Server Server
![Page 27: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/27.jpg)
Case studies
![Page 28: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/28.jpg)
![Page 29: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/29.jpg)
![Page 30: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/30.jpg)
From bare metal to behemoth
![Page 31: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/31.jpg)
The missing link
![Page 32: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/32.jpg)
Laptop
App 1 App 2 App 3
Execution Environment
Server
App 1 App 2 App 3
Execution Environment
Server Server Server
Execution Environment
App 1 App 2 App 3 App 4 App 5 App 6 App 7 App 8 App 9
Scaling the new way
![Page 33: Scaling from Bare Metal to Behemoth with Docker and .NET vNext](https://reader038.vdocument.in/reader038/viewer/2022103114/5562f7e1d8b42a213b8b5567/html5/thumbnails/33.jpg)
Beautiful accounting software
RACKSPACE® HOSTING | © RACKSPACE US, INC. | RACKSPACE® AND FANATICAL SUPPORT® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COM
RACKSPACE® HOSTING | Level 1, 37 Pitt Street | Sydney, NSW 2000
Phone: 1-800-722577 | www.rackspace.com.au