CD in the box
Jan RümenapfMatthias Zieger
Zahlen, Daten, Fakten_
codecentric im Überblick
1. 2005 gegründetes Unternehmen aus Solingen mit über 370 Mitarbeitern an 14 Standorten in vier europäischen Ländern.
2.Experten für agile Software Entwicklung und moderne Technologien.3. 4+1-Modell mit einem Tag pro Woche für Weiterbildung der
Mitarbeiter:
2
Technologie-Blog mit mehr als 2 Mio Besuchern im Jahr
2015
Mehr als 100 Publikationen in
Zeitschriften im Jahr 2015
Mehr als 100 Vorträge auf
internationalen Konferenzen im
Jahr 2015
Eigene Fachzeitschrift „Der
Softwerker“
Gründer der Cloud-Dokumentenplattform
CenterDevice GmbH und der Performance-Monitoring-
Lösung Instana Inc.+
▪ Continuous Delivery and DevOps pioneer, authority and technology leader
▪ Global team in US, Europe & APAC
▪ Consistently recognized byleading industry analysts
Über XebiaLabs
G l o b a l L e a d e r s D e l i v e r S o f t w a r e w i t h X e b i a L a b s
CD – Continuous Delivery
4
BetriebFeedback
PRODUCTBACKLOG
MonitorImplement
5
EntwicklungCode & Test
BusinessIdeen / Anforderungen
OPSBACKLOG
Kollaboration
CD im Rahmen einer DEVOPS Initiative
Warum Continuous Delivery?_
Beschleunigter und automatisierter Prozess:
▪Höhere Wertschöpfung▪Bessere Release-Qualität▪Reduzierte Entwicklungskosten▪Produktive Kollaboration▪Erhöhte Kundenzufriedenheit
6
Cha
nge
Time
# Deployments / T
Bugs
Cos
t
# Deployments
Time
Prof
itIn
vesm
.
Puppet
TP
AQ
CONTINUOUS INTEGRATION
AUTOMATED TEST
AUTOMATED PROVISIONING
• Improve quality• Increase predictability
AUTOMATEDDEPLOYMENT
• Release insight• Reduce release time• Reduce errors• Less downtime• Cost reduction
• Improve reliability• Repeatable• Reduce Cost• Increase speed
• Reduce costs• Increase speed• Reduce risk• Reduce Cost
AGILE PROCESS
• Deliver fast• Deliver often• Do the right things
CONTINUOUS DELIVERY: “REMOVE (MANUAL) WASTE FROM YOUR SOFTWARE DELIVERY PROCESS"
Bestandteile einer CD-Pipeline_
7
Unser Experiment
8
CD in a Box – Experiment Setup und Prämissen_
9
CD in a (cheap) Box ~ 200 €• einfache und günstige Hardware• Mix aus Open Source und Enterprise Software
Komplette Pipeline
Docker basierend• Docker auf Raspberry
CD in a Box – Experiment Setup und Prämissen_
Für Messen/ Meetups
Nicht Produktiv (als mögl. nächste Schritte)
• Kein Failover/HA Setup/Cluster Management• Kein LDAP/AD, einfaches Standalone Netzwerk
10
Demo
11
Wie geht es jetzt weiter?
12
Skalierungsmöglichkeiten
13
Jenkins
Teamcity,Bamboo
Nexus
Docker Registry
XLDeploy
Ansible,Chef
Deploy
Docker - Kubernetes,
Mesos,Jboss,
Websphere
GIT
SVN
XLRelease
Jira, ( Excel, E-Mail)
Vielfalt der Möglichkeiten_
14
Rolle der Tester / Ops
15
Rolle der Tester/Ops?_
Unit-Tests
Module-TestsKomponenten-Tests
Code Analyse
Integration Tests
Oberflächen-Test
System-Tests
Gesamtsystem-TestPerformanz-Tests
Last-Test
Akzeptanz-Tests
Kompatibilitäts-TestsFach-Tests
Production
Power-On TestsSmoke-Tests
Quality Gate Quality Gate Quality Gate Quality Gate
16
Fazit
17
Einführung von CD – unsere Erfahrungen
Docker auf RasPi immer noch ein Experiment • Images auf DockerHub meist für x86• viel Handarbeit notwendig• Geschwindigkeit auf RasPi 3 für Demos OK• NICHT: Write Once / Run Anywhere
Beispiel: Node Versionen ARM vs x86, nexus, nativ anteile
Hauptaufwand: Stabile ARM Docker images, java, tools, Frameworks
18
Einführung von CD – unsere Erfahrungen
Antipattern:• Einführung von Continuous Delivery via Wasserfall-Methodik• An BigBang Theorie glauben
Besser:• erfolgreiche Inseln (CI, Testautomation) stärken• kontinuierlich verbessern• Erfolge feiern
19
Weitere Informationen zum Thema
20
BetriebFeedback
PRODUCTBACKLOG
MonitorImplement
Technische Umsetzung_
22
EntwicklungCode & Test
BusinessIdeen / Anfiorderungen
OPSBACKLOG
Kollaboration_
VM vs Docker Container
23
https://www.docker.com/whatisdocker/
https://github.com/lukaspustina/docker-demo