Be Fast Or Stay Behind Building a Continuous Delivery Platform - - PowerPoint PPT Presentation

be fast or stay behind
SMART_READER_LITE
LIVE PREVIEW

Be Fast Or Stay Behind Building a Continuous Delivery Platform - - PowerPoint PPT Presentation

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:


slide-1
SLIDE 1

Be Fast Or Stay Behind

www.immobilienscout24.de

Schlomo Schapiro, Systems Architect & Open Source Evangelist Ingmar Krusch, Team Lead in Operations

License: http://creativecommons.org/licenses/by-nc-nd/3.0/

Building a Continuous Delivery Platform

slide-2
SLIDE 2

2

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

Overview File Mgmt Systems Mgmt Lessons Learned

slide-3
SLIDE 3

3 Overview File Mgmt Systems Mgmt Lessons Learned

Close Collaboration Package Deployment

slide-4
SLIDE 4

4

The Big Picture – Continuous Delivery Platform

Business Decision To go Live All Humans are on the Same Side Build Config Deploy Test Systems- Management Automation Scale Out Data Centers

Overview File Mgmt Systems Mgmt Lessons Learned

slide-5
SLIDE 5

5

1st task: Reduce Systemic Complexity

File Management Systems Management

Overview File Mgmt Systems Mgmt Lessons Learned

slide-6
SLIDE 6

6

File Management with RPM & YUM

Overview File Mgmt Systems Mgmt Lessons Learned

slide-7
SLIDE 7

7

File Management with RPM & YUM

Overview File Mgmt Systems Mgmt Lessons Learned

Libraries Applications Configuration Operating System 100 %

slide-8
SLIDE 8

8

File Management with RPM & YUM

Overview File Mgmt Systems Mgmt Lessons Learned

PROD DEV

Infrastructure Build Application Build Configuration Build

QA

YUM Repos

slide-9
SLIDE 9

9

File Management with RPM & YUM

Overview File Mgmt Systems Mgmt Lessons Learned

Interface PROD DEV

Infrastructure Build Application Build Configuration Build

QA

YUM Repos

slide-10
SLIDE 10

10

PROD DEV

Infrastructure Build Application Build

QA

YUM Repos

Configuration Build – Pre-built Config Content

Overview File Mgmt Systems Mgmt Lessons Learned

Configuration Build

slide-11
SLIDE 11

11

Configuration Build – Pre-built Config Content

Overview File Mgmt Systems Mgmt Lessons Learned

SVN commit config file build config RPM RPMs with static content YUM Repo

slide-12
SLIDE 12

12

Configuration Build – Pre-built Config Content

Overview File Mgmt Systems Mgmt Lessons Learned

SVN RPMs with static content Templating Variables Overlaying YUM Repo build config RPM commit config file

slide-13
SLIDE 13

13

Configuration Build – Pre-built Config Content

Overview File Mgmt Systems Mgmt Lessons Learned

SVN RPMs with static content Templating Variables Overlaying we use 1 RPM per host YUM Repo commit config file build config RPM

slide-14
SLIDE 14

14

SVN RPMs with static content Templating Variables Overlaying we use 1 RPM per host Shared responsability Ops, Dev, QA ...

Configuration Build – Pre-built Config Content

Overview File Mgmt Systems Mgmt Lessons Learned

YUM Repo commit config file build config RPM

slide-15
SLIDE 15

15

Application Build – Continuous Release Delivery

Overview File Mgmt Systems Mgmt Lessons Learned

PROD DEV

Infrastructure Build

QA

YUM Repos

Configuration Build Application Build

slide-16
SLIDE 16

16

Application Build – Package Promotion Pipeline

YUM Repo

Tested Repo

YUM Repo

Released Repo

YUM Repo

Comitted Repo DEV Pre-PROD PROD

Overview File Mgmt Systems Mgmt Lessons Learned

slide-17
SLIDE 17

17

Application Build – Package Promotion Pipeline

CI

YUM Repo

Tested Repo

YUM Repo

Released Repo

YUM Repo

Comitted Repo Business decision to Go Live with tested versions DEV Pre-PROD PROD Auto- promote release if tests OK Deploy & Test Deploy & Test

Overview File Mgmt Systems Mgmt Lessons Learned

Deploy & Test

slide-18
SLIDE 18

18

Application Build – Site-wide Releases

Overview File Mgmt Systems Mgmt Lessons Learned

PROD DEV

Infrastructure Build

QA

YUM Repos

Configuration Build Application Build

slide-19
SLIDE 19

19

