SlideShare a Scribd company logo
1 of 20
Download to read offline
1
Develop Operation, Operate Development:
A journey towards delivery at large scale
Behrooz Nobakht
@behruz
Pavel Bushmelev
✓ fun, simple, effective
✓ what a shopper experiences until
the order is delivered
✓ comprehend in context the
shopper’s intentions – implicit
and explicit
✓ personal without ever crossing
into the individual
Online Shopping
3
Service
Deployment
Environment
Query
API
Data
API
Business
Configuratio
n API
PIM
Analytics
CRM
4
When it started
Chef
2005
Puppet
2008
Fredhopper
Managed
Services
2009
OpsWorks
2013
5
App
How we have evolved
App App Scripts
Deploy
HTTP
API
On-Premise
Deployment
AppApp Scripts
Deploy
HTTP
API
Managed
Service
Deployment
6
How to operate massive deployments with JVM?
Magnitude of Scale
7
What is a server?
Development
● Um, huh?!
● … pause …
● We deliver to Ops.
● They deploy!
Operations
● What version to install
● What process to start
● Which data to use
● How to access logs
● How to monitor
● How to sync load
balancers
8
What is a server?
Development
● Um, huh?!
● … pause …
● We deliver to Ops.
● They deploy!
Operations
● What version to install
● What process to start
● Which data to use
● How to access logs
● How to monitor
● How to sync load
balancers
9
“Server” abstraction
is too low-level for our
development and operation
10
Server as a Service
A server as an HTTP API
1. /install
2. /data
3. /process
4. /logs
5. /monitor
6. /resources
11
Server as a Service
A server as an HTTP API
1. /install
2. /data
3. /process
4. /logs
5. /monitor
6. /resources
12
JVM Management with JVM
Service Provider Interfaces (SPI)
● A factory for an installation
● A factory for an running application
instance
● A factory for processes of an instance
● Generic RESTful operations
● Generic and standard endpoints: logs,
monitors, resources
App
java.lang.ProcessSPI
Implementations
http://IP:14777/
13
JVM Management with JVM
Service Provider Interfaces (SPI)
● A factory for an installation
● A factory for an running application
instance
● A factory for processes of an instance
● Generic RESTful operations
● Generic and standard endpoints: logs,
monitors, resources
App
java.lang.ProcessSPI
Implementations
http://IP:14777/
14
Deployment is a development responsibility
Development
● Does it have //:14777/?
● SPI implemented?
● Tested and Integrated?
● Locally Deployable?
● Deliver to Ops.
● They Deploy!
Operations
● What version to install
● What process to start
● Which data to use
● How to access logs
● How to monitor
● How to sync load
balancers
Does it really matter now what’s beneath //:14777/ ?!
15
Deployment is a development responsibility
Development
● Does it have //:14777/?
● SPI implemented?
● Tested and Integrated?
● Locally Deployable?
● Deliver to Ops.
● They Deploy!
Operations
● What version to install
● What process to start
● Which data to use
● How to access logs
● How to monitor
● How to sync load
balancers
Does it really matter now what’s beneath //:14777/ ?!
16
● Infrastructure provides servers
● Every server boots with one //:14777/
● Auto-register server with Controller
● Controller synchronizes servers with
load balancers
● Controller manages the state of
servers
● Controller automates workflows
Load Balancer
Monitoring
Infrastructure
Controller
17
● Orchestration becomes automatic
● Relieve from small operation details
● Focus on a higher-level
○ Automation Process
○ Disaster Recovery
○ Failure Mitigation
○ Monitoring
○ Horizontal Scaling
Load Balancer
Monitoring
Infrastructure
Controller
18
Development Operations
Modularization
via
Self-Contained
Services
Service
Cluster
Management
Infrastructure
Abstraction
Uniform
Deployment
Horizontal
Scalability
Decentralized
Governance
Infrastructure
Automation
Unified
Operations
19
Operating
≅ 2000 AWS servers
with an
awesome small
DevOps team
Copyright © 2008-2015 SDL plc. All rights reserved. All company names, brand names, trademarks,
service marks, images and logos are the property of their respective owners.
This presentation and its content are SDL confidential unless otherwise specified, and may not be
copied, used or distributed except as authorised by SDL.

