Download - DevOps in der Praxis
DevOps in der Praxis
24.11.2015
Alexander Pacnik
Einführung... DevOps – Versuch einer Definition
2
Alexander Pacnik
IT Engineering & Operations
Project Management
inovex GmbH
Einführung... DevOps – Versuch einer Definition
3
„Maßnahmen, um die Bruchstellen zwischen den Silos Entwicklung und IT-Betrieb
aufzulösen, in dem gemeinsame Prozesse, Tools, Vokabeln und
Kommunikationswege aufgebaut werden.”
“Bei DevOps geht es um Kultur einer Organisation.”
Einführung... Hype Cycle – DevOps nur ein neues Thema für 2016?
4
DevOps
Cloud
Continuous Delivery
Agil
Scrum
XaaS
Microservice
...
Zeit
Sich
tbar
keit
Trigger
Höhepunkt der Erwartungen
Desillusionierung
Aufklärung
Produktiver Einsatz
Übersicht... die Entstehungsgeschichte der Veränderung
5
Veränderung der Umwelt Veränderung der Arbeitsweise
Produktqualität
Innovation
Flexibilität
1. Organisation: vom funktionalen Silo zum
inter-disziplinären Scrum-Team
2. Automatisierung: von manuellen Deployments zu Continuous Delivery
3. Infrastruktur: von Hardware zu
Cloud & XaaS
4. Applikation: vom Monolith zu Microservice
4
Die Organisation... und wenn meine Organisation nicht in einem solchen Kontext entstanden ist?
6
Kriterien für eine Performance-orientierte Organisation
‣ Empirisches Vorgehen als Basis
‣ Gemeinsam Verantwortung übernehmen setzt Vertrauen voraus
‣ Freiwillige Informationsverteilung, um gemeinsames Wissen aufzubauen
‣ Fehleranalyse, um aus Fehlern zu lernen statt Schuldige zu finden
‣ Offenheit für Veränderung
Die Organisation... wie Scrum bei der Veränderung helfen kann
7
‣ definierte Rollen, Artefakte, Meetings schaffen Stabilität
‣ Kontrolle durch regelmäßige Lieferung und Feedback
‣ Selbstorganisation und Eigenverantwortlichkeit durch das Pull-Prinzip
‣ Setzt Verantwortungs-delegation an die Teams voraus
Product Backlog Sprint Backlog Lauffähige Software
Sprint
30 Tage
24hSprint Planning
Daily Planning
Die Organisation... wie empirisches Vorgehen bei der Veränderung helfen kann
8
‣ Empirisches Vorgehen nach
dem Deming-Cycle
‣ Selbstorganisation und
Eigenverantwortlichkeit
durch das Pull-Prinzip
Zeit
Qu
alit
ät
Check
ActPlan
Do
Check
ActPlan
Do
Die Organisation... die funktional aufgeteilte Organisation
9
‣ Funktionale Trennung nach
‣ planen
‣ entwickeln
‣ betreiben
‣ verkaufen
PO / PMIT Betrieb
Entwicklung Design
Marketing
betreibenerstellen
verkaufen
Architektur
planen
Die Organisation... DevOps und die Auswirkungen auf die Kommunikation
10
‣ Microservices und
Automatisierung verwischen die
Grenzen zwischen Entwicklung,
Betrieb und Architektur
‣ Kommunikation und Befähigung
rund um das Produkt sind
entscheidend
PO / PMIT PlattformProvider
DevOps Design
Marketing
Planen, Erstellen,betreiben verkaufen
Direkte KommunikationSelf-Service
Die Organisation... am Beispiel dm-drogerie markt
11
‣ Zentrale IT, die Standardkomponenten und Plattform verantwortet
‣ Einführung eines Linux Teams, das Linux Dienste als Self-Service anbietet
‣ IT Ingenieure, die zusammen mit der Entwicklung arbeiten
‣ Gemeinsame Meetings
‣ Kurze Kommunikationswege (kritischer Erfolgsfaktor)
Übersicht... die Entstehungsgeschichte der Veränderung
12
Veränderung der Umwelt Veränderung der Arbeitsweise
Produktqualität
Innovation
Flexibilität
2. Automatisierung: von manuellen Deployments zu Continuous Delivery
3. Infrastruktur: von Hardware zu
Cloud & XaaS
4. Applikation: vom Monolith zu Microservice
1. Organisation: vom funktionalen Silo zum
inter-disziplinären Scrum-Team
11
Die Automatisierung... und wenn meine Organisation nicht in einem solchen Kontext entstanden ist?
13
‣ Was passiert mit zentralen, effizienzorientierten Change Prozessen?
‣ Was passiert mit zentralen, effizienzorientierten QA Prozessen?
‣ Was passiert mit zentralen, effizienzorientierten Automatisierungslösungen?
Die Automatisierung... worum es bei Continuous Delivery geht
Quelle: http://de.wikipedia.org/wiki/Conti nuous_Deliv ery 14
‣ „Continuous Delivery (CD) bezeichnet eine Sammlung von Techniken,
Prozessen und Werkzeugen, die den Softwarelieferprozess verbessern.“ *
Die Automatisierung... automatische Prozesse
15
Methodik Continuous Integration Continuous Delivery Continuous Deployment DevOps
Automatisierung Build Integrate A-Test UAT Release Monitor Promote Infra-struktur
Deploy toProduction Betrieb
‣ Automatisierung aller Prozesse, um Fehler zu vermeiden
‣ Automatisierte Auslieferung der Applikation und Umgebungen
‣ Abbilden aller (nicht)funktionaler Anforderungen als Tests
‣ schnelles Feedback (für Entwicklung, Produktmanagement,
Operations)
‣ Ziel: Möglichkeit täglich statt „nur“ alle 14 Tage Software auszuliefern
Die Automatisierung... Herausforderungen für das Testen
Quelle: Agile Testing 16
‣ Häufige Deployments machen
automatisierte Tests notwendig
‣ Umdenken erforderlich, Testen ist nicht
Aufgabe von Technik- oder Fachseite,
sondern eine gemeinsame Aufgabe.
Auswahl der Tools oft schwierig.
Funktionale Tests (Story Tests)
User AcceptanceTesting
Komponenten Tests
Nicht-funktionale Tests
(Lasttests)
Die Automatisierung... Selbsteinschätzung
17
‣ Wie lange dauert es eine Zeile Code zu deployen?
‣ Kann ich historische Umgebungen wieder aufbauen (Versionsstände, Daten)?
‣ Kann ich einzelne Elemente verändern?
‣ Kann ich auf eine Version zurückspringen?
Die Automatisierung... am Beispiel dm-drogerie markt
18
Lokale Umgebung 1st: Commit Stage- Komponententests- Artefakterstellung
2nd Stage- Integrationstests
3rd Stage- Systemtests
Release- Manuelle Tests
Produktion
Self-Service Deployment
Bei Bedarf
Entwickler
Build & Code
Dev-System
VCS Repository Integrationssystem Performance Tests Fachliche Abnahme
Artefakt Repository Automatisch
Übersicht... die Entstehungsgeschichte der Veränderung
19
Veränderung der Umwelt Veränderung der Arbeitsweise
Produktqualität
Innovation
Flexibilität
2. Automatisierung: von manuellen Deployments zu Continuous Delivery
3. Infrastruktur: von Hardware zu
Cloud & XaaS
4. Applikation: vom Monolith zu Microservice
1. Organisation: vom funktionalen Silo zum
inter-disziplinären Scrum-Team
30
DevOps
20
‣ Auf den ersten Blick sind Technologien, Arbeitsweisen und Methoden
einer erfolgreichen Organisation offensichtlich.
‣ Der Versuch den Erfolg durch die Übernahme von Technologien,
Arbeitsweisen und Methoden zu kopieren ist oft nicht erfolgreich.
‣ Motivierte und befähigte Mitarbeiter sind entscheidend, da nur diese die
Technologien, Arbeitsweisen und Methoden an die Organisation und die
Umwelt anpassen können.
... Gefahr der falschen Fokussierung kennen
Vielen Dank!Alexander Pacnik
IT Engineering & OperationsProject Management
inovex GmbH
Ludwig-Erhard-Allee 6
76133 Karlsruhe
Mobil: +49 (0)173 3181 040
Mail: [email protected]
Sie möchten individuelle Beratung? Nehmen SieKontakt mit uns auf!