SlideShare a Scribd company logo
Mike Fowler (mike@bashton.com) FLOSS UK Spring 2017
The Disposable Infrastructure
●
Currently a Senior Site Reliability Engineer for
Claranet|Bashton
●
Background in Software Engineering, Systems
Engineering & System Administration
●
Contributed to several open source projects (YAWL,
PostgreSQL & Terraform)
●
Been using Linux & Open Source software since
1999
About Me
●
Typical cloud migration strategies
●
The drawbacks of typical cloud migration strategies
●
The five theses of a disposable infrastructure
●
How we build a disposable infrastructure
Overview
●
Duplicate existing estate in the cloud
●
Use cloud as spare/batch capacity
●
Brave New World
– Greenfield development
– “Version 2.0”
Approaching Cloud Migration
●
Direct mapping of existing infrastructure to the cloud
– Load balancers become Elastic Load Balancers
– SANs become Buckets or Elastic File Systems
●
Minimal operational change required
– Everything is the same just in a new location
●
Perceived as a “quick win” to cloud adoption
– Little AWS/GCP/Azure specific knowledge required
The Appeal of a Lift & Shift
●
No “legacy” baggage
●
Free reign for experimentation
●
Perceived as a “low risk” path to cloud adoption
– If it doesn’t work, switch it off
– “No risk” to existing production environment
The Appeal of a Brave New World
●
Are we just building a traditional but virtual data
centre?
– Lift & Shift is operationally the same
– Brave New World isn’t part of the Real World
●
How are we leveraging the power of a dynamic
infrastructure?
– Our infrastructure is scalable, but is the application?
●
Are we using IAAS where we could be using PAAS?
– e.g. Running a message broker instead of SQS
Are we really “doing cloud”?
●
We’re changing only where our hardware is
– Instance size based on current hardware size
– No change to deployment process
●
Under utilisation of resource
– Still paying for excess capacity
●
Stunted scalability
– We can throw more virtual hardware at it
– Add additional node behind load balancers
The Penalty of a Lift & Shift
●
Organisationally isolated
– Limited impact to existing practices
– Leads to a “Us vs. Them” mentality
●
Focus is usually on application functionality with
infrastructure seen as a necessity
●
Project has a high risk of failure
– Care free scoping leads to an unfocused project
– Significant time can be lost to integrating with the
old world
The Penalty of a Brave New World
●
Conway’s Law: “Organisations which design systems … are
constrained to produce designs which are copies of the
communication structures of these organisations”
●
Kief Morris: “In many cases, applying existing patterns will, at
best, miss out on opportunities to leverage newer technology to
simplify and improve the architecture. At worst, replicating existing
patterns with the newer platforms will involve adding even more
complexity.”
●
Fred Brooks: “A scaling-up of a software entity is not merely a
repetition of the same elements in larger size; it is necessarily an
increase in the number of different elements. In most cases, the
elements interact with each other in some nonlinear fashion, and
the complexity of the whole increases much more than linearly.”
Breaking the Mould
1) The attitude you have to your environment will
determine the limits of your scalability
2) Continuous integration (CI) and delivery (CD) is a must
3) Your applications need to be (re)built to fit a dynamic
infrastructure
4) Dynamic infrastructure must be treated as a first class
citizen in any cloud project
5) Planning to fail will lead to success
The Five Theses
●
The more you care about individual things the more
they will hold your attention
●
In a truly scalable environment you should only care
about the combination of many individual things
Attitude
Thesis 1
The attitude you have to your environment will
determine the limits of your scalability
●
You treat your servers like pets
– You give them names (igloo, husky, snowshoe)
– You give them homes (racks on site or co-located)
– If they fail, you do everything you can to save them
●
Every server is an investment
– Often the best hardware that can be afforded
– Amortised over years
– Excess capacity to allow for growth
●
Provisioning new servers takes weeks
Attitude: Living in the Iron Age
●
You treat your servers like cattle
– They have identifiers
– You care only where they are geographically
– If they fail, you put them down and get a new one
●
Your architecture is your investment
– Configuration is chosen for your current load
– Pay for what you use
– Capacity can be added when required
●
Provisioning new servers takes seconds
Attitude: Living in the Cloud Age
●
Are we simply herding our pets?
– In a Lift & Shift this is almost certainly so
– Scaling groups is a start but it is not the end
●
How are we managing our virtual servers?
– Complex cloud-init scripts?
– Traditional configuration management?
Attitude: Is Pets v Cattle enough?
●
Everything is a package and can be discarded
●
You treat your servers like single use products
– They’re pre-packaged for a particular purpose
– You still care only where they are geographically
– If they fail, you toss it away and grab another
●
You automate everything
– Servers should be immutable
– Never make a manual change
Attitude: The Disposable Infrastructure
●
Repeatability brings reliability and predictability
●
Defining a build pipeline:
– Ensures the same process is followed for every
change
– Provides an audit trail for every change
– Gives visibility of your value stream
Be Continuous
Thesis 2
Continuous integration (CI) and delivery (CD) is a must
●
Your developers probably already practice CI
– It is the standard for code development
– The output of CI can be the start of CD
●
Continuous delivery doesn’t have to mean continuous
deployment
– Build pipelines can have approval stages
– Every change should be deployable
Be Continuous
●
Many applications expect a static infrastructure
– Hard-coded assumptions that an IP address won’t
change once an application is started
●
Many applications are cluster unaware
– Sticky sessions on load balancers can help
– Some protocols don’t load balance well
Reactoring to the Cloud
Thesis 3
Your applications need to be (re)built to fit a dynamic
infrastructure
●
Refactor to contemporary architectural approaches
– Service Oriented Architectures & Microservices
– Transition from stateful services to stateless
●
Package everything using distribution packagers
– The output of your build pipeline is a RPM/DEB
– Your $CM_TOOL already supports this
●
Chose a deployment strategy
– Machine images vs. containers
Reactoring to the Cloud
●
Fear not vendor lock in, savings are to be reaped
leveraging commodity services
– Use SQS instead of automating the installation and
configuration of a message broker and accepting
the operational burden of maintaining it
– Careful abstraction of the API will allow porting to a
different platform if absolutely necessary
Reactoring to the Cloud
●
Design the infrastructure in parallel to the cloud aware
application changes
●
Mandate every instance is part of a scaling group to
enforce cluster awareness
●
Use the same principles for infrastructure development
as you use for applications
Infrastructure is Code
Thesis 4
Dynamic infrastructure must be treated as a first class
citizen in any cloud project
●
Script/encode everything unless there is no API/tooling
support
●
Deploy the same infrastructure in development, test
and production environments
– Sizing can be parameterised
●
Your deployment pipeline becomes the assembly of
application packages and infrastructure configuration
●
High cohesion and loose coupling applies to
infrastructure as much as it does to applications
Infrastructure is Code
●
If it can go wrong, it will go wrong so think in terms of
when and not if
●
Treating our infrastructure and its hosted applications
as disposable in conjunction with CD eliminates a
number of failure scenarios
Planning to fail
Thesis 5
Planning to fail will lead to success
●
Regularly test your disposability
– Terminate instances at random to ensure resiliency
– Block all network access to an instance
– Chaos Monkey & the Simian Army
– Trigger failovers for less disposable services
●
Constantly churning disposable instances helps
prevent configuration drift of immutable servers
Planning to fail
●
Availability and durability cost
– Favour numerous small instances over a handful of
large instances
●
Identify points of failure and assess:
– How often will this failure occur?
– How do I mitigate this failure?
– How do I test this failure to ensure mitigation?
– Is the cost of mitigation worth the customer impact
during failure?
Planning to fail
●
Be honest in assessing the worth of your business
– Do you really need to double your costs to run in
multiple regions?
– Trello, Slack & many other high profile companies –
including Amazon - were affected by the S3 outage
Planning to fail
●
Data is not disposable and is probably more important
than your availability
●
Ship log files to CloudWatch or Stackdriver
●
Make back-ups and regularly test they restore
– Gitlab had 5 separate backup processes, they all
failed
– Consider storing backups in both S3 & Google
– Store backups in multiple regions
Data is not Disposable
●
If you must use persistent disks:
– Use multiple disks and use RAID-1
– Snapshot the disks regularly
●
Test the durability of your data
– User error is your biggest risk
●
“I forgot the WHERE clause”
●
“I thought I was in the test environment”
– Regularly exercise data loss & recovery scenarios
in development and test environments
Data is not Disposable
●
We will have two identical CI pipelines for the
applications, the output of each being AMI images
●
A separate CD pipeline executes infrastructure code
and rolls out the new AMIs
●
Goal is to promote infrastructure and AMIs between
environments
Under Construction
Let us assume we have a front end web application
which places orders in a queue for subsequent
asynchronous fulfilment by a separate application
backed by a database. We’ve already refactored our
applications for the cloud.
●
Source our code from a repo, build and test
●
Package our application as a DEB or RPM
●
Place our artifact into a S3 repository
●
Run Packer to generate a new AMI
Application Pipeline
●
https://packer.io
●
Can create many different machine images
●
Consider creating a base image to control OS updates
●
Use normal configuration management tools
– Support for Ansible, Chef & Puppet
– Can just write shell script if you must
●
Use placeholders for configuration to be filled by
launch scripts
Packer
●
Triggered by new AMIs or Terraform code changes
●
Apply Terraform to update the infrastructure
●
Run integration tests to verify application build
●
Wait for approval before promotion to next
environment
Infrastructure Pipeline
●
https://terraform.io
●
Declarative language for the construction of
infrastructure
●
Supports all major vendors
●
State can be stored in buckets to facilitate sharing
●
Separate out infrastructure layers
– Minimises blast radius of changes
– Keep persistent apart from disposable
Terraform
●
Any instance can be terminated
●
Resilient to zone failure
●
Cross-region read replica allows DR for region failure
– Just need to run Terraform to add the instances
when required and update Route 53
Deployed Infrastructure
●
Have attitude
●
Be continuous
●
Refactor to the Cloud
●
Infrastructure is code
●
Plan to fail
●
Data is King
Summary
Disposable infrastructure