More Related Content

What's hot

Production Ready WordPress #WPLDN
Production Ready WordPress #WPLDNProduction Ready WordPress #WPLDN
Production Ready WordPress #WPLDNEdmund Turbin
 
An almost complete continuous delivery pipeline including configuration manag...
An almost complete continuous delivery pipeline including configuration manag...An almost complete continuous delivery pipeline including configuration manag...
An almost complete continuous delivery pipeline including configuration manag...ulfmansson
 
Production ready word press
Production ready word pressProduction ready word press
Production ready word pressEdmund Turbin
 
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014Matthew Cobby
 
Continuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployContinuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployPeter Gfader
 
Tfs 2015 Upgrade Tips and Tricks
Tfs 2015 Upgrade Tips and TricksTfs 2015 Upgrade Tips and Tricks
Tfs 2015 Upgrade Tips and TricksInCycleSoftware
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integrationrouanw
 
Optimizing deployment & dev ops with tfs 2013
Optimizing deployment & dev ops with tfs 2013Optimizing deployment & dev ops with tfs 2013
Optimizing deployment & dev ops with tfs 2013Kobi Moraz
 
Continuous Integration and Continuous Deployment in Enterprise scenario
Continuous Integration and Continuous Deployment in Enterprise scenarioContinuous Integration and Continuous Deployment in Enterprise scenario
Continuous Integration and Continuous Deployment in Enterprise scenarioDavide Benvegnù
 
DevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own AdventureDevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own AdventureFabian Iannarella
 
Production Ready WordPress - WC Utrecht 2017
Production Ready WordPress  - WC Utrecht 2017Production Ready WordPress  - WC Utrecht 2017
Production Ready WordPress - WC Utrecht 2017Edmund Turbin
 
Continuous Delivery With Team Foundation Server
Continuous Delivery With Team Foundation ServerContinuous Delivery With Team Foundation Server
Continuous Delivery With Team Foundation ServerDaniel Ştefănescu
 
Simple ci cd with strider cd
Simple ci cd with strider cdSimple ci cd with strider cd
Simple ci cd with strider cdAmandeep Singh
 
Deploy applications with TFS Build
Deploy applications with TFS BuildDeploy applications with TFS Build
Deploy applications with TFS BuildGian Maria Ricci
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowPuppet
 
Deployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA SolutionsDeployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA SolutionsNic Swart
 
Git Branching for Agile Teams
Git Branching for Agile Teams Git Branching for Agile Teams
Git Branching for Agile Teams Atlassian
 
Ice breaker with dev ops
Ice breaker with dev opsIce breaker with dev ops
Ice breaker with dev opsMukta Aphale
 
Safe deployments with Blue-Green and Spinnaker
Safe deployments with Blue-Green and SpinnakerSafe deployments with Blue-Green and Spinnaker
Safe deployments with Blue-Green and SpinnakerMihnea Dobrescu-Balaur
 

What's hot (20)

Production Ready WordPress #WPLDN
Production Ready WordPress #WPLDNProduction Ready WordPress #WPLDN
Production Ready WordPress #WPLDN
 
An almost complete continuous delivery pipeline including configuration manag...
An almost complete continuous delivery pipeline including configuration manag...An almost complete continuous delivery pipeline including configuration manag...
An almost complete continuous delivery pipeline including configuration manag...
 
Production ready word press
Production ready word pressProduction ready word press
Production ready word press
 
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014
Practical Continuous Deployment - Atlassian - London AUG 18 Feb 2014
 
Continuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeployContinuous Delivery with TFS msbuild msdeploy
Continuous Delivery with TFS msbuild msdeploy
 
