Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CONTINUOUS DELIVERY BEI ZALANDO TECH

CONTINUOUS DELIVERY BEI ZALANDO TECH

EIN SKALIERUNGSANSATZ - Continuous Lifecycle conference Mannheim 2016

Lothar Schulz

November 15, 2017
Tweet

More Decks by Lothar Schulz

Other Decks in Technology

Transcript

  1. CONTINUOUS DELIVERY BEI ZALANDO TECH E I N S K

    A L I E R U N G S A N S A T Z L O T H A R S C H U L Z @ L O T H A R _ S C H U L Z N O V E M B E R 1 5 T H 2 0 1 6
  2. 2 ÜBER ZALANDO Angestellte in Berlin aktive users Angestellte in

    Europa Tech Angestellte >4500 19 M >1300 App downloads 21,5 M Umsatz 3BN EUR >11000
  3. 3 ÜBER MICH Continuous Integration & Deployment verantwortlich für 3

    Teams in diesem Bereich Managed Databases verantwortlich für das Databank Team (postgresql & cassandra) Open Source https://github.com/zalando https://github.com/lotharschulz @lothar_schulz www.lotharschulz.info
  4. 4

  5. 5 Jenkins (http://jenkins-ci.org/) logo by Charles Lowell and Frontside SITUATION

    2014 DATACENTER C I-DEV C I- QA SL AVE SL AVE SL AVE SL AVE SL A VE SL A VE SL A VE SL A VE
  6. 7 ERSTER ANSATZ: CI-CD custom_build_branches: - feature/** unit_test: cucumber_report: false

    integration_test: enable: true cucumber_report: false metrics: enable: false
  7. 11 CI IN DER CLOUD A U T O S

    C A L I N G 1 1 1 M ASTER A U T O S C A L I N G 1 1 8 SLAVE R53 Backups als EBS snapshots
  8. 12 CI IN DER CLOUD 1 Jenkins Master 1 Agent

    Standard Plugin Setup Admin Rechte Anlegen / Löschen von Jobs Anlegen / Löschen von Views Install / entfernen von plugins Management Rechte
  9. 13 CI IN DER CLOUD „AWS JENKINSES“ Fast jeden Monat

    ein neues Team als Kunden ~ 50% aller Tech Teams
  10. 15 CLOUDLOBSTER Agent immer verfügbar und ansprechbar Änderungen werden versioniert

    Standard Plugin Setup Github enterprise & github.com Integration OAuth2 for Authentifizierung and Autorisierung Pipeline templates Tool chains Self Service
  11. 17 CONTAINER TECHNOLOGIEN docker build --rm=true -t $IMAGE_PATH . /tools/run

    :stups -- pierone login --url pierone.stups.zalan.do docker push $IMAGE_PATH
  12. 23

  13. 24 ZUSAMMENFASSUNG •  Ein oder wenige CI Server können nicht

    alle use cases von vielen Entwicklern bedienen •  Sehr viele use case können mit vielen kleineren CI Server abgedeckt werden •  Viele kleinere CI Server zu managen kann eine Herrausforderung sein •  Kunden/Entwickler sollen befähigt werden managed CI Server so gut wie möglich Anpassen und Konfigurieren zu können •  Teams sollten so autonom wie möglich arbeiten •  Teams sollten so viele Entscheidungen wie möglich selbstständig treffen können •  Fexible Infrastruktur sollte so oft wie möglich verwendet werden