More Related Content

What's hot

Devoxx PL 2018 - Microservices in action at the Dutch National Police
Devoxx PL 2018 - Microservices in action at the Dutch National PoliceDevoxx PL 2018 - Microservices in action at the Dutch National Police
Devoxx PL 2018 - Microservices in action at the Dutch National Police
Bert Jan Schrijver
 
Experiencing the hyperconverged
Experiencing the hyperconvergedExperiencing the hyperconverged
Experiencing the hyperconverged
ICT-Partners
 
DevOps tools for winning agility
DevOps tools for winning agilityDevOps tools for winning agility
DevOps tools for winning agility
Kellyn Pot'Vin-Gorman
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOps
Nicolas (Nick) Barcet
 
Webinar : Docker in Production
Webinar : Docker in ProductionWebinar : Docker in Production
Webinar : Docker in Production
Newt Global Consulting LLC
 
Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritage
Ran Levy
 
Accelerating Devops via Data Virtualization | Delphix
Accelerating Devops via Data Virtualization | DelphixAccelerating Devops via Data Virtualization | Delphix
Accelerating Devops via Data Virtualization | Delphix
DelphixCorp
 
Networking in the cloud: An SDN primer
Networking in the cloud: An SDN primerNetworking in the cloud: An SDN primer
Networking in the cloud: An SDN primerMidokura
 
JELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRY
JELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRYJELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRY
JELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRY
Ruslan Synytsky
 
Webinar : Microservices and Containerization
Webinar : Microservices and ContainerizationWebinar : Microservices and Containerization
Webinar : Microservices and Containerization
Newt Global Consulting LLC
 
DevOps: Automate all the things
DevOps: Automate all the thingsDevOps: Automate all the things
DevOps: Automate all the things
Mat Mannion
 
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbeganKoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
Tobias Koprowski
 
Webinar: What’s Breaking Your VMware Backups? And How You Can Fix Them Quickly
Webinar: What’s Breaking Your VMware Backups? And How You Can Fix Them QuicklyWebinar: What’s Breaking Your VMware Backups? And How You Can Fix Them Quickly
Webinar: What’s Breaking Your VMware Backups? And How You Can Fix Them Quickly
Storage Switzerland
 
Dublin JUG February 2018 - Microservices in action at the Dutch National Police
Dublin JUG February 2018 - Microservices in action at the Dutch National PoliceDublin JUG February 2018 - Microservices in action at the Dutch National Police
Dublin JUG February 2018 - Microservices in action at the Dutch National Police
Bert Jan Schrijver
 
Get There meetup March 2018 - Microservices in action at the Dutch National P...
Get There meetup March 2018 - Microservices in action at the Dutch National P...Get There meetup March 2018 - Microservices in action at the Dutch National P...
Get There meetup March 2018 - Microservices in action at the Dutch National P...
Bert Jan Schrijver
 
iSense Java Summit 2017 - Microservices in action at the Dutch National Police
iSense Java Summit 2017 - Microservices in action at the Dutch National PoliceiSense Java Summit 2017 - Microservices in action at the Dutch National Police
iSense Java Summit 2017 - Microservices in action at the Dutch National Police
Bert Jan Schrijver
 
A day in the life of a VSAN I/O - STO7875
A day in the life of a VSAN I/O - STO7875A day in the life of a VSAN I/O - STO7875
A day in the life of a VSAN I/O - STO7875
Duncan Epping
 
Ez performance measurement
Ez performance measurementEz performance measurement
Ez performance measurement
Gaetano Giunta
 
Dev ops for software architects
Dev ops for software architectsDev ops for software architects
Dev ops for software architectsLen Bass
 

What's hot (20)

Devoxx PL 2018 - Microservices in action at the Dutch National Police
Devoxx PL 2018 - Microservices in action at the Dutch National PoliceDevoxx PL 2018 - Microservices in action at the Dutch National Police
Devoxx PL 2018 - Microservices in action at the Dutch National Police
 
Experiencing the hyperconverged
Experiencing the hyperconvergedExperiencing the hyperconverged
Experiencing the hyperconverged
 
DevOps tools for winning agility
DevOps tools for winning agilityDevOps tools for winning agility
DevOps tools for winning agility
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOps
 
Webinar : Docker in Production
Webinar : Docker in ProductionWebinar : Docker in Production
Webinar : Docker in Production
 
Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritage
 
Accelerating Devops via Data Virtualization | Delphix
Accelerating Devops via Data Virtualization | DelphixAccelerating Devops via Data Virtualization | Delphix
Accelerating Devops via Data Virtualization | Delphix
 
Networking in the cloud: An SDN primer
Networking in the cloud: An SDN primerNetworking in the cloud: An SDN primer
Networking in the cloud: An SDN primer
 
JELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRY
JELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRYJELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRY
JELASTIC IS THE PIONEER AND VISIONARY IN THE CLOUD INDUSTRY
 
Webinar : Microservices and Containerization
Webinar : Microservices and ContainerizationWebinar : Microservices and Containerization
Webinar : Microservices and Containerization
 
DevOps: Automate all the things
DevOps: Automate all the thingsDevOps: Automate all the things
DevOps: Automate all the things
 
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbeganKoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
KoprowskiT_SQLSaturdayManchester_2AMaDisasterJustbegan
 
Jelastic Features 2.x
Jelastic Features 2.xJelastic Features 2.x
Jelastic Features 2.x
 
Webinar: What’s Breaking Your VMware Backups? And How You Can Fix Them Quickly
Webinar: What’s Breaking Your VMware Backups? And How You Can Fix Them QuicklyWebinar: What’s Breaking Your VMware Backups? And How You Can Fix Them Quickly
Webinar: What’s Breaking Your VMware Backups? And How You Can Fix Them Quickly
 
