SlideShare ist ein Scribd-Unternehmen logo

DevOps - Programmierst Du noch oder betreibst Du schon?

Seit der Jahrtausendwende ist in der Softwareentwicklung einiges in Bewegung geraten. Es dürfte heute kaum ein Unternehmen geben, das nicht mindestens agile Elemente in seinen Entwicklungsprozess integriert hat. Meist mit dem Ziel, das Risiko zu minimieren Software an den Anforderungen vorbei zu entwickeln und schlussendlich Kosten bei der Entwicklung zu sparen. Aber wie lässt sich agile Softwareentwicklung in den Betrieb integrieren? Wie läuft das bisher? Welche Probleme gibt es dabei und wie kann man diese lösen? Im Vortrag wird anhand praktischer Erfahrung darauf eingegangen, wie agile Softwareentwicklung durch Continuous Deployment und Continuous Delivery das Betriebsumfeld innovieren kann.

1 von 28
Downloaden Sie, um offline zu lesen
Jean-Pierre König   @jpkoenig



DEVOPS
PROGRAMMIERST DU NOCH ODER BETREIBST DU SCHON?

14.03.12
Agenda
2


    •   Status Quo – „Wall of Confusion“
    •   Agile Movement, Software Entwicklung
    •   DevOps
    •   DevOps @memonews




                                               14.03.12
About me

Jean-Pierre König
Head of Technology,
  MeMo News AG
Dipl. Informatiker

Tags: Agile, BigData,
  Hadoop



                        14.03.12
Status Quo

WALL OF CONFUSION
IT Welt

• Softwareentwicklung & Systembetrieb
  organisatorisch klar getrennt
• Auslagerung von Organisationseinheiten in
  andere Unternehmen
                                  FOO Inc.



      ...   Finanzen   Personal    Software     Betrieb     Verkauf   ...




                                  BAR Corp.   Outsourcing




                                               Betrieb




                                                                            14.03.12
Gründe
• Skaleneffekt beim Konsolidieren des
  Systembetriebs nutzen
  • Personalbedarf im Betrieb steigt nicht zwangsläufig
    proportional zur Anzahl der zu betreuenden Systeme
    Betrieb mehrerer Systeme bündeln und an
    ausgewiesene Organisationseinheiten übergeben ist
    wirtschaftlich vorteilhaft
• Betriebs- und Administrationsaufgaben erfordern
  anderes Mitarbeiterprofil



                                                  14.03.12

Recomendados

About Dogs and Cats - über DevOps in großen Konzernen
About Dogs and Cats - über DevOps in großen KonzernenAbout Dogs and Cats - über DevOps in großen Konzernen
About Dogs and Cats - über DevOps in großen KonzernenStefan Bauer
 
DevOps: Revolution im IT Betrieb?
DevOps: Revolution im IT Betrieb?DevOps: Revolution im IT Betrieb?
DevOps: Revolution im IT Betrieb?Digicomp Academy AG
 
DevOps in der Praxis
DevOps in der PraxisDevOps in der Praxis
DevOps in der Praxisinovex GmbH
 
OOP 2012 - Udo Pracht - DevOps Einführung und Überblick
OOP 2012 - Udo Pracht - DevOps Einführung und ÜberblickOOP 2012 - Udo Pracht - DevOps Einführung und Überblick
OOP 2012 - Udo Pracht - DevOps Einführung und ÜberblickUdo Pracht
 
Quo vadis DevOps
Quo vadis DevOpsQuo vadis DevOps
Quo vadis DevOpscusy GmbH
 
Scrum als agiles Vorgehensmodell für Programmierer
Scrum als agiles Vorgehensmodell für ProgrammiererScrum als agiles Vorgehensmodell für Programmierer
Scrum als agiles Vorgehensmodell für ProgrammiererTobias Schlüter
 

Más contenido relacionado

Was ist angesagt?