Team City – CI

POM

Application Build – Site-wide Releases

Overview File Mgmt Systems Mgmt Lessons Learned

NEXUS „released“ Repo

mvn deploy

NEXUS Server

slide-20
SLIDE 20

20

Application Build – Site-wide Releases

NEXUS „released“ Repo

yum upgrade

Overview File Mgmt Systems Mgmt Lessons Learned

Team City – CI

POM

mvn deploy

NEXUS Server NEXUS-YUM Plugin

YUM „released“ Repo

slide-21
SLIDE 21

21

File Management through many YUM repositories

Overview File Mgmt Systems Mgmt Lessons Learned

PROD DEV

Infrastructure Build Application Build Configuration Build

QA

YUM Repo YUM Repo YUM Repo YUM Repo

slide-22
SLIDE 22

22

Systems Management with YADT

Overview File Mgmt Systems Mgmt Lessons Learned

YADT – an Augmented Deployment Tool

slide-23
SLIDE 23

23

YADT – Unified Dependency Tree

Overview File Mgmt Systems Mgmt Lessons Learned

Web Server HTTPD Tomcat App Server Load Balancer

slide-24
SLIDE 24

24

YADT – Unified Dependency Tree

Web Server HTTPD Tomcat App Server Load Balancer web- app httpd config tomcat

Overview File Mgmt Systems Mgmt Lessons Learned

slide-25
SLIDE 25

25

YADT – Large Scale System Management

Web Server

HTTPD

Tomcat web- app

httpd config

tomcat

App Server

Java App app config

Overview File Mgmt Systems Mgmt Lessons Learned

slide-26
SLIDE 26

26

YADT – Large Scale System Management

LB: www.immobilienscout24.de

Web Server

HTTPD

Tomcat web- app

httpd config

tomcat

App Server

Java App app config

Web Server

HTTPD

Tomcat web- app

httpd config

tomcat

App Server

Java App app config

Overview File Mgmt Systems Mgmt Lessons Learned

slide-27
SLIDE 27

27

YADT – Large Scale System Management

LB: www.immobilienscout24.de

Web Server

HTTPD

Tomcat web- app

httpd config

tomcat

App Server

Java App app config

Web Server

HTTPD

Tomcat web- app

httpd config

tomcat

App Server

Java App app config

1st chunk

Overview File Mgmt Systems Mgmt Lessons Learned

slide-28
SLIDE 28

28

S: YADT – Large Scale System Management

LB: www.immobilienscout24.de

Web Server

HTTPD

Tomcat web- app

httpd config

tomcat

App Server

Java App app config

Web Server

HTTPD

Tomcat web- app

httpd config

tomcat

App Server

Java App app config

Overview File Mgmt Systems Mgmt Lessons Learned

1st chunk

2nd chunk

slide-29
SLIDE 29

29

Systems Management with YADT

Reduce Systemic Complexity

Overview File Mgmt Systems Mgmt Lessons Learned

slide-30
SLIDE 30

30

Reduce Systemic Complexity

Decoupled Applications

Overview File Mgmt Systems Mgmt Lessons Learned

slide-31
SLIDE 31

31

Reduce Systemic Complexity

Developers Build Infrastructure

Overview File Mgmt Systems Mgmt Lessons Learned

slide-32
SLIDE 32

32

This Automation is our Continuous Delivery Platform

Business Decision To go Live All Humans are on the Same Side Scale Out Data Centers

AUTOMATION

Overview File Mgmt Systems Mgmt Lessons Learned

slide-33
SLIDE 33

33

DevOps

We build it together as one team. We understand it completly. And it is fully automated.

Overview File Mgmt Systems Mgmt Lessons Learned

slide-34
SLIDE 34

34

Open-Source from the start

https://code.google.com/p/yadt https://code.google.com/p/nexus-yum-plugin

http://sourceforge.net/projects/yadtdownloads

Overview File Mgmt Systems Mgmt Lessons Learned

slide-35
SLIDE 35

35

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

Overview File Mgmt Systems Mgmt Lessons Learned

slide-36
SLIDE 36

36

Q&A

Overview File Mgmt Systems Mgmt Lessons Learned

Massively Reduce Systemic Complexity Work As One Team

slide-37
SLIDE 37

37

Kontakt: Immobilien Scout GmbH Andreasstraße 10 10243 Berlin Email: ingmar.krusch@immobilienscout24.de Email: schlomo.schapiro@immobilienscout24.de URL: www.immobilienscout24.de

Thank you very much! Please contact us for further questions and discussions.