immutable infrastructure - goto conferencegotocon.com/dl/goto-berlin-2015/goto_nights/goto... ·...
TRANSCRIPT
![Page 2: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/2.jpg)
About Axel Fontaine
• Founder and CEO of Boxfuse
• Over 15 years industry experience
• Continuous Delivery expert
• Regular speaker at tech conferences
• JavaOne RockStar in 2014
@axelfontaine
![Page 3: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/3.jpg)
flywaydb.org
![Page 4: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/4.jpg)
boxfuse.com
![Page 5: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/5.jpg)
Let’s start with a small story
![Page 6: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/6.jpg)
http://commons.wikimedia.org/wiki/File:Gluehlampe_01_KMJ.jpg
Incandescent Bulb60 W
LED Bulb10 W
![Page 7: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/7.jpg)
Heater that gives offa little bit of light
Light that gives offa little bit of heat
![Page 8: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/8.jpg)
![Page 9: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/9.jpg)
Edison Screw
![Page 10: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/10.jpg)
Simple, stable,standards-compliantinterfacewith a clear contract
Myresponsibility
The electricity company’sresponsibility
![Page 11: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/11.jpg)
Simple, stable,standards-compliantinterfacewith a clear contract
RoomFor
Innovation
UndifferentiatedHeavy Lifting
![Page 12: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/12.jpg)
back to IT infrastructure …
![Page 13: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/13.jpg)
POLL:what type of infrastructure are you running on?
• On Premise
• Colocation
• Root Server
• Cloud
![Page 14: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/14.jpg)
How did this evolve ?
![Page 15: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/15.jpg)
sometime in the 20th century …
![Page 16: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/16.jpg)
![Page 17: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/17.jpg)
http://en.wikipedia.org/wiki/File:Tdkc60cassette.jpg
![Page 18: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/18.jpg)
![Page 19: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/19.jpg)
+=ONPREM
+
Challenges
• Power, Network, Cooling• Physical Security• Physical Space• Procurement, Vendor Management• Capacity Planning• Financing• OS + Patches• App + Updates
![Page 20: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/20.jpg)
+=ONPREM
+
Our responsibility
![Page 21: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/21.jpg)
+ +
Our responsibility
Their responsibility
=COLO
![Page 22: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/22.jpg)
+=COLO +
Simple, stable, standards-compliant
interface:
(19” Rack, AC Power, Ethernet, …)
![Page 23: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/23.jpg)
Can change as long as it
complies with the interface
contract
+=COLO + UndifferentiatedHeavy Lifting
Our responsibility
![Page 24: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/24.jpg)
=ROOTSERVER
+ UndifferentiatedHeavy Lifting
Our responsibility
Can change as long as it
complies with the interface
contract
![Page 25: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/25.jpg)
=ROOTSERVER
+ UndifferentiatedHeavy Lifting
Simple, stable, standards-compliant interface
Software <-> Hardware
![Page 26: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/26.jpg)
RoomFor
Innovation+ Undifferentiated
Heavy Lifting
Could this be our industry’s Edison Screw?
Simple, stable, standards-compliant interface
![Page 27: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/27.jpg)
Let’s talk about software
![Page 28: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/28.jpg)
POLL:which level of automation are you at?
• Build• Unit Tests• Continuous Integration• Acceptance Tests• Continuous Deployment (Code)• Continuous Deployment (Code + DB + Configuration)• Infrastructure
![Page 29: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/29.jpg)
Build Test
![Page 30: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/30.jpg)
• One immutable unit• Regenerated after every change• Promoted from Environment to Environment
Classic Mistake: Build per Environment
![Page 31: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/31.jpg)
OS Kernel
Libraries
Language
App Server
App
![Page 32: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/32.jpg)
OS Kernel
Libraries
Language
App Server
App
![Page 33: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/33.jpg)
why aren’t we doing the samefor the layers this is running on ???
![Page 34: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/34.jpg)
what could possibly go wrongin these other layers ???
![Page 35: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/35.jpg)
missing software
![Page 36: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/36.jpg)
wrong name
![Page 37: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/37.jpg)
bad version
![Page 38: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/38.jpg)
incorrect permissions
![Page 39: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/39.jpg)
http://www.flickr.com/photos/travelinlibrarian/2409633653/sizes/l/
critical resource in use
![Page 40: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/40.jpg)
what aren’t we holding our servers to the same standards as our applications ???
![Page 41: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/41.jpg)
![Page 42: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/42.jpg)
OS Kernel
Libraries
Language
App Server
App
Build Test
![Page 43: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/43.jpg)
OS Kernel
Libraries
Language
App Server
App
Build Test
App
![Page 44: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/44.jpg)
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
Multiple instances in multiple Environments
![Page 45: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/45.jpg)
OS Kernel
Libraries
Language
App Server
App
Multiple instances in multiple Environments
• All instances should be as similar as possible(any difference is a potential source of errors)
• That also includes your local Dev environment!
• Must be able to reliably provision new ones(and recreate existing ones from scratch)
![Page 46: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/46.jpg)
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
Updates UpdatesUpdates
Sysadmin
![Page 47: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/47.jpg)
If I had asked my customers what they wanted they would have said a faster horse.
Henry Ford
![Page 48: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/48.jpg)
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
Updates UpdatesUpdates
Sysadmin
![Page 49: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/49.jpg)
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
Updates UpdatesUpdates
Automated Sysadmin
![Page 50: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/50.jpg)
fast forward to 2015 …
![Page 51: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/51.jpg)
Every day, AWS adds enough server capacity to power the whole $5B enterprise Amazon.com was in 2003.Weekends included.
![Page 52: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/52.jpg)
"Advanced Test Reactor" by Argonne National Laboratory -originally posted to Flickr as Advanced Test Reactor core, Idaho National LaboratoryUploaded using F2ComButton. Licensed under CC BY-SA 2.0 via Wikimedia Commons -http://commons.wikimedia.org/wiki/File:Advanced_Test_Reactor.jpg#mediaviewer/File:Advanced_Test_Reactor.jpg
"RIAN archive 341194 Kursk Nuclear Power Plant" by RIA Novosti archive, image #341194 / Sergey Pyatakov / CC-BY-SA 3.0. Licensed under CC BY-SA 3.0 via Wikimedia Commons -http://commons.wikimedia.org/wiki/File:RIAN_archive_341194_Kursk_Nuclear_Power_Plant.jpg#mediaviewer/File:RIAN_archive_341194_Kursk_Nuclear_Power_Plant.jpg
Control Plane Data Plane
![Page 53: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/53.jpg)
Control Plane Data Plane
![Page 54: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/54.jpg)
• Shift to a world of abundance(no more resource scarcity)
• Clean Control Plane/Data Plane splitwith API-based provisioning
• Cost-based Architectureswith the ability to turn infrastructure off
Benefits of the cloud
![Page 55: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/55.jpg)
it is time to rethink the faster horse
![Page 56: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/56.jpg)
App
OS Kernel
Libraries
Language
App Server
Build Test
![Page 57: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/57.jpg)
App
OS Kernel
Libraries
Language
App Server
Build Test
UndifferentiatedHeavy lifting
![Page 58: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/58.jpg)
App
OS Kernel
Libraries
Language
App Server
Build Test
![Page 59: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/59.jpg)
App
Machine Image
OS Kernel
Libraries
Language
App Server
Build TestMachine
Image
![Page 60: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/60.jpg)
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
OS Kernel
Libraries
Language
App Server
App
Updates
![Page 61: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/61.jpg)
Machine Image
Machine Image
Machine Image
Updates
![Page 62: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/62.jpg)
but there is one big problem left …
![Page 63: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/63.jpg)
Machine Image
Network Cable
![Page 64: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/64.jpg)
Machine Image
Network CableMultiple
GB
![Page 65: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/65.jpg)
Running servers in production should be like going backpacking. You take the bare minimum with you. Anything else is going to hurt.
A Wise Man
![Page 66: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/66.jpg)
what is really adding business value ???
![Page 67: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/67.jpg)
Machine Image
Network Cable
![Page 68: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/68.jpg)
Editors
Daemons OS Kernel
Libraries
Utilities
Drivers
App
App Server
Package Mgr
Compilers
SSH
Firewall
Compatibility
Man Pages
Language
Log Files
Users
Shells
Network Cable
![Page 69: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/69.jpg)
OS Kernel
Libraries
App
App Server
Language
Bootable App
![Page 70: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/70.jpg)
MultipleGB
40 – 80 MB
![Page 71: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/71.jpg)
Network CableBootable
App
![Page 72: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/72.jpg)
who is this for ???
![Page 73: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/73.jpg)
OS Kernel
Libraries
Language
App Server
App
12-factor app
![Page 74: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/74.jpg)
demo
![Page 75: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/75.jpg)
What are the implications ???
![Page 76: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/76.jpg)
Focus shift
Individual instances become disposable
Instance Service
![Page 77: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/77.jpg)
Treat servers like cattle instead of pets
![Page 78: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/78.jpg)
high uptime is a liability
The longer an instance is up,the harder it becomes to recreate exactly
(and it will fail eventually!)
![Page 79: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/79.jpg)
How to solve service discovery ?
Use a stable entry point with an internal registry
Bootable App
Bootable App
Bootable App
? ElasticLoad
Balancer
![Page 80: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/80.jpg)
What about security ?
When was the last time your toaster got hacked?
![Page 81: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/81.jpg)
What about security ?
• Smallest possible attack surface
• Vastly reduced implications due to low uptime and transient nature of instances
• Very difficult to exploit other systemsbecause essential tooling is missing
![Page 82: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/82.jpg)
• Bake as much configuration as possible for all environments directly in the Bootable App
• Use environment detection and auto-configuration
• Pass remaining configuration at startup and expose it as environment variables
what about configuration ???
![Page 83: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/83.jpg)
what about the database ???
![Page 84: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/84.jpg)
Bootable App
what about the database ???
![Page 85: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/85.jpg)
what about the database ???
• Keep all persistent state, including the database, out of the instance
• Many good hosted solutions availablelike Amazon RDS or Google Cloud SQL
• Use a database migration tool like Flyway to update on application startup
![Page 86: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/86.jpg)
Bootable App
what about the logs ???
Ship logs to a central log server
where they can be• aggregated• stored and backuped• indexed• searched through a nice web UI
Many good hosted solutions• Loggly• Logentries• Papertrail• …
![Page 87: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/87.jpg)
what about sessions ???
Bootable App
Keep session in an encrypted and signed cookie
• avoids session timeouts• avoids server clustering & session replication• avoids sticky sessions & server affinity
![Page 88: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/88.jpg)
what about rolling out new versions ???
![Page 89: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/89.jpg)
Load Balancer
App v1
App v1
Logs
Availability Zone 1
Availability Zone 2
![Page 90: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/90.jpg)
Load Balancer
App v2
App v1
App v2
App v1
Logs
Availability Zone 1
Availability Zone 2
![Page 91: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/91.jpg)
Load Balancer
App v2
App v2
Logs
Availability Zone 1
Availability Zone 2
![Page 92: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/92.jpg)
what about containers ???
![Page 93: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/93.jpg)
understanding modern CPUs
Both Intel and AMD have hardware support for virtualization
• isolation• performance
![Page 94: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/94.jpg)
Bootable App
Hardware
Hypervisor
Bootable App
Hardware
OS+ContainerRuntime
On PremOn Prem
![Page 95: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/95.jpg)
Bootable App
Hardware
Hypervisor
Bootable App
Hardware
Hypervisor
OS+ContainerRuntime
Bootable App
Hardware
OS+ContainerRuntime
On PremOn Prem /Cloud
Cloud
Only makes sense if you cannot afford
$9.60/month granularity
![Page 96: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/96.jpg)
Bootable App
Hardware
Hypervisor
Bootable App
Hardware
Hypervisor
OS+ContainerRuntime
Bootable App
Hardware
OS+ContainerRuntime
On PremOn Prem /Cloud
Cloud
Only makes sense if you cannot afford
1.3 cents /hour granularity
![Page 97: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/97.jpg)
summary
![Page 98: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/98.jpg)
• One immutable unit• Regenerated after every change• Promoted from Environment to Environment
Classic Mistake: Build per Environment
![Page 99: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/99.jpg)
Bootable App
• One immutable unit• Regenerated after every change• Promoted from Environment to Environment
Classic Mistake: Build per Environment
![Page 100: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/100.jpg)
boxfuse.com
![Page 101: Immutable Infrastructure - GOTO Conferencegotocon.com/dl/goto-berlin-2015/GOTO_Nights/GOTO... · •Continuous Delivery expert •Regular speaker at tech conferences •JavaOne RockStar](https://reader034.vdocuments.site/reader034/viewer/2022050100/5f3fab72ad3ed336aa3d78ce/html5/thumbnails/101.jpg)
Thanks !
AXEL FONTAINE@axelfontaine
boxfuse.com