VSHN DevOps Workshop at topsoft 2019
VSHN DevOps Workshop at topsoft 2019VSHN DevOps Workshop at topsoft 2019
VSHN DevOps Workshop at topsoft 2019Markus Speth
 
E-Commerce vs Architektur CodeTalks.Commerce_2018
E-Commerce vs Architektur CodeTalks.Commerce_2018E-Commerce vs Architektur CodeTalks.Commerce_2018
E-Commerce vs Architektur CodeTalks.Commerce_2018Johann-Peter Hartmann
 
Realisierung des Application Lifecycle Management im OWB
Realisierung des Application Lifecycle Management im OWBRealisierung des Application Lifecycle Management im OWB
Realisierung des Application Lifecycle Management im OWBMinerva SoftCare GmbH
 
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldInfrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldDaniel Steiger
 
BizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-OrganisationBizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-OrganisationUwe Weng
 
Bessere Software schneller liefern
Bessere Software schneller liefernBessere Software schneller liefern
Bessere Software schneller liefernMayflower GmbH
 
Lean development 04
Lean development 04Lean development 04
Lean development 04SuperB2
 
Scrum - Von traditionellen Ansaetzen zu agilen Methoden wie Scrum
Scrum - Von traditionellen Ansaetzen zu agilen Methoden wie ScrumScrum - Von traditionellen Ansaetzen zu agilen Methoden wie Scrum
Scrum - Von traditionellen Ansaetzen zu agilen Methoden wie ScrumRalf Ohlenbostel
 
Agil in der Normativen Welt
Agil in der Normativen WeltAgil in der Normativen Welt
Agil in der Normativen WeltThomas Arends
 
Cusy Developer-Baukasten
Cusy Developer-BaukastenCusy Developer-Baukasten
Cusy Developer-Baukastencusy GmbH
 
DevOps day - feature teams
DevOps day  - feature teamsDevOps day  - feature teams
DevOps day - feature teamsWalter Strametz
 
Scrum Workshop
Scrum WorkshopScrum Workshop
Scrum Workshopmrdoubleb
 
Organisation 4.0
Organisation 4.0Organisation 4.0
Organisation 4.0Uwe Weng
 

Was ist angesagt? (20)

DevOps Meetup Freiburg - DevOps in Practice
DevOps Meetup Freiburg - DevOps in PracticeDevOps Meetup Freiburg - DevOps in Practice
DevOps Meetup Freiburg - DevOps in Practice
 
VSHN DevOps Workshop at topsoft 2019
VSHN DevOps Workshop at topsoft 2019VSHN DevOps Workshop at topsoft 2019
VSHN DevOps Workshop at topsoft 2019
 
E-Commerce vs Architektur CodeTalks.Commerce_2018
E-Commerce vs Architektur CodeTalks.Commerce_2018E-Commerce vs Architektur CodeTalks.Commerce_2018
E-Commerce vs Architektur CodeTalks.Commerce_2018
 
Agile BI in der Praxis - DevOps4BI
Agile BI in der Praxis - DevOps4BIAgile BI in der Praxis - DevOps4BI
Agile BI in der Praxis - DevOps4BI
 
Agile BI in der Praxis - Agiles Testen
Agile BI in der Praxis - Agiles TestenAgile BI in der Praxis - Agiles Testen
Agile BI in der Praxis - Agiles Testen
 
Realisierung des Application Lifecycle Management im OWB
Realisierung des Application Lifecycle Management im OWBRealisierung des Application Lifecycle Management im OWB
Realisierung des Application Lifecycle Management im OWB
 
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldInfrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
 
BizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-OrganisationBizDevOps - Die prozessorientierte IT-Organisation
BizDevOps - Die prozessorientierte IT-Organisation
 
Bessere Software schneller liefern
Bessere Software schneller liefernBessere Software schneller liefern
Bessere Software schneller liefern
 
