www.immobilienscout24.de Be Fast Or Stay Behind Building a Continuous Delivery Platform Schlomo Schapiro, Systems Architect & Open Source Evangelist Ingmar Krusch, Team Lead in Operations License: http://creativecommons.org/licenses/by-nc-nd/3.0/
www.ImmobilienScout24.de 2 billion PI per month 2 data center with ~800 VM ~30 crossfunctional IT teams total of ~500 employees 14 years in business part of Deutsche Telekom 2 Overview File Mgmt Systems Mgmt Lessons Learned
Close Collaboration Package Deployment 3 Overview File Mgmt Systems Mgmt Lessons Learned
The Big Picture – Continuous Delivery Platform Business Decision To go Live All Humans are on Build Scale Out the Same Side Config Data Centers Deploy Automation Test Systems- Management 4 Overview File Mgmt Systems Mgmt Lessons Learned
1st task: Reduce Systemic Complexity File Management Systems Management 5 Overview File Mgmt Systems Mgmt Lessons Learned
File Management with RPM & YUM 6 Overview File Mgmt Systems Mgmt Lessons Learned
File Management with RPM & YUM Libraries Applications Configuration Operating System 100 % 7 Overview File Mgmt Systems Mgmt Lessons Learned
File Management with RPM & YUM Configuration Build DEV YUM Repos Application QA Build PROD Infrastructure Build 8 Overview File Mgmt Systems Mgmt Lessons Learned
File Management with RPM & YUM Configuration Build DEV YUM Repos Application QA Build PROD Infrastructure Build Interface 9 Overview File Mgmt Systems Mgmt Lessons Learned
Configuration Build – Pre-built Config Content Configuration Build DEV YUM Repos Application QA Build PROD Infrastructure Build 10 Overview File Mgmt Systems Mgmt Lessons Learned
Configuration Build – Pre-built Config Content YUM SVN Repo commit build config file config RPM RPMs with static content 11 Overview File Mgmt Systems Mgmt Lessons Learned
Configuration Build – Pre-built Config Content YUM SVN Repo commit build config file config RPM RPMs Templating with Variables static Overlaying content 12 Overview File Mgmt Systems Mgmt Lessons Learned
Configuration Build – Pre-built Config Content YUM SVN Repo commit build config file config RPM RPMs Templating we use with Variables 1 RPM static Overlaying per host content 13 Overview File Mgmt Systems Mgmt Lessons Learned
Configuration Build – Pre-built Config Content YUM SVN Repo commit build config file config RPM RPMs Shared Templating we use with responsability Variables 1 RPM static Ops, Dev, QA ... Overlaying per host content 14 Overview File Mgmt Systems Mgmt Lessons Learned
Application Build – Continuous Release Delivery Configuration Build DEV YUM Repos Application QA Build PROD Infrastructure Build 15 Overview File Mgmt Systems Mgmt Lessons Learned
Application Build – Package Promotion Pipeline DEV Pre-PROD PROD YUM YUM YUM Repo Repo Repo Comitted Tested Released Repo Repo Repo 16 Overview File Mgmt Systems Mgmt Lessons Learned
Application Build – Package Promotion Pipeline Deploy Deploy Deploy & & & Test Test Test DEV Pre-PROD PROD CI YUM YUM YUM Auto- Repo Repo Repo promote Business decision release if to Go Live with tests OK tested versions Comitted Tested Released Repo Repo Repo 17 Overview File Mgmt Systems Mgmt Lessons Learned
Application Build – Site-wide Releases Configuration Build DEV YUM Repos Application QA Build PROD Infrastructure Build 18 Overview File Mgmt Systems Mgmt Lessons Learned
Application Build – Site-wide Releases mvn deploy NEXUS „released“ Repo POM Team City – CI NEXUS Server 19 Overview File Mgmt Systems Mgmt Lessons Learned
Application Build – Site-wide Releases yum upgrade mvn deploy YUM „released“ NEXUS Repo „released“ Repo NEXUS-YUM POM Plugin Team City – CI NEXUS Server 20 Overview File Mgmt Systems Mgmt Lessons Learned
File Management through many YUM repositories Configuration Build DEV YUM Repo YUM YUM YUM Repo Application Repo Repo QA Build PROD Infrastructure Build 21 Overview File Mgmt Systems Mgmt Lessons Learned
Systems Management with YADT YADT – an Augmented Deployment Tool 22 Overview File Mgmt Systems Mgmt Lessons Learned
YADT – Unified Dependency Tree Load Balancer HTTPD Tomcat Web Server App Server 23 Overview File Mgmt Systems Mgmt Lessons Learned
YADT – Unified Dependency Tree Load Balancer config HTTPD httpd web- app Tomcat tomcat Web Server App Server 24 Overview File Mgmt Systems Mgmt Lessons Learned
YADT – Large Scale System Management HTTPD config httpd web- Tomcat app tomcat Web Server config Java App app App Server 25 Overview File Mgmt Systems Mgmt Lessons Learned
YADT – Large Scale System Management LB: www.immobilienscout24.de HTTPD config HTTPD config httpd httpd web- web- Tomcat app Tomcat app tomcat tomcat Web Server Web Server config config Java App Java App app app App Server App Server 26 Overview File Mgmt Systems Mgmt Lessons Learned
YADT – Large Scale System Management 1st chunk LB: www.immobilienscout24.de HTTPD config HTTPD config httpd httpd web- web- Tomcat app Tomcat app tomcat tomcat Web Server Web Server config config Java App Java App app app App Server App Server 27 Overview File Mgmt Systems Mgmt Lessons Learned
S: YADT – Large Scale System Management 2nd chunk 1st chunk LB: www.immobilienscout24.de HTTPD config HTTPD config httpd httpd web- web- Tomcat app Tomcat app tomcat tomcat Web Server Web Server config config Java App Java App app app App Server App Server 28 Overview File Mgmt Systems Mgmt Lessons Learned
Systems Management with YADT Reduce Systemic Complexity 29 Overview File Mgmt Systems Mgmt Lessons Learned
Reduce Systemic Complexity Decoupled Applications 30 Overview File Mgmt Systems Mgmt Lessons Learned
Reduce Systemic Complexity Developers Build Infrastructure 31 Overview File Mgmt Systems Mgmt Lessons Learned
This Automation is our Continuous Delivery Platform Business Decision To go Live All Humans are on Scale Out AUTOMATION the Same Side Data Centers 32 Overview File Mgmt Systems Mgmt Lessons Learned
DevOps We build it together as one team. We understand it completly. And it is fully automated. 33 Overview File Mgmt Systems Mgmt Lessons Learned
Open-Source from the start https://code.google.com/p/yadt https://code.google.com/p/nexus-yum-plugin http://sourceforge.net/projects/yadtdownloads 34 Overview File Mgmt Systems Mgmt Lessons Learned
What is the real competitive advantage? https://code.google.com/p/yadt https://code.google.com/p/nexus-yum-plugin http://sourceforge.net/projects/yadtdownloads 35 Overview File Mgmt Systems Mgmt Lessons Learned
Q&A Massively Reduce Systemic Complexity Work As One Team 36 Overview File Mgmt Systems Mgmt Lessons Learned
Thank you very much! Please contact us for further questions and discussions. Kontakt: Immobilien Scout GmbH Email: ingmar.krusch@immobilienscout24.de Andreasstraße 10 Email: schlomo.schapiro@immobilienscout24.de 10243 Berlin URL: www.immobilienscout24.de 37
Recommend
More recommend