Tfs 2015 Upgrade Tips and Tricks
Tfs 2015 Upgrade Tips and TricksTfs 2015 Upgrade Tips and Tricks
Tfs 2015 Upgrade Tips and Tricks
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Optimizing deployment & dev ops with tfs 2013
Optimizing deployment & dev ops with tfs 2013Optimizing deployment & dev ops with tfs 2013
Optimizing deployment & dev ops with tfs 2013
 
Continuous Integration and Continuous Deployment in Enterprise scenario
Continuous Integration and Continuous Deployment in Enterprise scenarioContinuous Integration and Continuous Deployment in Enterprise scenario
Continuous Integration and Continuous Deployment in Enterprise scenario
 
DevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own AdventureDevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own Adventure
 
Production Ready WordPress - WC Utrecht 2017
Production Ready WordPress  - WC Utrecht 2017Production Ready WordPress  - WC Utrecht 2017
Production Ready WordPress - WC Utrecht 2017
 
Continuous Delivery With Team Foundation Server
Continuous Delivery With Team Foundation ServerContinuous Delivery With Team Foundation Server
Continuous Delivery With Team Foundation Server
 
Simple ci cd with strider cd
Simple ci cd with strider cdSimple ci cd with strider cd
Simple ci cd with strider cd
 
Deploy applications with TFS Build
Deploy applications with TFS BuildDeploy applications with TFS Build
Deploy applications with TFS Build
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNow
 
Deployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA SolutionsDeployment of DevOps Environment with CA Solutions
Deployment of DevOps Environment with CA Solutions
 
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
EVOLVE'16 | Keynote | Cat Reusswig | Taking Your AEM Implementation to The RO...
 
Git Branching for Agile Teams
Git Branching for Agile Teams Git Branching for Agile Teams
Git Branching for Agile Teams
 
Ice breaker with dev ops
Ice breaker with dev opsIce breaker with dev ops
Ice breaker with dev ops
 
Safe deployments with Blue-Green and Spinnaker
Safe deployments with Blue-Green and SpinnakerSafe deployments with Blue-Green and Spinnaker
Safe deployments with Blue-Green and Spinnaker
 

Viewers also liked

Presentazione genova digitale
Presentazione genova digitalePresentazione genova digitale
Presentazione genova digitaleEnrico Alletto
 
Top 8 oral surgery assistant resume samples
Top 8 oral surgery assistant resume samplesTop 8 oral surgery assistant resume samples
Top 8 oral surgery assistant resume samplesleviedwards17
 
Fight Club - Genre and Character List
Fight Club - Genre and Character List Fight Club - Genre and Character List
Fight Club - Genre and Character List hannifrieda
 
Arun K_Testing_Updated
Arun K_Testing_UpdatedArun K_Testing_Updated
Arun K_Testing_UpdatedArun Kamatchi
 
Portfolio Laura de Veer
Portfolio Laura de VeerPortfolio Laura de Veer
Portfolio Laura de VeerLaura de Veer
 
Android night english
Android night englishAndroid night english
Android night english尚希 宮地
 
The near future of social interaction
The near future of social interactionThe near future of social interaction
The near future of social interactionIrina Khabibulina
 
Top 8 replenishment assistant resume samples
Top 8 replenishment assistant resume samplesTop 8 replenishment assistant resume samples
Top 8 replenishment assistant resume samplesleviedwards17
 
Top 8 fashion design assistant resume samples
Top 8 fashion design assistant resume samplesTop 8 fashion design assistant resume samples
Top 8 fashion design assistant resume samplesleviedwards17
 
Top 8 child development assistant resume samples
Top 8 child development assistant resume samplesTop 8 child development assistant resume samples
Top 8 child development assistant resume samplesleviedwards17
 