Dublin JUG February 2018 - Microservices in action at the Dutch National Police
Dublin JUG February 2018 - Microservices in action at the Dutch National PoliceDublin JUG February 2018 - Microservices in action at the Dutch National Police
Dublin JUG February 2018 - Microservices in action at the Dutch National Police
 
Get There meetup March 2018 - Microservices in action at the Dutch National P...
Get There meetup March 2018 - Microservices in action at the Dutch National P...Get There meetup March 2018 - Microservices in action at the Dutch National P...
Get There meetup March 2018 - Microservices in action at the Dutch National P...
 
iSense Java Summit 2017 - Microservices in action at the Dutch National Police
iSense Java Summit 2017 - Microservices in action at the Dutch National PoliceiSense Java Summit 2017 - Microservices in action at the Dutch National Police
iSense Java Summit 2017 - Microservices in action at the Dutch National Police
 
A day in the life of a VSAN I/O - STO7875
A day in the life of a VSAN I/O - STO7875A day in the life of a VSAN I/O - STO7875
A day in the life of a VSAN I/O - STO7875
 
Ez performance measurement
Ez performance measurementEz performance measurement
Ez performance measurement
 
Dev ops for software architects
Dev ops for software architectsDev ops for software architects
Dev ops for software architects
 

Viewers also liked

Simple Odoo ERP auto scaling on AWS
Simple Odoo ERP auto scaling on AWSSimple Odoo ERP auto scaling on AWS
Simple Odoo ERP auto scaling on AWS
Julien Lecadou,MSc.
 
Introduction to Big Data
Introduction to Big DataIntroduction to Big Data
Introduction to Big Data
Haluan Irsad
 
Focus on Your Analysis, Not Your SQL Code
Focus on Your Analysis, Not Your SQL CodeFocus on Your Analysis, Not Your SQL Code
Focus on Your Analysis, Not Your SQL Code
DATAVERSITY
 
MI SELF , calendar
MI SELF , calendarMI SELF , calendar
MI SELF , calendar
Camilo Rodriguez MAcias
 
Presentacion de etica y deontologia wolfgang salazar
Presentacion de etica y deontologia wolfgang salazarPresentacion de etica y deontologia wolfgang salazar
Presentacion de etica y deontologia wolfgang salazar
89wolfgang
 
Presentación de las Ayudas 2017 de ADICOMT
Presentación de las Ayudas 2017 de ADICOMTPresentación de las Ayudas 2017 de ADICOMT
Presentación de las Ayudas 2017 de ADICOMT
Asociación para el Desarrollo de la Comarca Miajadas-Trujillo
 
Psicodrama
Psicodrama   Psicodrama
Mantenimiento de artefactos tecnológicos
Mantenimiento de artefactos tecnológicosMantenimiento de artefactos tecnológicos
Mantenimiento de artefactos tecnológicos
Samuel Antonio Calderon Palencia
 
Evaluation question #1
Evaluation question #1Evaluation question #1
Evaluation question #1
MediaGroupFour
 
Webinar: Fighting Fraud with Graph Databases
Webinar: Fighting Fraud with Graph DatabasesWebinar: Fighting Fraud with Graph Databases
Webinar: Fighting Fraud with Graph Databases
DataStax
 
Bioconversion of whey
Bioconversion of whey Bioconversion of whey
Bioconversion of whey
Nibedita Mahato
 
Why we love pgpool-II and why we hate it!
Why we love pgpool-II and why we hate it!Why we love pgpool-II and why we hate it!
Why we love pgpool-II and why we hate it!
PGConf APAC
 
Datary seminario de big data - 18.03.2017
Datary seminario de big data - 18.03.2017Datary seminario de big data - 18.03.2017
Datary seminario de big data - 18.03.2017
Daniel Jadraque de Soria
 
Handling XML and JSON in the Database
Handling XML and JSON in the DatabaseHandling XML and JSON in the Database
Handling XML and JSON in the Database
Mike Fowler
 
Migrating Rant & Rave to PostgreSQL
Migrating Rant & Rave to PostgreSQLMigrating Rant & Rave to PostgreSQL
Migrating Rant & Rave to PostgreSQL
Mike Fowler
 
Ceremonia Cívica Febrero 27 de 2017 . Proclamación del Plan de Ayutla.
Ceremonia Cívica Febrero 27  de 2017 .  Proclamación del Plan de Ayutla. Ceremonia Cívica Febrero 27  de 2017 .  Proclamación del Plan de Ayutla.
Ceremonia Cívica Febrero 27 de 2017 . Proclamación del Plan de Ayutla.
VJ Medina Ortiz
 
Fun Things to do with Logical Decoding
Fun Things to do with Logical DecodingFun Things to do with Logical Decoding
Fun Things to do with Logical Decoding
Mike Fowler
 

Viewers also liked (18)

Simple Odoo ERP auto scaling on AWS
Simple Odoo ERP auto scaling on AWSSimple Odoo ERP auto scaling on AWS
Simple Odoo ERP auto scaling on AWS
 
Introduction to Big Data
Introduction to Big DataIntroduction to Big Data
Introduction to Big Data
 
Focus on Your Analysis, Not Your SQL Code
Focus on Your Analysis, Not Your SQL CodeFocus on Your Analysis, Not Your SQL Code
Focus on Your Analysis, Not Your SQL Code
 