Lean development 04
Lean development 04Lean development 04
Lean development 04
 
Scrum - Von traditionellen Ansaetzen zu agilen Methoden wie Scrum
Scrum - Von traditionellen Ansaetzen zu agilen Methoden wie ScrumScrum - Von traditionellen Ansaetzen zu agilen Methoden wie Scrum
Scrum - Von traditionellen Ansaetzen zu agilen Methoden wie Scrum
 
Agile Business Software mit der Enterprise Cloud
Agile Business Software mit der Enterprise CloudAgile Business Software mit der Enterprise Cloud
Agile Business Software mit der Enterprise Cloud
 
Agil in der Normativen Welt
Agil in der Normativen WeltAgil in der Normativen Welt
Agil in der Normativen Welt
 
Advanced Continuous Integration
Advanced Continuous IntegrationAdvanced Continuous Integration
Advanced Continuous Integration
 
Cusy Developer-Baukasten
Cusy Developer-BaukastenCusy Developer-Baukasten
Cusy Developer-Baukasten
 
DevOps day - feature teams
DevOps day  - feature teamsDevOps day  - feature teams
DevOps day - feature teams
 
Scrum Workshop
Scrum WorkshopScrum Workshop
Scrum Workshop
 
ConSol Unternehmenspräsentation 2019
ConSol Unternehmenspräsentation 2019ConSol Unternehmenspräsentation 2019
ConSol Unternehmenspräsentation 2019
 
Organisation 4.0
Organisation 4.0Organisation 4.0
Organisation 4.0
 
Das Mindset von DevOps
Das Mindset von DevOpsDas Mindset von DevOps
Das Mindset von DevOps
 

Destacado

Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewIBM UrbanCode Products
 
Continuous integration eine Einführung für Unkundige
Continuous integration   eine Einführung für UnkundigeContinuous integration   eine Einführung für Unkundige
Continuous integration eine Einführung für Unkundigeabuwipp
 
Accenture DevOps: Delivering applications at the pace of business
Accenture DevOps: Delivering applications at the pace of businessAccenture DevOps: Delivering applications at the pace of business
Accenture DevOps: Delivering applications at the pace of businessAccenture Technology
 
Desarrollo sostenible
Desarrollo sostenibleDesarrollo sostenible
Desarrollo sostenibleWILS2015
 
The Jasna Gora wunders
The Jasna Gora wundersThe Jasna Gora wunders
The Jasna Gora wundersErasmus+
 
entorno y primeros pasos de powerpoint
entorno y primeros pasos de powerpointentorno y primeros pasos de powerpoint
entorno y primeros pasos de powerpointsalmardze
 
Open Government Data im Bundesumweltamt
Open Government Data im BundesumweltamtOpen Government Data im Bundesumweltamt
Open Government Data im BundesumweltamtOpen Knowledge Austria
 
soziales semantisches web
soziales semantisches websoziales semantisches web
soziales semantisches web_veronika_
 
Bernd Fuhlert: Code of conduct zum Datenschutz
Bernd Fuhlert: Code of conduct zum DatenschutzBernd Fuhlert: Code of conduct zum Datenschutz
Bernd Fuhlert: Code of conduct zum DatenschutzBernd Fuhlert
 
Pensamiento sistematico
Pensamiento sistematicoPensamiento sistematico
Pensamiento sistematicomaryyalitza
 
Ökonomisches Potential ür den Standort
Ökonomisches Potential ür den StandortÖkonomisches Potential ür den Standort
Ökonomisches Potential ür den StandortOpen Knowledge Austria
 
Cierre de Práctica Investigativa Rural en la vereda San José
Cierre de Práctica Investigativa Rural en la vereda San JoséCierre de Práctica Investigativa Rural en la vereda San José
Cierre de Práctica Investigativa Rural en la vereda San JoséIvan Gutierrez
 

Destacado (20)

Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture Overview
 
