SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
OCD Deployment
Obsessive about successful
web-applications
With examples from
Robert Douglass
VP Customer Success, Platform.sh
October 5, 2016
A web application is:
Deployment means:
@local
@dev
@stage @prod
Deployment means:
@bob-local @feature1
@prod
@jim-local @theme
@sue-local @feature2
@stage
@auto-test
@uat
@sprint3
“How to migrate from test environment
to production environment?”
“Broken Image links after migrating a
site from Local Machine to Live Server”
“Home page missing theme and css
after migrating to a VPS host”
“Updating to PHP 5.4 breaks my site”
“Dealing with Solr indexes on
development and live environments”
“best practices to deal with Search on different
environments, dev, stage prod? i.e. - Not indexing /
corrupting live Solr indexes when testing on dev and
staging.”
Orchestrated
Consistent
Deterministic
“Planned to produce
a desired result”
Orchestrated
Orchestrated
• Resolve dependencies
• Build code
• Provision servers, storage, I/O
• Launch and configure services (eg MySQL)
• Manage data
Orchestrated
For HA Applications, you must provide and configure the following services:
• HA Proxy / Load balancing
• Nginx
• PHP-FPM
• MariaDB (PostgreSQL)
• Solr (ElasticSearch)
• Redis
Orchestrated
• Guarantee high availability for all services
• Guarantee disaster recovery for all services
• Guarantee change management for all services
• For every developer and tester, as well as
production.
Orchestrated
• Persistent storage:
• Unique needs for mount points, eg. applications
need public, private, and temporary directories
that the web server can write to
• Don't allow storage to be a single point of failure!
Are you using a high-availability, distributed file
system? (eg. GlusterFS, CEPH)
Orchestrated
Security Security Security!
• Read-only code deployments
• ACLS
• Physical and network access
• Change management (that guy you just fired)
• Patch levels and vulnerability reactivity: 

You actually have to read debian-security-
announce@lists.debian.org
Orchestrated
Orchestrated
Orchestrated
Modern Languages
Modern Services
Multiple Clouds
“acting or done in the same way
over time”
Consistent
Consistent
An OCD Deployment will guarantee that you always:
• Use the same tools to deploy, on every environment
• Know from deploying to (@local / @dev / @test /
@stage / @UAT ) that deploying to @production will
work.
• Consistent infrastructure, Actual data
Consistent
Know from one deployment that deployment to @prod
will work:
• Deployment to @local, @stage, @prod etc *all* use
the same tools.
• Weak link: @local
Consistent
Work on actual data
• 99% of the time, the data needs to come from @prod
• Data = SQL, uploaded files, Solr index, any other
permanent data store
• When does synchronisation become problematic? 10G?
100G? 1T?
• Sanitise sensitive data outside of @prod
Consistent
“for every event there exist
conditions that could cause no
other event”
Deterministic
Deterministic
The goal: 



For a given Git repository (hash), exactly the same
application code and infrastructure should be
deployed, every time it is pushed to any environment.
Deterministic
Code is assembled with build and make files using technologies like:
• Composer
• NPM
• PIP
• Ruby Gems
• Maven or Ant
Deterministic
Code-assets are generated
$ compass compile --production
Deterministic
Deterministic Infrastructure:
• Obvious: use the same services in the same
configuration on every environment you deploy to
(local, dev, staging, testing, UAT, production)
• Less obvious: changing the infrastructure needs to
be a repeatable, reversible action
Deterministic
Actual Data:
Data is easily partitioned and fragmented. Examples:
• Files that are in the DB but not on the filesystem.
• Documents not indexed into Solr
• Databases so large they take hours to import/export/
transfer over the wire
Deterministic
Actual Data:
An OCD Deployment is NOT:
• Mysql Dump / Mysql Import
• rsync for files
• Re-indexing Solr
Benefits of
You get deployment that is:
• Simple to execute
• Testable
• Repeatable
• Reversible
?
Can
eZ Platform be
https://github.com/platformsh/platformsh-example-ezplatform
LIVE DEMO!!!!
Orchestrated, Consistent, and Deterministic Deployment: What Does it Mean and How to Get There (presented by Robert Douglass, VP Customer Success, Platform.sh at eZ Conference 2016)

