DEVOPS

208 Aufrufe

Veröffentlicht am

DevOps bezeichnet eine Ansammlung von Maßnahmen um die in vielen, insbesondere größeren, Unternehmen getrennt organisierten Softwareentwicklungs- (Development, Dev) und Softwarebetriebs-Teams (Operations, Ops) zu einer stärkeren Kollaboration sowie Prozess-Automatisierung zu führen.

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
208
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
4
Aktionen
Geteilt
0
Downloads
2
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

DEVOPS

  1. 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. 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.& &
  3. 3. 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& & & &

×