Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

404 views

Published on

DevOps Days Amsterdam 2015
Ignite Talk

  • Be the first to comment

  • Be the first to like this

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

  1. 1. 1 Develop Operation, Operate Development: A journey towards delivery at large scale Behrooz Nobakht @behruz Pavel Bushmelev
  2. 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
  3. 3. 3 Service Deployment Environment Query API Data API Business Configuratio n API PIM Analytics CRM
  4. 4. 4 When it started Chef 2005 Puppet 2008 Fredhopper Managed Services 2009 OpsWorks 2013
  5. 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. 6 How to operate massive deployments with JVM? Magnitude of Scale
  7. 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. 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. 9 “Server” abstraction is too low-level for our development and operation
  10. 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. 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. 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. 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. 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. 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. 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. 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. 18. 18 Development Operations Modularization via Self-Contained Services Service Cluster Management Infrastructure Abstraction Uniform Deployment Horizontal Scalability Decentralized Governance Infrastructure Automation Unified Operations
  19. 19. 19 Operating ≅ 2000 AWS servers with an awesome small DevOps team
  20. 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.

×