Contenu connexe

En vedette

En vedette (18)

Digital Adaptation (presented by Paul Boag, User Experience and Digital Trans...
Digital Adaptation (presented by Paul Boag, User Experience and Digital Trans...Digital Adaptation (presented by Paul Boag, User Experience and Digital Trans...
Digital Adaptation (presented by Paul Boag, User Experience and Digital Trans...
 
The Business Value of a PaaS (presented by Kieron Sambrook Smith, Chief Comme...
The Business Value of a PaaS (presented by Kieron Sambrook Smith, Chief Comme...The Business Value of a PaaS (presented by Kieron Sambrook Smith, Chief Comme...
The Business Value of a PaaS (presented by Kieron Sambrook Smith, Chief Comme...
 
Building an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stackBuilding an E-commerce website in MEAN stack
Building an E-commerce website in MEAN stack
 
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
Bargento 2014 : conférence Smile « ElasticSearch booste la recherche Magento »
 
Meet Magento 2015 Utrecht - ElasticSearch - Smile
Meet Magento 2015 Utrecht - ElasticSearch - SmileMeet Magento 2015 Utrecht - ElasticSearch - Smile
Meet Magento 2015 Utrecht - ElasticSearch - Smile
 
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?Webinar Smile : Comment industrialiser votre SI avec Ansible ?
Webinar Smile : Comment industrialiser votre SI avec Ansible ?
 
A high profile project with Symfony and API Platform: beIN SPORTS
A high profile project with Symfony and API Platform: beIN SPORTSA high profile project with Symfony and API Platform: beIN SPORTS
A high profile project with Symfony and API Platform: beIN SPORTS
 
Présentation sur l'accessibilité numérique / Evènement université de Lille 3
Présentation sur l'accessibilité numérique / Evènement université de Lille 3 Présentation sur l'accessibilité numérique / Evènement université de Lille 3
Présentation sur l'accessibilité numérique / Evènement université de Lille 3
 
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
Meetup ElasticSearch : « Booster votre Magento avec Elasticsearch »
 
Séminaire IoT EISTI du 14 avril 2016 avec Open Wide / Smile
Séminaire IoT EISTI du 14 avril 2016 avec Open Wide / SmileSéminaire IoT EISTI du 14 avril 2016 avec Open Wide / Smile
Séminaire IoT EISTI du 14 avril 2016 avec Open Wide / Smile
 
Unleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformUnleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ Platform
 
CMSday 2013 - Jahia xCM : Mise en œuvre chez Socomec
CMSday 2013 - Jahia xCM : Mise en œuvre chez SocomecCMSday 2013 - Jahia xCM : Mise en œuvre chez Socomec
CMSday 2013 - Jahia xCM : Mise en œuvre chez Socomec
 
CMSday 2103 - Ametys : Gestion fine des contenus dans un environnement multisite
CMSday 2103 - Ametys : Gestion fine des contenus dans un environnement multisiteCMSday 2103 - Ametys : Gestion fine des contenus dans un environnement multisite
CMSday 2103 - Ametys : Gestion fine des contenus dans un environnement multisite
 
Seminaire drupal8 Lille
Seminaire drupal8 LilleSeminaire drupal8 Lille
Seminaire drupal8 Lille
 
Comment une marque se développe par son approche user centric ? - Conference ...
Comment une marque se développe par son approche user centric ? - Conference ...Comment une marque se développe par son approche user centric ? - Conference ...
Comment une marque se développe par son approche user centric ? - Conference ...
 
Seminaire webfactory - 2015
Seminaire webfactory - 2015Seminaire webfactory - 2015
Seminaire webfactory - 2015
 
Seminaire Smile sur Drupal 8 - Juin 2015
Seminaire Smile sur Drupal 8 - Juin 2015Seminaire Smile sur Drupal 8 - Juin 2015
Seminaire Smile sur Drupal 8 - Juin 2015
 
Séminaire drupal8 Lyon
Séminaire drupal8 LyonSéminaire drupal8 Lyon
Séminaire drupal8 Lyon
 

Plus de eZ Systems

Plus de eZ Systems (20)

A unified platform to build Digital Experience from Content to Commerce to Pe...
A unified platform to build Digital Experience from Content to Commerce to Pe...A unified platform to build Digital Experience from Content to Commerce to Pe...
A unified platform to build Digital Experience from Content to Commerce to Pe...
 
"Reconociendo al cliente personalizando su experiencia" - Andorra Turisme - e...
"Reconociendo al cliente personalizando su experiencia" - Andorra Turisme - e..."Reconociendo al cliente personalizando su experiencia" - Andorra Turisme - e...
"Reconociendo al cliente personalizando su experiencia" - Andorra Turisme - e...
 
"How Crédit Agricole and IT-CE managed their digital transformation thanks to...
"How Crédit Agricole and IT-CE managed their digital transformation thanks to..."How Crédit Agricole and IT-CE managed their digital transformation thanks to...
"How Crédit Agricole and IT-CE managed their digital transformation thanks to...
 
The rise of Digital Experience Platforms
The rise of Digital Experience PlatformsThe rise of Digital Experience Platforms
The rise of Digital Experience Platforms
 
"How to deliver remarkable digital experiences to customers?"
"How to deliver remarkable digital experiences to customers?""How to deliver remarkable digital experiences to customers?"
"How to deliver remarkable digital experiences to customers?"
 
Keynote eZ Roadshow & Diginight 2019 - oslo
Keynote eZ Roadshow & Diginight 2019 - osloKeynote eZ Roadshow & Diginight 2019 - oslo
Keynote eZ Roadshow & Diginight 2019 - oslo
 
Symfony 4.0 + - Track Technique eZ Roadshow 2019 - PARIS
Symfony 4.0 + - Track Technique eZ Roadshow 2019 - PARISSymfony 4.0 + - Track Technique eZ Roadshow 2019 - PARIS
Symfony 4.0 + - Track Technique eZ Roadshow 2019 - PARIS
 
Brochure eZ Platform DXP
Brochure eZ Platform DXPBrochure eZ Platform DXP
Brochure eZ Platform DXP
 
[Webinar] Discover eZ platform v2.4
[Webinar]  Discover eZ platform v2.4[Webinar]  Discover eZ platform v2.4
[Webinar] Discover eZ platform v2.4
 
Community webinar discover e z platform v2.3 (9.10.2018)
Community webinar   discover e z platform v2.3 (9.10.2018)Community webinar   discover e z platform v2.3 (9.10.2018)
Community webinar discover e z platform v2.3 (9.10.2018)
 
Symfony Under the Hood
Symfony Under the HoodSymfony Under the Hood
Symfony Under the Hood
 
eZ in the Year Ahead
eZ in the Year AheadeZ in the Year Ahead
eZ in the Year Ahead
 
Personalization on eZ Platform v2
Personalization on eZ Platform v2Personalization on eZ Platform v2
Personalization on eZ Platform v2
 
Choose the eZ Universe for Your Web Galaxy
Choose the eZ Universe for Your Web GalaxyChoose the eZ Universe for Your Web Galaxy
Choose the eZ Universe for Your Web Galaxy
 
Using eZ Platform in an API Era
Using eZ Platform in an API EraUsing eZ Platform in an API Era
Using eZ Platform in an API Era
 
Extending eZ Platform v2 with Symfony and React
Extending eZ Platform v2 with Symfony and ReactExtending eZ Platform v2 with Symfony and React
Extending eZ Platform v2 with Symfony and React
 
A Roadmap to Becoming Your Customer’s Information Hub
A Roadmap to Becoming Your Customer’s Information HubA Roadmap to Becoming Your Customer’s Information Hub
A Roadmap to Becoming Your Customer’s Information Hub
 
eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...
eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...
eZ Platform Cloud and eZ Launchpad: Don’t Host, Don’t Deploy, Don’t Install—J...
 
GDPR in the Digital World
GDPR in the Digital WorldGDPR in the Digital World
GDPR in the Digital World
 
When content transforms your customer experience
When content transforms your customer experienceWhen content transforms your customer experience
When content transforms your customer experience
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Dernier (20)

Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

Orchestrated, Consistent, and Deterministic Deployment: What Does it Mean and How to Get There (presented by Robert Douglass, VP Customer Success, Platform.sh at eZ Conference 2016)