111Paravara talent world Pvt.Ltd. - Copy
111Paravara talent world Pvt.Ltd. - Copy111Paravara talent world Pvt.Ltd. - Copy
111Paravara talent world Pvt.Ltd. - CopyRajshree Srivastava
 
Top 8 sales & marketing assistant resume samples
Top 8 sales & marketing assistant resume samplesTop 8 sales & marketing assistant resume samples
Top 8 sales & marketing assistant resume samplesleviedwards17
 
Get started with dropbox
Get started with dropboxGet started with dropbox
Get started with dropbox09061496347
 
Top 8 managers assistant resume samples
Top 8 managers assistant resume samplesTop 8 managers assistant resume samples
Top 8 managers assistant resume samplesleviedwards17
 

Viewers also liked (20)

HTTP/2 in Examples
HTTP/2 in ExamplesHTTP/2 in Examples
HTTP/2 in Examples
 
Presentazione genova digitale
Presentazione genova digitalePresentazione genova digitale
Presentazione genova digitale
 
Top 8 oral surgery assistant resume samples
Top 8 oral surgery assistant resume samplesTop 8 oral surgery assistant resume samples
Top 8 oral surgery assistant resume samples
 
Filosofis Angka Nol
Filosofis Angka NolFilosofis Angka Nol
Filosofis Angka Nol
 
Fight Club - Genre and Character List
Fight Club - Genre and Character List Fight Club - Genre and Character List
Fight Club - Genre and Character List
 
Arun K_Testing_Updated
Arun K_Testing_UpdatedArun K_Testing_Updated
Arun K_Testing_Updated
 
JS patterns
JS patternsJS patterns
JS patterns
 
Portfolio Laura de Veer
Portfolio Laura de VeerPortfolio Laura de Veer
Portfolio Laura de Veer
 
Android night english
Android night englishAndroid night english
Android night english
 
EX Certificate
EX CertificateEX Certificate
EX Certificate
 
The near future of social interaction
The near future of social interactionThe near future of social interaction
The near future of social interaction
 
Top 8 replenishment assistant resume samples
Top 8 replenishment assistant resume samplesTop 8 replenishment assistant resume samples
Top 8 replenishment assistant resume samples
 
7 (1)
7 (1)7 (1)
7 (1)
 
Fight Club
Fight ClubFight Club
Fight Club
 
Top 8 fashion design assistant resume samples
Top 8 fashion design assistant resume samplesTop 8 fashion design assistant resume samples
Top 8 fashion design assistant resume samples
 
Top 8 child development assistant resume samples
Top 8 child development assistant resume samplesTop 8 child development assistant resume samples
Top 8 child development assistant resume samples
 
111Paravara talent world Pvt.Ltd. - Copy
111Paravara talent world Pvt.Ltd. - Copy111Paravara talent world Pvt.Ltd. - Copy
111Paravara talent world Pvt.Ltd. - Copy
 
Top 8 sales & marketing assistant resume samples
Top 8 sales & marketing assistant resume samplesTop 8 sales & marketing assistant resume samples
Top 8 sales & marketing assistant resume samples
 
Get started with dropbox
Get started with dropboxGet started with dropbox
Get started with dropbox
 
Top 8 managers assistant resume samples
Top 8 managers assistant resume samplesTop 8 managers assistant resume samples
Top 8 managers assistant resume samples
 

Similar to Develop Operation, Operate Development: A journey towards service delivery at scale

DevOps for SAP CPI presentation
DevOps for SAP CPI presentationDevOps for SAP CPI presentation
DevOps for SAP CPI presentationDaniel Graversen
 
Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Clever Moe
 
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test AutomationSTARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test AutomationClever Moe
 
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDMulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDGonzalo Marcos Ansoain
 
Taking AppSec to 11 - BSides Austin 2016
Taking AppSec to 11 - BSides Austin 2016Taking AppSec to 11 - BSides Austin 2016
Taking AppSec to 11 - BSides Austin 2016Matt Tesauro
 
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things BetterTaking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things BetterMatt Tesauro
 
