SlideShare ist ein Scribd-Unternehmen logo
1 von 3
Downloaden Sie, um offline zu lesen
!
Problemstellung-
Die! oft! monolithisch! aufgebauten! Organisationen!
für! Dev! und! Ops! im! Enterprise9Softwarebereich!
arbeiten!in!vielen!Unternhemen!erst!dann!wirklich!
zusammen,!wenn!die!Software!einem!tatsächlichen!
produktiven! oder! Testbetrieb! zugeführt! wird.!
Dadurch! werden! viele! Anforderungen! an! die!
Betriebsumgebungen! erst! sehr! spät! sichtbar,! was!
zu! Verzögerungen! bei! der! Inbetriebnahme! führen!
kann,! die! erst! spät! im! Lieferprozess! erkannt!
werden.!
Des! Weiteren! sind! in! vielen! Organisationen!
manuelle! Prozesse! für! das! Aufsetzen! neuer!
Umgebungen!oder!die!Installation!neuer!Software!
vorgesehen,! was! Aufwand! und! Wartezeiten!
erzeugt!sowie!fehleranfällig!ist.!
Gerade! die! bei! der! agilen! Softwareentwicklung!
immer! häufiger! werdenden! Softwarelieferungen!
(bei!Scrum!etwa!nach!jedem!Sprint)!stellen!so!einen!
signifikanten!Aufwandsberg!dar.!!
Zudem! betreiben! die! Operations9Abteilungen! in!
größeren! Unternehmen! oft! Dutzende! oder!
Hunderte! unterschiedlichster! Applikationen,! so!
dass! eine! Prozessstandardisierung! und!
Automatisierung!eigentlich!unabdingbar!werden.!
Lösung-
Mit! Prozessen,! die! nach! dem! DevOps9Prinzip!
organisiert!werden,!wird!zum!einen!der!Feedback9
Loop! nach! Ops! möglichst! weit! an! den! Beginn! der!
Softwareentwicklung!vorverlegt,!indem!Ops!schon!
von! Anfang! an! in! Meetings,!
Applikationsarchitektur,! Infrastrukturfragen! und!
Sicherheitsfragen! eingebunden! sind.! In! Scrum!
können! z.B.! Ops9KollegInnen! an! den! Sprint9
Plannings! und! 9Reviews! teilnehmen,! um! möglichst!
früh! zu! erfahren,! wie! einzelne! Anforderungen! an!
die!Software!umgesetzt!werden.!
Der! dadurch! entstehende! zusätzliche! Zeitaufwand!
für! Ops! sollte! an! anderer! Stelle! dadurch! wieder!
reduziert! werden,! dass! wiederkehrende! Aufgaben!
wie! Deployments,! Datenbank9Updates! oder! das!
Verteilen!von!Logfiles!automatisiert!werden!und!als!
Self9Service! den! Dev9Teams! zugänglich! gemacht!
werden.! Während! Software9Deployments! inkl.! der!
notwendigen! Datenbank9Migration! auf! Grund! von!
Abhängigkeiten! und! Wartezeiten! häufig! mehrere!
Stunden!dauern!können,!sollte!ein!solcher!Prozess!
DevOps!bezeichnet!eine!Ansammlung!von!Maßnahmen!um!die!in!vielen,!insbesondere!größeren,!Unternehmen!
getrennt! organisierten! Softwareentwicklungs9! (Development,! Dev)! und! Softwarebetriebs9Teams! (Operations,!
Ops)!zu!einer!stärkeren!Kollaboration!sowie!Prozess9Automatisierung!zu!führen.!
Das!Ziel!dabei!ist!die!Ermöglichung!einer!schnelleren!und!weniger!fehleranfälligen!Auslieferung!von!Software.!
DevOps!9!Die!Fortführung!des!agilen!Ansatzes!
nicht& mehr& als& ein& paar& Minuten& in& Anspruch&
nehmen,& wenn& dies& durch& ein& Deployment7Tool&
abgebildet&wird.&
So&kann&ein&Deployment7Automat&das&Stoppen&der&
Applikation,& das& Verteilen& und& Installieren& der&
Artefakte,&Struktur7&und&Datenmanipulation&auf&der&
Datenbank& sowie& den& anschließenden& Restart& der&
Applikation&übernehmen.&
Für&Deployments&bieten&DevOps7Tools&wie&Puppet&
[1]& oder& Chef& [2]& eine& Fülle& von& Möglichkeiten,&
während&DB7Updates&oft&über&natives&SQL,&Flyway&
[3]& oder& Liquibase& [4]& abgebildet& werden,& die& sich&
um& die& korrekte& Versionierung& kümmern.& Um& das&
Ausrollen&auf&mehrere&Cluster7Knoten&kümmert&sich&
z.B.& Capistrano& [5].& So& kann& jedes& Team& die& zu&
seinen& Anforderungen& passende& Tool7Suite& selbst&
zusammenstellen.&
Die&gesamte&Kofiguration&einer&Umgebung&besteht&
dann& lediglich& aus& einer& Ansammlung& von& Chef7
Cookbooks& oder& Puppet7Manifesten& und& den&
entsprechenden& Software7Artefakten& und&
Datenbank7Skripten.& Somit& können& ohne& Weiteres&
Umgebungen& kopiert& und& woanders& lauffähig&
gemacht&werden.&
Ein& wichtiger& Aspekt& ist& eine& gemeinsame&
Zielvereinbarung:& Devs& sollen& nicht& vorrangig& nur&
die&erfolgte&Lieferung&und&Ops&nur&die&Stabilität&im&
Fokus& haben;& als& gemeinsames& DevOps7Team& sind&
sie& sowohl& für& die& flexible& und& schnelle& Lieferung&
von& Software& als& auch& für& den& störungsfreien& und&
stabilen&Betrieb&ebenjener&verantwortlich&und&lösen&
Probleme&gemeinsam.&
Vorteile(
Durch& die& Einführung& von& DevOps7Methoden&
werden& aufwändige& und& fehleranfällige& Prozesse&
innerhalb&der&Software7Lieferkette&verschlankt&und&
zuverlässiger& gemacht,& die& Gesamtqualität& der&
betriebenen& Software& steigt& und& somit& auch& der&
Aufwand&bei&der&Wartung.&Des&weiteren&ermöglicht&
DevOps&das&effiziente&Ausliefern&von&Software&für&
agile& Entwicklungsprozesse& und& hilft& so& dabei,&
Releasezyklen&zu&verkürzen.&
Alle& beteiligten& Teammitglieder& sind& in& gleichem&
Maße& für& die& Auslieferung& und& den& Betrieb& der&
Software& verantwortlich,& was& Interessenskonflikte&
reduziert& und& für& eine& angenehmere& und&
nachhaltigere&Arbeitsatmosphäre&sorgt.&
Konsequenzen(
Trotz&der&Fülle&an&Vorteilen&ist&DevOps&nicht&immer&
einfach&zu&implementieren.&Zum&einen&müssen&sehr&
viele&7&oft&jahrelang&eingeschliffene&7&Prozesse&und&
Tools& angepasst& oder& ersetzt& werden,& was& einen&
signifikanten& administrativen& und&
Entwicklungsaufwand& bedeutet.& Die&
Softwareentwicklungsprozesse& müssen& auch& auf&
die& für& DevOps& verwendeten& Tools& angepasst&
werden.&
Des& weiteren& ergeben& sich,& gerade& in&
Großunternehmen,&zu&Beginn&nicht&selten&Konflikte&
hinsichtlich&Mindset7&und&Anpassungsfragen;&wenn&
nicht& alle& Beteiligten& von& dem& gemeinsamen& Ziel&
DevOps& überzeugt& sind& (etwa& weil& es& als& Kritik& an&
der& eigenen& Arbeit& verstanden& wird),& ist& die&
Einführung&von&DevOps&äußerst&mühselig.&
Nicht&zuletzt&mangelt&es&in&Sachen&DevOps&noch&an&
Standardisierung,& wodurch& Zielprozesse& zu& Beginn&
oft&unklar&sind&und&zunächst&aufwändig&geklärt&und&
angeglichen&werden&müssen.&
Plant& ein& Unternehmen& die& Einführung& oder& den&
Ausbau&von&DevOps7Prozessen,&müssen&sich&die&IT7
Entscheider& darüber& im& Klaren& sein,& dass&
insbesondere&initial&mit&erhöhtem&Aufwand&für&das&
akkurate& Design& und& die& Implementierung& der&
reibungslosen& Abläufe& zu& rechnen& ist.& Somit&
müssen& sie& den& jeweiligen& Teams& Freiräume&
gewähren,&eben&diese&Prozesse&zu&gestalten&und&im&
Sinne& von& Continuous& Improvement& auch&
wiederholt&überprüfen&und&anpassen&zu&können.&
Kompetenzen(
techdev& Solutions& hat& umfangreiche& Erfahrung&
ebenso& in& der& Arbeit& mit& wie& der& Einführung& von&
DevOps7tauglichen& Prozessen& und& Tools.& Alle&
internen& Software7Lieferprozesse& sind& nach& den&
Prinzipien& von& Agiler& Softwareentwicklung& und&
DevOps&&ausgerichtet.&&
Oftmals& liegen& zwischen& dem& Vorhaben,& die&
Softwarelieferung& mit& Hilfe& von& DevOps& zu&
optimieren,& und& der& tatsächlichen& Umsetzung&
Monate&der&Diskussion&über&das&Was&und&Wie&sowie&
viele& Versuche& und& Anpassungen.& Durch& die&
umfangreiche& Erfahrung& mit& DevOps& hilft& techdev&
Ihnen,& diesen& Prozess& zu& begleiten& und& Ihre&
Softwareentwicklung&besser&aufzustellen!&
Über(uns(
techdev& Solutions& ist& der& unabhängige&
Beratungspartner& für& anspruchsvolle& IT& Projekte.&
Gemeinsam& mit& unseren& Kunden& konzipieren& wir&
individuell& abgestimmte& Softwarelösungen,& setzen&
diese& um& und& entwickeln& bestehende& Systeme&
weiter.& In& Zeiten& von& komplexen& Arbeitsabläufen&
und&einer&hauptsächlich&von&Zeit7&und&Kostendruck&
bestimmten& Wettbewerbsfähigkeit,& sind& optimale&
Prozesse& und& effiziente& IT7Strukturen& oft& der&
entscheidende& Vorteil,& welcher& unseren& Kunden&
ihre&Favoritenrolle&sichert.&
&
Kontakt(
techdev(Solutions(UG((haftungsbeschränkt)(
Bismarckstr.&47&
76133&Karlsruhe&
&
info@techdev.de&
www.techdev.de&
&
Referenzen(
[1]&http://puppetlabs.com/&
[2]&http://www.getchef.com/chef/&
[3]&http://flywaydb.org/&
[4]&http://www.liquibase.org/&
[5]&https://github.com/capistrano/capistrano/wiki&
&
&
&

Weitere ähnliche Inhalte

Ähnlich wie DEVOPS

Ähnlich wie DEVOPS (20)

DevOps: Automatisierte Deployments mit TFS & Octopus Deploy
DevOps: Automatisierte Deployments mit TFS & Octopus DeployDevOps: Automatisierte Deployments mit TFS & Octopus Deploy
DevOps: Automatisierte Deployments mit TFS & Octopus Deploy
 
DevOps jenseits der Tools
DevOps jenseits der ToolsDevOps jenseits der Tools
DevOps jenseits der Tools
 
Quo vadis-devops-nuernberg
Quo vadis-devops-nuernbergQuo vadis-devops-nuernberg
Quo vadis-devops-nuernberg
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
Advanced Continuous Integration
Advanced Continuous IntegrationAdvanced Continuous Integration
Advanced Continuous Integration
 
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
 
Whitepaper QF-Test: GUI Testautomatisierung macht Spaß
Whitepaper QF-Test: GUI Testautomatisierung macht SpaßWhitepaper QF-Test: GUI Testautomatisierung macht Spaß
Whitepaper QF-Test: GUI Testautomatisierung macht Spaß
 
Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-Anwendungen
 
Continuous Integration / Deployment mit Jenkins CI
Continuous Integration / Deployment mit Jenkins CI Continuous Integration / Deployment mit Jenkins CI
Continuous Integration / Deployment mit Jenkins CI
 
1. Cloud Native Meetup Innsbruck, 23.11.2023
1. Cloud Native Meetup Innsbruck, 23.11.20231. Cloud Native Meetup Innsbruck, 23.11.2023
1. Cloud Native Meetup Innsbruck, 23.11.2023
 
2011 05 11 11-45 top_sopft-startfolien-xx-01
2011 05 11 11-45 top_sopft-startfolien-xx-012011 05 11 11-45 top_sopft-startfolien-xx-01
2011 05 11 11-45 top_sopft-startfolien-xx-01
 
Config as Code: Der Weg zu Configuration as Code
Config as Code: Der Weg zu Configuration as CodeConfig as Code: Der Weg zu Configuration as Code
Config as Code: Der Weg zu Configuration as Code
 
Lean-Administration einfach begreifbar machen
Lean-Administration einfach begreifbar machenLean-Administration einfach begreifbar machen
Lean-Administration einfach begreifbar machen
 
DevOps day - feature teams
DevOps day  - feature teamsDevOps day  - feature teams
DevOps day - feature teams
 
DevOps Sepc15
DevOps Sepc15DevOps Sepc15
DevOps Sepc15
 
4 check PRODUKT-PRÄSENTATION
4 check PRODUKT-PRÄSENTATION4 check PRODUKT-PRÄSENTATION
4 check PRODUKT-PRÄSENTATION
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
 
Puppet: Aufbau einer Puppet Enterprise Umgebung (Webinar vom 28.03.2014)
Puppet: Aufbau einer Puppet Enterprise Umgebung (Webinar vom 28.03.2014)Puppet: Aufbau einer Puppet Enterprise Umgebung (Webinar vom 28.03.2014)
Puppet: Aufbau einer Puppet Enterprise Umgebung (Webinar vom 28.03.2014)
 
DNUG ak-anwendungsentwicklung.18042011
DNUG ak-anwendungsentwicklung.18042011DNUG ak-anwendungsentwicklung.18042011
DNUG ak-anwendungsentwicklung.18042011
 
Bernhard Wick - appserver.io - code.talks 2015
 Bernhard Wick - appserver.io - code.talks 2015 Bernhard Wick - appserver.io - code.talks 2015
Bernhard Wick - appserver.io - code.talks 2015
 

DEVOPS

  • 1. ! Problemstellung- Die! oft! monolithisch! aufgebauten! Organisationen! für! Dev! und! Ops! im! Enterprise9Softwarebereich! arbeiten!in!vielen!Unternhemen!erst!dann!wirklich! zusammen,!wenn!die!Software!einem!tatsächlichen! produktiven! oder! Testbetrieb! zugeführt! wird.! Dadurch! werden! viele! Anforderungen! an! die! Betriebsumgebungen! erst! sehr! spät! sichtbar,! was! zu! Verzögerungen! bei! der! Inbetriebnahme! führen! kann,! die! erst! spät! im! Lieferprozess! erkannt! werden.! Des! Weiteren! sind! in! vielen! Organisationen! manuelle! Prozesse! für! das! Aufsetzen! neuer! Umgebungen!oder!die!Installation!neuer!Software! vorgesehen,! was! Aufwand! und! Wartezeiten! erzeugt!sowie!fehleranfällig!ist.! Gerade! die! bei! der! agilen! Softwareentwicklung! immer! häufiger! werdenden! Softwarelieferungen! (bei!Scrum!etwa!nach!jedem!Sprint)!stellen!so!einen! signifikanten!Aufwandsberg!dar.!! Zudem! betreiben! die! Operations9Abteilungen! in! größeren! Unternehmen! oft! Dutzende! oder! Hunderte! unterschiedlichster! Applikationen,! so! dass! eine! Prozessstandardisierung! und! Automatisierung!eigentlich!unabdingbar!werden.! Lösung- Mit! Prozessen,! die! nach! dem! DevOps9Prinzip! organisiert!werden,!wird!zum!einen!der!Feedback9 Loop! nach! Ops! möglichst! weit! an! den! Beginn! der! Softwareentwicklung!vorverlegt,!indem!Ops!schon! von! Anfang! an! in! Meetings,! Applikationsarchitektur,! Infrastrukturfragen! und! Sicherheitsfragen! eingebunden! sind.! In! Scrum! können! z.B.! Ops9KollegInnen! an! den! Sprint9 Plannings! und! 9Reviews! teilnehmen,! um! möglichst! früh! zu! erfahren,! wie! einzelne! Anforderungen! an! die!Software!umgesetzt!werden.! Der! dadurch! entstehende! zusätzliche! Zeitaufwand! für! Ops! sollte! an! anderer! Stelle! dadurch! wieder! reduziert! werden,! dass! wiederkehrende! Aufgaben! wie! Deployments,! Datenbank9Updates! oder! das! Verteilen!von!Logfiles!automatisiert!werden!und!als! Self9Service! den! Dev9Teams! zugänglich! gemacht! werden.! Während! Software9Deployments! inkl.! der! notwendigen! Datenbank9Migration! auf! Grund! von! Abhängigkeiten! und! Wartezeiten! häufig! mehrere! Stunden!dauern!können,!sollte!ein!solcher!Prozess! DevOps!bezeichnet!eine!Ansammlung!von!Maßnahmen!um!die!in!vielen,!insbesondere!größeren,!Unternehmen! getrennt! organisierten! Softwareentwicklungs9! (Development,! Dev)! und! Softwarebetriebs9Teams! (Operations,! Ops)!zu!einer!stärkeren!Kollaboration!sowie!Prozess9Automatisierung!zu!führen.! Das!Ziel!dabei!ist!die!Ermöglichung!einer!schnelleren!und!weniger!fehleranfälligen!Auslieferung!von!Software.! DevOps!9!Die!Fortführung!des!agilen!Ansatzes!
  • 2. nicht& mehr& als& ein& paar& Minuten& in& Anspruch& nehmen,& wenn& dies& durch& ein& Deployment7Tool& abgebildet&wird.& So&kann&ein&Deployment7Automat&das&Stoppen&der& Applikation,& das& Verteilen& und& Installieren& der& Artefakte,&Struktur7&und&Datenmanipulation&auf&der& Datenbank& sowie& den& anschließenden& Restart& der& Applikation&übernehmen.& Für&Deployments&bieten&DevOps7Tools&wie&Puppet& [1]& oder& Chef& [2]& eine& Fülle& von& Möglichkeiten,& während&DB7Updates&oft&über&natives&SQL,&Flyway& [3]& oder& Liquibase& [4]& abgebildet& werden,& die& sich& um& die& korrekte& Versionierung& kümmern.& Um& das& Ausrollen&auf&mehrere&Cluster7Knoten&kümmert&sich& z.B.& Capistrano& [5].& So& kann& jedes& Team& die& zu& seinen& Anforderungen& passende& Tool7Suite& selbst& zusammenstellen.& Die&gesamte&Kofiguration&einer&Umgebung&besteht& dann& lediglich& aus& einer& Ansammlung& von& Chef7 Cookbooks& oder& Puppet7Manifesten& und& den& entsprechenden& Software7Artefakten& und& Datenbank7Skripten.& Somit& können& ohne& Weiteres& Umgebungen& kopiert& und& woanders& lauffähig& gemacht&werden.& Ein& wichtiger& Aspekt& ist& eine& gemeinsame& Zielvereinbarung:& Devs& sollen& nicht& vorrangig& nur& die&erfolgte&Lieferung&und&Ops&nur&die&Stabilität&im& Fokus& haben;& als& gemeinsames& DevOps7Team& sind& sie& sowohl& für& die& flexible& und& schnelle& Lieferung& von& Software& als& auch& für& den& störungsfreien& und& stabilen&Betrieb&ebenjener&verantwortlich&und&lösen& Probleme&gemeinsam.& Vorteile( Durch& die& Einführung& von& DevOps7Methoden& werden& aufwändige& und& fehleranfällige& Prozesse& innerhalb&der&Software7Lieferkette&verschlankt&und& zuverlässiger& gemacht,& die& Gesamtqualität& der& betriebenen& Software& steigt& und& somit& auch& der& Aufwand&bei&der&Wartung.&Des&weiteren&ermöglicht& DevOps&das&effiziente&Ausliefern&von&Software&für& agile& Entwicklungsprozesse& und& hilft& so& dabei,& Releasezyklen&zu&verkürzen.& Alle& beteiligten& Teammitglieder& sind& in& gleichem& Maße& für& die& Auslieferung& und& den& Betrieb& der& Software& verantwortlich,& was& Interessenskonflikte& reduziert& und& für& eine& angenehmere& und& nachhaltigere&Arbeitsatmosphäre&sorgt.& Konsequenzen( Trotz&der&Fülle&an&Vorteilen&ist&DevOps&nicht&immer& einfach&zu&implementieren.&Zum&einen&müssen&sehr& viele&7&oft&jahrelang&eingeschliffene&7&Prozesse&und& Tools& angepasst& oder& ersetzt& werden,& was& einen& signifikanten& administrativen& und& Entwicklungsaufwand& bedeutet.& Die& Softwareentwicklungsprozesse& müssen& auch& auf& die& für& DevOps& verwendeten& Tools& angepasst& werden.& Des& weiteren& ergeben& sich,& gerade& in& Großunternehmen,&zu&Beginn&nicht&selten&Konflikte& hinsichtlich&Mindset7&und&Anpassungsfragen;&wenn& nicht& alle& Beteiligten& von& dem& gemeinsamen& Ziel& DevOps& überzeugt& sind& (etwa& weil& es& als& Kritik& an& der& eigenen& Arbeit& verstanden& wird),& ist& die& Einführung&von&DevOps&äußerst&mühselig.& Nicht&zuletzt&mangelt&es&in&Sachen&DevOps&noch&an& Standardisierung,& wodurch& Zielprozesse& zu& Beginn& oft&unklar&sind&und&zunächst&aufwändig&geklärt&und& angeglichen&werden&müssen.& Plant& ein& Unternehmen& die& Einführung& oder& den& Ausbau&von&DevOps7Prozessen,&müssen&sich&die&IT7 Entscheider& darüber& im& Klaren& sein,& dass& insbesondere&initial&mit&erhöhtem&Aufwand&für&das& akkurate& Design& und& die& Implementierung& der& reibungslosen& Abläufe& zu& rechnen& ist.& Somit& müssen& sie& den& jeweiligen& Teams& Freiräume& gewähren,&eben&diese&Prozesse&zu&gestalten&und&im& Sinne& von& Continuous& Improvement& auch& wiederholt&überprüfen&und&anpassen&zu&können.& Kompetenzen( techdev& Solutions& hat& umfangreiche& Erfahrung& ebenso& in& der& Arbeit& mit& wie& der& Einführung& von& DevOps7tauglichen& Prozessen& und& Tools.& Alle& internen& Software7Lieferprozesse& sind& nach& den& Prinzipien& von& Agiler& Softwareentwicklung& und& DevOps&&ausgerichtet.&& Oftmals& liegen& zwischen& dem& Vorhaben,& die& Softwarelieferung& mit& Hilfe& von& DevOps& zu& optimieren,& und& der& tatsächlichen& Umsetzung& Monate&der&Diskussion&über&das&Was&und&Wie&sowie& viele& Versuche& und& Anpassungen.& Durch& die& umfangreiche& Erfahrung& mit& DevOps& hilft& techdev& Ihnen,& diesen& Prozess& zu& begleiten& und& Ihre& Softwareentwicklung&besser&aufzustellen!& Über(uns( techdev& Solutions& ist& der& unabhängige& Beratungspartner& für& anspruchsvolle& IT& Projekte.& Gemeinsam& mit& unseren& Kunden& konzipieren& wir& individuell& abgestimmte& Softwarelösungen,& setzen& diese& um& und& entwickeln& bestehende& Systeme& weiter.& In& Zeiten& von& komplexen& Arbeitsabläufen& und&einer&hauptsächlich&von&Zeit7&und&Kostendruck& bestimmten& Wettbewerbsfähigkeit,& sind& optimale& Prozesse& und& effiziente& IT7Strukturen& oft& der& entscheidende& Vorteil,& welcher& unseren& Kunden& ihre&Favoritenrolle&sichert.& &