MI SELF , calendar
MI SELF , calendarMI SELF , calendar
MI SELF , calendar
 
Presentacion de etica y deontologia wolfgang salazar
Presentacion de etica y deontologia wolfgang salazarPresentacion de etica y deontologia wolfgang salazar
Presentacion de etica y deontologia wolfgang salazar
 
Presentación de las Ayudas 2017 de ADICOMT
Presentación de las Ayudas 2017 de ADICOMTPresentación de las Ayudas 2017 de ADICOMT
Presentación de las Ayudas 2017 de ADICOMT
 
Psicodrama
Psicodrama   Psicodrama
Psicodrama
 
Mantenimiento de artefactos tecnológicos
Mantenimiento de artefactos tecnológicosMantenimiento de artefactos tecnológicos
Mantenimiento de artefactos tecnológicos
 
Evaluation question #1
Evaluation question #1Evaluation question #1
Evaluation question #1
 
Webinar: Fighting Fraud with Graph Databases
Webinar: Fighting Fraud with Graph DatabasesWebinar: Fighting Fraud with Graph Databases
Webinar: Fighting Fraud with Graph Databases
 
Bioconversion of whey
Bioconversion of whey Bioconversion of whey
Bioconversion of whey
 
Why we love pgpool-II and why we hate it!
Why we love pgpool-II and why we hate it!Why we love pgpool-II and why we hate it!
Why we love pgpool-II and why we hate it!
 
Datary seminario de big data - 18.03.2017
Datary seminario de big data - 18.03.2017Datary seminario de big data - 18.03.2017
Datary seminario de big data - 18.03.2017
 
Handling XML and JSON in the Database
Handling XML and JSON in the DatabaseHandling XML and JSON in the Database
Handling XML and JSON in the Database
 
Migrating Rant & Rave to PostgreSQL
Migrating Rant & Rave to PostgreSQLMigrating Rant & Rave to PostgreSQL
Migrating Rant & Rave to PostgreSQL
 
JSON and XML
JSON and XMLJSON and XML
JSON and XML
 
Ceremonia Cívica Febrero 27 de 2017 . Proclamación del Plan de Ayutla.
Ceremonia Cívica Febrero 27  de 2017 .  Proclamación del Plan de Ayutla. Ceremonia Cívica Febrero 27  de 2017 .  Proclamación del Plan de Ayutla.
Ceremonia Cívica Febrero 27 de 2017 . Proclamación del Plan de Ayutla.
 
Fun Things to do with Logical Decoding
Fun Things to do with Logical DecodingFun Things to do with Logical Decoding
Fun Things to do with Logical Decoding
 

Similar to Disposable infrastructure

Adopting the Cloud
Adopting the CloudAdopting the Cloud
Adopting the Cloud
Tapio Rautonen
 
Best practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentationBest practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentation
esebeus
 
Solving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps styleSolving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps style
MayaData
 
OSDC 2018 | Migrating to the cloud by Devdas Bhagat
OSDC 2018 | Migrating to the cloud by Devdas BhagatOSDC 2018 | Migrating to the cloud by Devdas Bhagat
OSDC 2018 | Migrating to the cloud by Devdas Bhagat
NETWAYS
 
Microservices
MicroservicesMicroservices
Microservices
Abdelrahman Badreldeen
 
Taking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout SessionTaking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout Session
Splunk
 
Taking Splunk to the Next Level - Architecture
Taking Splunk to the Next Level - ArchitectureTaking Splunk to the Next Level - Architecture
Taking Splunk to the Next Level - Architecture
Splunk
 
Future of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackableFuture of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackable
Darren Shepherd
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
Decision Science Community
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.js
Brad Williams
 
Container Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris MeetupContainer Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris Meetup
MayaData Inc
 
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
Roberto Pérez Alcolea
 
Architecting systems for continuous delivery
Architecting systems for continuous deliveryArchitecting systems for continuous delivery
Architecting systems for continuous delivery
Marcel de Vries
 
Logical Architecture for Protection
Logical Architecture for ProtectionLogical Architecture for Protection
Logical Architecture for ProtectionSunita Shrivastava
 
HLayer / Cloud Native Best Practices
HLayer / Cloud Native Best PracticesHLayer / Cloud Native Best Practices
HLayer / Cloud Native Best Practices
Aymen EL Amri
 
CouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational ExcellenceCouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational ExcellenceLaine Campbell
 
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
DataCentred
 
Software Architecture for Cloud Infrastructure
Software Architecture for Cloud InfrastructureSoftware Architecture for Cloud Infrastructure
Software Architecture for Cloud Infrastructure
Tapio Rautonen
 
High Available Drupal
High Available DrupalHigh Available Drupal
High Available Drupal
Bram Vogelaar
 
Mtc learnings from isv & enterprise interaction
Mtc learnings from isv & enterprise  interactionMtc learnings from isv & enterprise  interaction
Mtc learnings from isv & enterprise interaction
Govind Kanshi
 

Similar to Disposable infrastructure (20)

Adopting the Cloud
Adopting the CloudAdopting the Cloud
Adopting the Cloud
 
Best practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentationBest practices for application migration to public clouds interop presentation
Best practices for application migration to public clouds interop presentation
 
Solving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps styleSolving k8s persistent workloads using k8s DevOps style
Solving k8s persistent workloads using k8s DevOps style
 