Use Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test AutomationUse Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test AutomationClever Moe
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliverySwapnil Jain
 
JUST EAT: Embracing DevOps
JUST EAT: Embracing DevOpsJUST EAT: Embracing DevOps
JUST EAT: Embracing DevOpsPeter Mounce
 
OpenControl Overview - Joshua McKenty
OpenControl Overview - Joshua McKentyOpenControl Overview - Joshua McKenty
OpenControl Overview - Joshua McKentyJulie Coonce
 
SAPUI5/OpenUI5 - Continuous Integration
SAPUI5/OpenUI5 - Continuous IntegrationSAPUI5/OpenUI5 - Continuous Integration
SAPUI5/OpenUI5 - Continuous IntegrationPeter Muessig
 
Implementation Assistance
Implementation AssistanceImplementation Assistance
Implementation AssistanceOdoo
 
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...cornelia davis
 
DevOps Roadmap.pptx
DevOps Roadmap.pptxDevOps Roadmap.pptx
DevOps Roadmap.pptxHARSH MANVAR
 
IFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated TestingIFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated TestingDaniel Graversen
 
Lighning Talk: PHP build process
Lighning Talk: PHP build processLighning Talk: PHP build process
Lighning Talk: PHP build processBryan Agee
 
Transforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery PipelineTransforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery PipelineDwi Sasongko Supriyadi
 

Similar to Develop Operation, Operate Development: A journey towards service delivery at scale (20)

DevOps for SAP CPI presentation
DevOps for SAP CPI presentationDevOps for SAP CPI presentation
DevOps for SAP CPI presentation
 
Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014
 
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test AutomationSTARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
STARWest: Use Jenkins For Continuous 
Load Testing And Mobile Test Automation
 
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CDMulesoft Meetup Milano #9 - Batch Processing and CI/CD
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
 
Taking AppSec to 11 - BSides Austin 2016
Taking AppSec to 11 - BSides Austin 2016Taking AppSec to 11 - BSides Austin 2016
Taking AppSec to 11 - BSides Austin 2016
 
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things BetterTaking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
Taking AppSec to 11: AppSec Pipeline, DevOps and Making Things Better
 
Use Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test AutomationUse Jenkins For Continuous Load Testing And Mobile Test Automation
Use Jenkins For Continuous Load Testing And Mobile Test Automation
 
Room 2 - 7 - Lã Mạnh Hà - Agile + DevOps = A great combination
Room 2 - 7 - Lã Mạnh Hà - Agile + DevOps = A great combinationRoom 2 - 7 - Lã Mạnh Hà - Agile + DevOps = A great combination
Room 2 - 7 - Lã Mạnh Hà - Agile + DevOps = A great combination
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous Delivery
 
JUST EAT: Embracing DevOps
JUST EAT: Embracing DevOpsJUST EAT: Embracing DevOps
JUST EAT: Embracing DevOps
 
Compliance as Code
Compliance as CodeCompliance as Code
Compliance as Code
 
OpenControl Overview - Joshua McKenty
OpenControl Overview - Joshua McKentyOpenControl Overview - Joshua McKenty
OpenControl Overview - Joshua McKenty
 
SAPUI5/OpenUI5 - Continuous Integration
SAPUI5/OpenUI5 - Continuous IntegrationSAPUI5/OpenUI5 - Continuous Integration
SAPUI5/OpenUI5 - Continuous Integration
 
Implementation Assistance
Implementation AssistanceImplementation Assistance
Implementation Assistance
 
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
 
DevOps Roadmap.pptx
DevOps Roadmap.pptxDevOps Roadmap.pptx
DevOps Roadmap.pptx
 
IFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated TestingIFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated Testing
 
Dev ops
Dev opsDev ops
Dev ops
 
Lighning Talk: PHP build process
Lighning Talk: PHP build processLighning Talk: PHP build process
Lighning Talk: PHP build process
 
Transforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery PipelineTransforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery Pipeline
 

Develop Operation, Operate Development: A journey towards service delivery at scale

  • 1. 1 Develop Operation, Operate Development: A journey towards delivery at large scale Behrooz Nobakht @behruz Pavel Bushmelev
  • 2. ✓ fun, simple, effective ✓ what a shopper experiences until the order is delivered ✓ comprehend in context the shopper’s intentions – implicit and explicit ✓ personal without ever crossing into the individual Online Shopping
  • 5. 5 App How we have evolved App App Scripts Deploy HTTP API On-Premise Deployment AppApp Scripts Deploy HTTP API Managed Service Deployment
  • 6. 6 How to operate massive deployments with JVM? Magnitude of Scale
  • 7. 7 What is a server? Development ● Um, huh?! ● … pause … ● We deliver to Ops. ● They deploy! Operations ● What version to install ● What process to start ● Which data to use ● How to access logs ● How to monitor ● How to sync load balancers
  • 8. 8 What is a server? Development ● Um, huh?! ● … pause … ● We deliver to Ops. ● They deploy! Operations ● What version to install ● What process to start ● Which data to use ● How to access logs ● How to monitor ● How to sync load balancers
  • 9. 9 “Server” abstraction is too low-level for our development and operation
  • 10. 10 Server as a Service A server as an HTTP API 1. /install 2. /data 3. /process 4. /logs 5. /monitor 6. /resources
  • 11. 11 Server as a Service A server as an HTTP API 1. /install 2. /data 3. /process 4. /logs 5. /monitor 6. /resources
  • 12. 12 JVM Management with JVM Service Provider Interfaces (SPI) ● A factory for an installation ● A factory for an running application instance ● A factory for processes of an instance ● Generic RESTful operations ● Generic and standard endpoints: logs, monitors, resources App java.lang.ProcessSPI Implementations http://IP:14777/
  • 13. 13 JVM Management with JVM Service Provider Interfaces (SPI) ● A factory for an installation ● A factory for an running application instance ● A factory for processes of an instance ● Generic RESTful operations ● Generic and standard endpoints: logs, monitors, resources App java.lang.ProcessSPI Implementations http://IP:14777/
  • 14. 14 Deployment is a development responsibility Development ● Does it have //:14777/? ● SPI implemented? ● Tested and Integrated? ● Locally Deployable? ● Deliver to Ops. ● They Deploy! Operations ● What version to install ● What process to start ● Which data to use ● How to access logs ● How to monitor ● How to sync load balancers Does it really matter now what’s beneath //:14777/ ?!
  • 15. 15 Deployment is a development responsibility Development ● Does it have //:14777/? ● SPI implemented? ● Tested and Integrated? ● Locally Deployable? ● Deliver to Ops. ● They Deploy! Operations ● What version to install ● What process to start ● Which data to use ● How to access logs ● How to monitor ● How to sync load balancers Does it really matter now what’s beneath //:14777/ ?!
  • 16. 16 ● Infrastructure provides servers ● Every server boots with one //:14777/ ● Auto-register server with Controller ● Controller synchronizes servers with load balancers ● Controller manages the state of servers ● Controller automates workflows Load Balancer Monitoring Infrastructure Controller
  • 17. 17 ● Orchestration becomes automatic ● Relieve from small operation details ● Focus on a higher-level ○ Automation Process ○ Disaster Recovery ○ Failure Mitigation ○ Monitoring ○ Horizontal Scaling Load Balancer Monitoring Infrastructure Controller
  • 19. 19 Operating ≅ 2000 AWS servers with an awesome small DevOps team
  • 20. Copyright © 2008-2015 SDL plc. All rights reserved. All company names, brand names, trademarks, service marks, images and logos are the property of their respective owners. This presentation and its content are SDL confidential unless otherwise specified, and may not be copied, used or distributed except as authorised by SDL.