Continuous integration eine Einführung für Unkundige
Continuous integration   eine Einführung für UnkundigeContinuous integration   eine Einführung für Unkundige
Continuous integration eine Einführung für Unkundige
 
Continuous Delivery Maturity Model
Continuous Delivery Maturity ModelContinuous Delivery Maturity Model
Continuous Delivery Maturity Model
 
The Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeThe Future of DevOps and UrbanCode
The Future of DevOps and UrbanCode
 
Accenture DevOps: Delivering applications at the pace of business
Accenture DevOps: Delivering applications at the pace of businessAccenture DevOps: Delivering applications at the pace of business
Accenture DevOps: Delivering applications at the pace of business
 
Desarrollo sostenible
Desarrollo sostenibleDesarrollo sostenible
Desarrollo sostenible
 
The Jasna Gora wunders
The Jasna Gora wundersThe Jasna Gora wunders
The Jasna Gora wunders
 
entorno y primeros pasos de powerpoint
entorno y primeros pasos de powerpointentorno y primeros pasos de powerpoint
entorno y primeros pasos de powerpoint
 
Open Government Data im Bundesumweltamt
Open Government Data im BundesumweltamtOpen Government Data im Bundesumweltamt
Open Government Data im Bundesumweltamt
 
Fundación de Córdoba y de Santa Fe
Fundación de Córdoba y de Santa FeFundación de Córdoba y de Santa Fe
Fundación de Córdoba y de Santa Fe
 
soziales semantisches web
soziales semantisches websoziales semantisches web
soziales semantisches web
 
Bernd Fuhlert: Code of conduct zum Datenschutz
Bernd Fuhlert: Code of conduct zum DatenschutzBernd Fuhlert: Code of conduct zum Datenschutz
Bernd Fuhlert: Code of conduct zum Datenschutz
 
Pensamiento sistematico
Pensamiento sistematicoPensamiento sistematico
Pensamiento sistematico
 
Ökonomisches Potential ür den Standort
Ökonomisches Potential ür den StandortÖkonomisches Potential ür den Standort
Ökonomisches Potential ür den Standort
 
OKC March Madness
OKC March MadnessOKC March Madness
OKC March Madness
 
Delitos informáticos
Delitos informáticosDelitos informáticos
Delitos informáticos
 
Poder Ejecutivo
Poder EjecutivoPoder Ejecutivo
Poder Ejecutivo
 
Cierre de Práctica Investigativa Rural en la vereda San José
Cierre de Práctica Investigativa Rural en la vereda San JoséCierre de Práctica Investigativa Rural en la vereda San José
Cierre de Práctica Investigativa Rural en la vereda San José
 
Convenciones y acuerdos de trabajo
Convenciones y acuerdos de trabajoConvenciones y acuerdos de trabajo
Convenciones y acuerdos de trabajo
 
Effimag präsentation05
Effimag präsentation05Effimag präsentation05
Effimag präsentation05
 

Ähnlich wie DevOps - Programmierst Du noch oder betreibst Du schon?

Creasoft - Software QS
Creasoft - Software QSCreasoft - Software QS
Creasoft - Software QSCreasoft AG
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'scamunda services GmbH
 
Lean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-EntwicklungLean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-EntwicklungSuperB2
 
SwissQ Agile Trends & Benchmarks 2012 (Deutsch)
 SwissQ Agile Trends & Benchmarks 2012 (Deutsch) SwissQ Agile Trends & Benchmarks 2012 (Deutsch)
SwissQ Agile Trends & Benchmarks 2012 (Deutsch)SwissQ Consulting AG
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungChristian Baranowski
 
Kanban, Lean, and Scrum
Kanban, Lean, and ScrumKanban, Lean, and Scrum
Kanban, Lean, and ScrumThomas Moedl
 