OSDC 2018 | Migrating to the cloud by Devdas Bhagat
OSDC 2018 | Migrating to the cloud by Devdas BhagatOSDC 2018 | Migrating to the cloud by Devdas Bhagat
OSDC 2018 | Migrating to the cloud by Devdas Bhagat
 
Microservices
MicroservicesMicroservices
Microservices
 
Taking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout SessionTaking Splunk to the Next Level - Architecture Breakout Session
Taking Splunk to the Next Level - Architecture Breakout Session
 
Taking Splunk to the Next Level - Architecture
Taking Splunk to the Next Level - ArchitectureTaking Splunk to the Next Level - Architecture
Taking Splunk to the Next Level - Architecture
 
Future of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackableFuture of Apache CloudStack: modular, distributed, and hackable
Future of Apache CloudStack: modular, distributed, and hackable
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.js
 
Container Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris MeetupContainer Attached Storage with OpenEBS - CNCF Paris Meetup
Container Attached Storage with OpenEBS - CNCF Paris Meetup
 
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
 
Architecting systems for continuous delivery
Architecting systems for continuous deliveryArchitecting systems for continuous delivery
Architecting systems for continuous delivery
 
Logical Architecture for Protection
Logical Architecture for ProtectionLogical Architecture for Protection
Logical Architecture for Protection
 
HLayer / Cloud Native Best Practices
HLayer / Cloud Native Best PracticesHLayer / Cloud Native Best Practices
HLayer / Cloud Native Best Practices
 
CouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational ExcellenceCouchConf SF 2012 Lightning Talk - Operational Excellence
CouchConf SF 2012 Lightning Talk - Operational Excellence
 
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
 
Software Architecture for Cloud Infrastructure
Software Architecture for Cloud InfrastructureSoftware Architecture for Cloud Infrastructure
Software Architecture for Cloud Infrastructure
 
High Available Drupal
High Available DrupalHigh Available Drupal
High Available Drupal
 
Mtc learnings from isv & enterprise interaction
Mtc learnings from isv & enterprise  interactionMtc learnings from isv & enterprise  interaction
Mtc learnings from isv & enterprise interaction
 

More from Mike Fowler

From Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of StreamsFrom Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of Streams
Mike Fowler
 
From Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of StreamsFrom Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of Streams
Mike Fowler
 
Getting Started with Machine Learning on AWS
Getting Started with Machine Learning on AWSGetting Started with Machine Learning on AWS
Getting Started with Machine Learning on AWS
Mike Fowler
 
Building with Firebase
Building with FirebaseBuilding with Firebase
Building with Firebase
Mike Fowler
 
Reducing Pager Fatigue Using a Serverless ML Bot
Reducing Pager Fatigue Using a Serverless ML BotReducing Pager Fatigue Using a Serverless ML Bot
Reducing Pager Fatigue Using a Serverless ML Bot
Mike Fowler
 
Getting started with Machine Learning
Getting started with Machine LearningGetting started with Machine Learning
Getting started with Machine Learning
Mike Fowler
 
Migrating with Debezium
Migrating with DebeziumMigrating with Debezium
Migrating with Debezium
Mike Fowler
 
Leveraging Automation for a Disposable Infrastructure
Leveraging Automation for a Disposable InfrastructureLeveraging Automation for a Disposable Infrastructure
Leveraging Automation for a Disposable Infrastructure
Mike Fowler
 
Migrating PostgreSQL to the Cloud
Migrating PostgreSQL to the CloudMigrating PostgreSQL to the Cloud
Migrating PostgreSQL to the Cloud
Mike Fowler
 
Shaping Clouds with Terraform
Shaping Clouds with TerraformShaping Clouds with Terraform
Shaping Clouds with Terraform
Mike Fowler
 
Elephants in the Cloud
Elephants in the CloudElephants in the Cloud
Elephants in the Cloud
Mike Fowler
 
Google Cloud & Your Data
Google Cloud & Your DataGoogle Cloud & Your Data
Google Cloud & Your Data
Mike Fowler
 
Hosted PostgreSQL
Hosted PostgreSQLHosted PostgreSQL
Hosted PostgreSQL
Mike Fowler
 

More from Mike Fowler (13)

From Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of StreamsFrom Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of Streams
 
From Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of StreamsFrom Warehouses to Lakes: The Value of Streams
From Warehouses to Lakes: The Value of Streams
 
Getting Started with Machine Learning on AWS
Getting Started with Machine Learning on AWSGetting Started with Machine Learning on AWS
Getting Started with Machine Learning on AWS
 
Building with Firebase
Building with FirebaseBuilding with Firebase
Building with Firebase
 
Reducing Pager Fatigue Using a Serverless ML Bot
Reducing Pager Fatigue Using a Serverless ML BotReducing Pager Fatigue Using a Serverless ML Bot
Reducing Pager Fatigue Using a Serverless ML Bot
 
Getting started with Machine Learning
Getting started with Machine LearningGetting started with Machine Learning
Getting started with Machine Learning
 
Migrating with Debezium
Migrating with DebeziumMigrating with Debezium
Migrating with Debezium
 
Leveraging Automation for a Disposable Infrastructure
Leveraging Automation for a Disposable InfrastructureLeveraging Automation for a Disposable Infrastructure
Leveraging Automation for a Disposable Infrastructure
 
Migrating PostgreSQL to the Cloud
Migrating PostgreSQL to the CloudMigrating PostgreSQL to the Cloud
Migrating PostgreSQL to the Cloud
 
Shaping Clouds with Terraform
Shaping Clouds with TerraformShaping Clouds with Terraform
Shaping Clouds with Terraform
 
Elephants in the Cloud
Elephants in the CloudElephants in the Cloud
Elephants in the Cloud
 
Google Cloud & Your Data
Google Cloud & Your DataGoogle Cloud & Your Data
Google Cloud & Your Data
 
Hosted PostgreSQL
Hosted PostgreSQLHosted PostgreSQL
Hosted PostgreSQL
 

Recently uploaded

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 

Recently uploaded (20)

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 

Disposable infrastructure

  • 1. Mike Fowler (mike@bashton.com) FLOSS UK Spring 2017 The Disposable Infrastructure
  • 2. ● Currently a Senior Site Reliability Engineer for Claranet|Bashton ● Background in Software Engineering, Systems Engineering & System Administration ● Contributed to several open source projects (YAWL, PostgreSQL & Terraform) ● Been using Linux & Open Source software since 1999 About Me
  • 3. ● Typical cloud migration strategies ● The drawbacks of typical cloud migration strategies ● The five theses of a disposable infrastructure ● How we build a disposable infrastructure Overview
  • 4. ● Duplicate existing estate in the cloud ● Use cloud as spare/batch capacity ● Brave New World – Greenfield development – “Version 2.0” Approaching Cloud Migration
  • 5. ● Direct mapping of existing infrastructure to the cloud – Load balancers become Elastic Load Balancers – SANs become Buckets or Elastic File Systems ● Minimal operational change required – Everything is the same just in a new location ● Perceived as a “quick win” to cloud adoption – Little AWS/GCP/Azure specific knowledge required The Appeal of a Lift & Shift
  • 6. ● No “legacy” baggage ● Free reign for experimentation ● Perceived as a “low risk” path to cloud adoption – If it doesn’t work, switch it off – “No risk” to existing production environment The Appeal of a Brave New World
  • 7. ● Are we just building a traditional but virtual data centre? – Lift & Shift is operationally the same – Brave New World isn’t part of the Real World ● How are we leveraging the power of a dynamic infrastructure? – Our infrastructure is scalable, but is the application? ● Are we using IAAS where we could be using PAAS? – e.g. Running a message broker instead of SQS Are we really “doing cloud”?
  • 8. ● We’re changing only where our hardware is – Instance size based on current hardware size – No change to deployment process ● Under utilisation of resource – Still paying for excess capacity ● Stunted scalability – We can throw more virtual hardware at it – Add additional node behind load balancers The Penalty of a Lift & Shift
  • 9. ● Organisationally isolated – Limited impact to existing practices – Leads to a “Us vs. Them” mentality ● Focus is usually on application functionality with infrastructure seen as a necessity ● Project has a high risk of failure – Care free scoping leads to an unfocused project – Significant time can be lost to integrating with the old world The Penalty of a Brave New World
  • 10. ● Conway’s Law: “Organisations which design systems … are constrained to produce designs which are copies of the communication structures of these organisations” ● Kief Morris: “In many cases, applying existing patterns will, at best, miss out on opportunities to leverage newer technology to simplify and improve the architecture. At worst, replicating existing patterns with the newer platforms will involve adding even more complexity.” ● Fred Brooks: “A scaling-up of a software entity is not merely a repetition of the same elements in larger size; it is necessarily an increase in the number of different elements. In most cases, the elements interact with each other in some nonlinear fashion, and the complexity of the whole increases much more than linearly.” Breaking the Mould
  • 11. 1) The attitude you have to your environment will determine the limits of your scalability 2) Continuous integration (CI) and delivery (CD) is a must 3) Your applications need to be (re)built to fit a dynamic infrastructure 4) Dynamic infrastructure must be treated as a first class citizen in any cloud project 5) Planning to fail will lead to success The Five Theses
  • 12. ● The more you care about individual things the more they will hold your attention ● In a truly scalable environment you should only care about the combination of many individual things Attitude Thesis 1 The attitude you have to your environment will determine the limits of your scalability
  • 13. ● You treat your servers like pets – You give them names (igloo, husky, snowshoe) – You give them homes (racks on site or co-located) – If they fail, you do everything you can to save them ● Every server is an investment – Often the best hardware that can be afforded – Amortised over years – Excess capacity to allow for growth ● Provisioning new servers takes weeks Attitude: Living in the Iron Age
  • 14. ● You treat your servers like cattle – They have identifiers – You care only where they are geographically – If they fail, you put them down and get a new one ● Your architecture is your investment – Configuration is chosen for your current load – Pay for what you use – Capacity can be added when required ● Provisioning new servers takes seconds Attitude: Living in the Cloud Age
  • 15. ● Are we simply herding our pets? – In a Lift & Shift this is almost certainly so – Scaling groups is a start but it is not the end ● How are we managing our virtual servers? – Complex cloud-init scripts? – Traditional configuration management? Attitude: Is Pets v Cattle enough?
  • 16. ● Everything is a package and can be discarded ● You treat your servers like single use products – They’re pre-packaged for a particular purpose – You still care only where they are geographically – If they fail, you toss it away and grab another ● You automate everything – Servers should be immutable – Never make a manual change Attitude: The Disposable Infrastructure
  • 17. ● Repeatability brings reliability and predictability ● Defining a build pipeline: – Ensures the same process is followed for every change – Provides an audit trail for every change – Gives visibility of your value stream Be Continuous Thesis 2 Continuous integration (CI) and delivery (CD) is a must
  • 18. ● Your developers probably already practice CI – It is the standard for code development – The output of CI can be the start of CD ● Continuous delivery doesn’t have to mean continuous deployment – Build pipelines can have approval stages – Every change should be deployable Be Continuous
  • 19. ● Many applications expect a static infrastructure – Hard-coded assumptions that an IP address won’t change once an application is started ● Many applications are cluster unaware – Sticky sessions on load balancers can help – Some protocols don’t load balance well Reactoring to the Cloud Thesis 3 Your applications need to be (re)built to fit a dynamic infrastructure
  • 20. ● Refactor to contemporary architectural approaches – Service Oriented Architectures & Microservices – Transition from stateful services to stateless ● Package everything using distribution packagers – The output of your build pipeline is a RPM/DEB – Your $CM_TOOL already supports this ● Chose a deployment strategy – Machine images vs. containers Reactoring to the Cloud
  • 21. ● Fear not vendor lock in, savings are to be reaped leveraging commodity services – Use SQS instead of automating the installation and configuration of a message broker and accepting the operational burden of maintaining it – Careful abstraction of the API will allow porting to a different platform if absolutely necessary Reactoring to the Cloud
  • 22. ● Design the infrastructure in parallel to the cloud aware application changes ● Mandate every instance is part of a scaling group to enforce cluster awareness ● Use the same principles for infrastructure development as you use for applications Infrastructure is Code Thesis 4 Dynamic infrastructure must be treated as a first class citizen in any cloud project
  • 23. ● Script/encode everything unless there is no API/tooling support ● Deploy the same infrastructure in development, test and production environments – Sizing can be parameterised ● Your deployment pipeline becomes the assembly of application packages and infrastructure configuration ● High cohesion and loose coupling applies to infrastructure as much as it does to applications Infrastructure is Code
  • 24. ● If it can go wrong, it will go wrong so think in terms of when and not if ● Treating our infrastructure and its hosted applications as disposable in conjunction with CD eliminates a number of failure scenarios Planning to fail Thesis 5 Planning to fail will lead to success
  • 25. ● Regularly test your disposability – Terminate instances at random to ensure resiliency – Block all network access to an instance – Chaos Monkey & the Simian Army – Trigger failovers for less disposable services ● Constantly churning disposable instances helps prevent configuration drift of immutable servers Planning to fail
  • 26. ● Availability and durability cost – Favour numerous small instances over a handful of large instances ● Identify points of failure and assess: – How often will this failure occur? – How do I mitigate this failure? – How do I test this failure to ensure mitigation? – Is the cost of mitigation worth the customer impact during failure? Planning to fail
  • 27. ● Be honest in assessing the worth of your business – Do you really need to double your costs to run in multiple regions? – Trello, Slack & many other high profile companies – including Amazon - were affected by the S3 outage Planning to fail
  • 28. ● Data is not disposable and is probably more important than your availability ● Ship log files to CloudWatch or Stackdriver ● Make back-ups and regularly test they restore – Gitlab had 5 separate backup processes, they all failed – Consider storing backups in both S3 & Google – Store backups in multiple regions Data is not Disposable
  • 29. ● If you must use persistent disks: – Use multiple disks and use RAID-1 – Snapshot the disks regularly ● Test the durability of your data – User error is your biggest risk ● “I forgot the WHERE clause” ● “I thought I was in the test environment” – Regularly exercise data loss & recovery scenarios in development and test environments Data is not Disposable
  • 30. ● We will have two identical CI pipelines for the applications, the output of each being AMI images ● A separate CD pipeline executes infrastructure code and rolls out the new AMIs ● Goal is to promote infrastructure and AMIs between environments Under Construction Let us assume we have a front end web application which places orders in a queue for subsequent asynchronous fulfilment by a separate application backed by a database. We’ve already refactored our applications for the cloud.
  • 31. ● Source our code from a repo, build and test ● Package our application as a DEB or RPM ● Place our artifact into a S3 repository ● Run Packer to generate a new AMI Application Pipeline
  • 32. ● https://packer.io ● Can create many different machine images ● Consider creating a base image to control OS updates ● Use normal configuration management tools – Support for Ansible, Chef & Puppet – Can just write shell script if you must ● Use placeholders for configuration to be filled by launch scripts Packer
  • 33. ● Triggered by new AMIs or Terraform code changes ● Apply Terraform to update the infrastructure ● Run integration tests to verify application build ● Wait for approval before promotion to next environment Infrastructure Pipeline
  • 34. ● https://terraform.io ● Declarative language for the construction of infrastructure ● Supports all major vendors ● State can be stored in buckets to facilitate sharing ● Separate out infrastructure layers – Minimises blast radius of changes – Keep persistent apart from disposable Terraform
  • 35. ● Any instance can be terminated ● Resilient to zone failure ● Cross-region read replica allows DR for region failure – Just need to run Terraform to add the instances when required and update Route 53 Deployed Infrastructure
  • 36. ● Have attitude ● Be continuous ● Refactor to the Cloud ● Infrastructure is code ● Plan to fail ● Data is King Summary