IBM SmartCloud Provisioning Workshop, 25. Oktober 2012
IBM SmartCloud Provisioning Workshop, 25. Oktober 2012IBM SmartCloud Provisioning Workshop, 25. Oktober 2012
IBM SmartCloud Provisioning Workshop, 25. Oktober 2012IBM Switzerland
 
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...camunda services GmbH
 
We Do Web Sphere Deutsch Webcast On24
We Do Web Sphere Deutsch   Webcast On24We Do Web Sphere Deutsch   Webcast On24
We Do Web Sphere Deutsch Webcast On24Christoph Goertz
 
Rails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenRails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenPhillip Oertel
 

Ähnlich wie DevOps - Programmierst Du noch oder betreibst Du schon? (20)

20110321 activiti märz
20110321 activiti märz20110321 activiti märz
20110321 activiti märz
 
20110203 jug stuttgart
20110203 jug stuttgart20110203 jug stuttgart
20110203 jug stuttgart
 
YOUR SL GmbH
YOUR SL GmbHYOUR SL GmbH
YOUR SL GmbH
 
20110406 activiti mai
20110406 activiti mai20110406 activiti mai
20110406 activiti mai
 
Creasoft - Software QS
Creasoft - Software QSCreasoft - Software QS
Creasoft - Software QS
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht's
 
Lean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-EntwicklungLean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-Entwicklung
 
SwissQ Agile Trends & Benchmarks 2012 (Deutsch)
 SwissQ Agile Trends & Benchmarks 2012 (Deutsch) SwissQ Agile Trends & Benchmarks 2012 (Deutsch)
SwissQ Agile Trends & Benchmarks 2012 (Deutsch)
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software Entwicklung
 
20110223 activiti
20110223 activiti20110223 activiti
20110223 activiti
 
2012 05-30 camunda fox de
2012 05-30 camunda fox  de2012 05-30 camunda fox  de
2012 05-30 camunda fox de
 
20110406 activiti april
20110406 activiti april20110406 activiti april
20110406 activiti april
 
Kanban, Lean, and Scrum
Kanban, Lean, and ScrumKanban, Lean, and Scrum
Kanban, Lean, and Scrum
 
20110311 activiti mathema
20110311 activiti mathema20110311 activiti mathema
20110311 activiti mathema
 
IBM SmartCloud Provisioning Workshop, 25. Oktober 2012
IBM SmartCloud Provisioning Workshop, 25. Oktober 2012IBM SmartCloud Provisioning Workshop, 25. Oktober 2012
IBM SmartCloud Provisioning Workshop, 25. Oktober 2012
 
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
Roadshow 2019: Praxistipps für die erfolgreiche Einführung von Camunda in Ihr...
 
We Do Web Sphere Deutsch Webcast On24
We Do Web Sphere Deutsch   Webcast On24We Do Web Sphere Deutsch   Webcast On24
We Do Web Sphere Deutsch Webcast On24
 
Game Design Dokumentation und Projekt Management
Game Design Dokumentation und Projekt Management Game Design Dokumentation und Projekt Management
Game Design Dokumentation und Projekt Management
 
Camunda BPM 7.2 - Deutsch
Camunda BPM 7.2 - DeutschCamunda BPM 7.2 - Deutsch
Camunda BPM 7.2 - Deutsch
 
Rails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenRails und Scrum in großen Projekten
Rails und Scrum in großen Projekten
 

DevOps - Programmierst Du noch oder betreibst Du schon?

  • 1. Jean-Pierre König @jpkoenig DEVOPS PROGRAMMIERST DU NOCH ODER BETREIBST DU SCHON? 14.03.12
  • 2. Agenda 2 • Status Quo – „Wall of Confusion“ • Agile Movement, Software Entwicklung • DevOps • DevOps @memonews 14.03.12
  • 3. About me Jean-Pierre König Head of Technology, MeMo News AG Dipl. Informatiker Tags: Agile, BigData, Hadoop 14.03.12
  • 4. Status Quo WALL OF CONFUSION
  • 5. IT Welt • Softwareentwicklung & Systembetrieb organisatorisch klar getrennt • Auslagerung von Organisationseinheiten in andere Unternehmen FOO Inc. ... Finanzen Personal Software Betrieb Verkauf ... BAR Corp. Outsourcing Betrieb 14.03.12
  • 6. Gründe • Skaleneffekt beim Konsolidieren des Systembetriebs nutzen • Personalbedarf im Betrieb steigt nicht zwangsläufig proportional zur Anzahl der zu betreuenden Systeme Betrieb mehrerer Systeme bündeln und an ausgewiesene Organisationseinheiten übergeben ist wirtschaftlich vorteilhaft • Betriebs- und Administrationsaufgaben erfordern anderes Mitarbeiterprofil 14.03.12
  • 7. Ergebnis • Etablierte „Schnittstelledefinition“ zwischen beiden Welten – Wall of Confusion • Wie überführt man Software in den Betrieb? • Wie kann man sicherstellen, dass der Betreib den Anforderungen der Stakeholder gerecht wird? • ... • Prozesse, Metriken, SLA‘s, Regelungen, ... Die IT Infrastructure Library (ITIL) ist eine Sammlung von Best Practices bzw. Good Practices in einer Reihe von Publikationen, die eine mögliche Umsetzung eines IT-Service-Managements (ITSM) beschreiben und inzwischen international als De-facto-Standard hierfür gelten. Quelle: http://de.wikipedia.org/wiki/IT_Infrastructure_Library 14.03.12
  • 8. Ergebnis (2) I want I want change! stability! Dev Ops • automatisiert • formal Allenfalls eine funktionale Zusammenarbeit, aber wenig effizient bzw. effektiv. 14.03.12
  • 10. Warum? Bis zur Jahrtausendwende - klassische Software Entwicklungsmethoden etabliert Nachteilig: • Plangetrieben • Vollständige Erfassung aller Anforderungen nur mit immensem Aufwand möglich • „Keine“ Flexibilität bei geschäftlicher, gesetzlicher oder technischer Veränderung • ...
  • 11. Klassisch Releasezyklus Releasezyklus zentrale QA zentrale QA Initialisierung zentrale QA Analyse zentrale QA Entwurf zentrale QA Realisierung Einführung Nutzung Zeit ... Dev Ops Ops + Anwender Time to Release 14.03.12
  • 12. Agile, Agile, Agile Seit ca. 2003 Kanban & Scrum im Aufwand Ziele: • Risiko minimieren, an Anforderungen vorbei zu entwickeln • Entwicklungskosten einsparen, Time-To-Market Voraussetzungen: • Besseres Zusammenspiel zwischen Entwicklern und Nutzern, Anwender einbinden • Kürzere Entwicklungszyklen 14.03.12
  • 13. Agile/Iterativ „Agilisierter Wasserfall“ Releasezyklus Releasezyklus zentrale QA zentrale QA Sprint 1 2 3 4 ... n Analyse & Analyse & Design Analyse & Analyse & Design Design Design Analyse & Design Einführung Implementierung Implementierung Implementierung Implementierung Implementierung Nutzung Test & Demo & Demo Test & Demo & Demo Test Test Test & Demo Zeit Scrum Team (Dev) Ops Ops + Anwender Time to Release + (Proxy-) Anwender 14.03.12
  • 15. DevOps Auch: Continuous Delivery, Continuous Deployment Releasezyklus Releasezyklus Releasezyklus Releasezyklus Releasezyklus Sprint 1 2 3 4 ... n Analyse & Design Design Design Design Analyse & Analyse & Analyse & Analyse & Design Implementierung Implementierung Implementierung Implementierung Implementierung Test & Demo Demo Demo Demo Test & Test & Test & Test & Demo Einführung Einführung Einführung Einführung Einführung Nutzung Nutzung Nutzung Nutzung Nutzung Delivery Team Zeit + (Proxy-) Anwender Time to Release 14.03.12
  • 16. DevOps steht für ... • Engere Verbindung von Entwicklungsabteilung und Systembetrieb unter Zuhilfenahme agiler Praktiken • Entsprechende Kultur im Umgang miteinander • Werkzeuge, mit denen sich Betriebsaufgaben automatisieren lassen • Zunahme der Häufigkeit von Änderungen bei gleichzeitiger Risikominimierung 14.03.12
  • 17. DevOps ... is emerging set of principles, methods and practices for communication, DevOps collaboration and integration between Technology Operations ... [wikipedia] Patrick Debois prägte den Begriff 2009 erstmalig auf der devopsdays.org Konferenz 14.03.12
  • 18. Funktionierts? • Google (2010): > 20‘000 Experimente führten zu mehr als 500 Updates verschiedener Algorithmen – fast 2 mal täglich • Wordpress (2005-2010): > 25‘000 Releases – ca. 16 pro Tag • Etsy, (2010): > 25 Releases/Tag 14.03.12
  • 20. DevOps Principles • Reproducible, automated releasing • Fail fast – fail early – fail often • Don’t hack under stress – find, fix & start over! • Everything is under version control • Don‘t blame others • It‘s not (mine|yours|theirs ) – it‘s our • Continuous improvement 14.03.12
  • 22. Tools (1) „Infrastructure as Code“ Betriebshandbuch Dev Ops • „nicht“ versiert in Shell Programmierung • „keine“ tiefen Kenntnisse über das • „keine“ fundierte Kenntnisse im Umgang Verhalten von Anwendungen auf dem mit Unix-Systemen Zielsystem • „wenig“ Informationen über die Funktionen einer Anwendungen • „wenig“ Informationen zur Konfiguration 1. Gemeinsames Vokabular (DSL) definieren 2. Gemeinsames Beschreiben aller notwendigen Schritte 3. Direkte Überführung in ein ausführbares Programm 4. Versionierung des Programms zusammen mit der Software • Sehr schnelle betriebsfertige Einrichtung mehrerer Systeme aus einer einheitlichen Quelle 14.03.12
  • 23. Tools (2) Deployment von Anwendung Betriebshandbuch Dev Ops • „keine“ Informationen zu •„wenig“ Informationen zur Installation einer Installationspfaden und Environment Anwendung auf dem Zielsystem Variablen 1. Gemeinsames Vokabular (DSL) definieren capistrano 2. Gemeinsames Beschreiben aller notwendigen Schritte Fabric 3. Direkte Überführung in ein ausführbares Programm 4. Versionierung des Programms zusammen mit der Software • Sehr schnelles Deployment einer lauffähigen Anwendung pro Umgebung 14.03.12
  • 24. DevOps @MEMO 14.03.12
  • 25. Infrastructure as Code [Basics] [Basics] • Open-Source Name=k3‐s14 Networks[]=lan IPv4forwarding=enabled Name=memo‐test‐hmaster IPbase=10.147.55 Fixed=1 Software, YMC AG VirtualIP=disabled AdminGroups[]=ymcRootAccessToAnyHost HA[]=disabled Port=22 cnames[]=disabled Servers[]=k3‐s14 • Produktiver LVM[]=root LVM[]=swap cnames[]=disabled Einsatz: Schweizer [LVM_root] Admins[]=ymc‐jaou Size=10G Admins[]=memo‐jeko Filesystem=ext4 Admins[]=memo‐vaki Admins[]=memo‐niku Fernsehen [LVM_swap] Size=5G Filesystem=swap Admins[]=memo‐chgu LVM[]=disabled • PHP-basiert, [Network_lan] Mount[]=disabled Interfaces[]=1 IP=10.147.213.14 [k3‐s14] Netmask=255.255.0.0 Number=1 automatisiert Gateway=10.147.89.254 Layout=single Routes[]=disabled ... [Interface_lan1] hwAddr=00:1b:05:93:d5:0e ConnectedToInfo=r2‐s5 [Monitoring] CheckGroups[]=ymcClusterNodeDefaultCheckGroup 14.03.12
  • 26. Deployment [9:33:14] nkuebler:processr git:(master) $ cap unicorn:start • Web Anwendung triggering start callbacks for `unicorn:start' * executing `multistage:ensure' *** Defaulting to `rapid‐test' * executing `rapid‐test' • capistrano * executing `unicorn:start' * executing `unicorn:start_production' * executing "if [ ‐f /usr/share/memo‐processr/shared/pids/unicorn.pid ]  && kill ‐0 $(</usr/share/memo‐processr/shared/pids/unicorn.pid)  • Java Anwendung >/dev/null 2>&1; then echo 'unicorn already running'; else echo  'starting unicorn...'; source /usr/local/rvm/environments/ruby‐1.9.2‐ p290; cd /usr/share/memo‐processr/current && /usr/share/memo‐ processr/shared/binstubs/unicorn ‐E production ‐D ‐c /usr/share/memo‐ • Jenkins* processr/current/config/unicorn/production.rb; fi" servers: ["k3‐s7.ymchq", "k3‐s8.ymchq", "k3‐s9.ymchq", "k3‐ s10.ymchq", "k3‐s19.ymchq", "k3‐s20.ymchq"] (PostBuildSteps) [k3‐s7.ymchq] executing command [k3‐s8.ymchq] executing command [k3‐s9.ymchq] executing command • capistrano* [k3‐s10.ymchq] executing command [k3‐s19.ymchq] executing command [k3‐s20.ymchq] executing command ** [out :: k3‐s19.ymchq] starting unicorn... ** [out :: k3‐s10.ymchq] starting unicorn... ** [out :: k3‐s7.ymchq] starting unicorn... ** [out :: k3‐s20.ymchq] starting unicorn... ** [out :: k3‐s8.ymchq] starting unicorn... ** [out :: k3‐s9.ymchq] starting unicorn... command finished in 4967ms * executing `unicorn:start_test' * executing "if [ ‐f /usr/share/memo‐processr/shared/pids/unicorn.pid ]  && kill ‐0 $(</usr/share/memo‐processr/shared/pids/unicorn.pid)  >/dev/null 2>&1; then echo 'unicorn already running'; else echo  'starting unicorn...'; source /usr/local/rvm/environments/ruby‐1.9.2‐ p290; cd /usr/share/memo‐processr/current && /usr/share/memo‐ processr/shared/binstubs/unicorn ‐E production ‐D ‐c /usr/share/memo‐ processr/current/config/unicorn/test.rb; fi" servers: ["k3‐s17.ymchq"] [k3‐s17.ymchq] executing command * (noch) nicht in Produktion ** [out :: k3‐s17.ymchq] starting unicorn... command finished in 3884ms 14.03.12
  • 28. Quellen & Literatur http://www.jedi.be/blog/2010/02/12/what-is-this-devops-thing-anyway/ http://devopsdays.org/ http://www.agileweboperations.com/20-devops-guys http://en.wikipedia.org/wiki/DevOps http://dev2ops.org/blog/2010/2/22/what-is-devops.html http://continuousdelivery.com/ Tools: • http://wiki.opscode.com/display/chef/Home • http://puppetlabs.com/ • https://github.com/capistrano/capistrano/wiki/Documentation-v2.x • http://docs.fabfile.org/en/1.4.0/index.html • http://rundeck.org/ Beispiele: • Google: http://insidesearch.blogspot.com/2011/11/ten-recent-algorithm-changes.html • Wordpress: http://toni.org/2010/05/19/ • Etsy: http://codeascraft.etsy.com/2011/02/04/