Möchten Sie mit Ihrem Team teilnehmen? Profitieren Sie von unseren Gruppenrabatten! Schreiben Sie an events@dpunkt.de

01.01.1970, 01:00 Uhr

Evolutionäre Continuous Delivery

Continuous Delivery ist längst kein Hype Thema mehr. Trotzdem kommen regelmäßig immer neue und "noch bessere" CD-Tools auf den Markt. Das Kerngeschäft der meisten Unternehmen ist es aber nicht, die CD-Architektur der Softwareteams im Jahresrhythmus infrage zu stellen und mit viel Aufwand neu zu implementieren.

In diesem Workshop geht es darum, die Kern-Prinzipien von Continuous Delivery Pipelines herauszuarbeiten und sie mit einer evolutionär "mitwachsenden" Continuous-Delivery-Architektur umzusetzen. Die Wahl der Tools muss dabei immer zu den realen Rahmenbedingungen im Unternehmenskontext passen und gleichzeitig aber einen Pfad zur kontinuierlichen Weiterentwicklung vorzeichnen, um im stressigen Projektalltag auch tatsächlich kontinuierlich weiter entwickelt werden zu können.

Neben dem praktischen Erarbeiten einer CD-Pipeline mit bewährten Tools wie Gitlab, Jenkins, Docker, Chef/ESXi Server/Kubernetes geht es auch um den Erfahrungsaustausch zwischen Teilnehmenden und Trainer, um individuelle Herausforderungen im realen Unternehmenskontext zu diskutieren und Implementations- bzw. Weiterentwicklungspfade zu skizzieren.

Vorkenntnisse

Grundlegende Kenntnisse von Continuous Delivery und den dafür gängigen Tools

Lernziele

  • praktisches Erarbeiten einer CD-Pipeline
  • Einsatz von Tools wie Gitlab, Jenkins, Docker, Chef/ESXi Server/Kubernetes
  • Entwurf einer an den Unternehmenskontext angepassten, "mitwachsenden" Continuous-Delivery-Architektur

 

Agenda

09:00 Begrüßung & Agenda

Die Prinzipien hinter CD
  • Was will man mit CD erreichen?
  • Was sind die Kern Prinzipien hinter CD?
  • Was sind die Kernelemente einer CD Pipeline? Welche Praktiken haben sich etabliert?

Implementation einer CD Pipeline - 1st Stage
  • Technik für Hands-on Sessions
  • Der Anschluss ans Sourcecodemanagement System, Branching-Modelle und ihre Auswirkung auf CI/CD
  • Implementation einer Commitstage mit Statischer Codeanalyse, Unittesting, Dependency Auflösung und Build/Compile
  • Paketieren von Binär-Artefakten, Möglichkeiten, Vor- und Nachteile, Sicherheitsaspekte

10:50 – 11:10 Uhr Pause

  • Zielumgebungen und Deployment
  • Herausforderung Uniforme Zielumgebung
  • Cleveres Konfigurationsmanagement
  • Benannte vs. Anonyme Zielumgebungen
  • Deploymenttools - von manuell bis deklarativ, von Bashskripting bis K8s Flux Operator
  • Implementation eines Deployments und passender Smoketests

12:30 - 13:45: Mittagspause

Implementation einer CD Pipeline - 2nd Stage
  • Deployment aus der Pipeline heraus
  • Vorbereitung von Zielumgebungen, Datenbank Setup, Testdaten Bereitstellung
  • Diskussion Integrationstests/Regressiontests, UI Tests, Performance vs. Loadtests
  • Implementation einer Integrationstest-Stage

15:10 - 15:30: Pause

  • Releasing und Deployment auf Production
  • Continuous Deployment vs. Continuous Delivery
  • Vor- und Nachteile von üblichen Release Praktiken
  • Automated Monitoring, Instrumentation, Tests in Production
  • Classic Deployment vs. GitOps Approach
  • Implementation eines One-Button-Push Deployments
  • CD Dashboards als zentraler Informations- und Kommunikationshub
  • Zusammenfassung und Fazit
Ca. 16:50: Ende

Technische Anforderungen:

  • macOs/Linux OS: Bash Cmdline, VSCode, ssh-Client, Docker, Chrome Browser
  • Windows 10: Gitbash, putty, VSCode, Docker, Chrome Browser

 

Speaker

 

Alexander Birk
Alexander Birk unterstützt seit über 20 Jahren Software-Teams als Entwickler, Berater, Trainer und Coach. Seit über 10 Jahren bringt er dabei Containerisierung und deren Vorläufer, Continuous "Everything", Cloud und zuletzt K8s & Friends mit in die jeweiligen Projekte. Als passionierter Softwareentwickler treiben ihn derzeit Themen wie evolutionäre Softwarearchitektur, eventgetriebene Systeme und Domain-driven Design um. Seine zweite "Identität" als ausgebildeter Coach und Leadership-Development-Trainer hilft dabei (manchmal) die sozial-organisatorischen Herausforderungen von Softwareentwicklung in Teams aus neuen Perspektiven zu sehen und anzugehen.

Sponsoren

Platin
New Relic
QAware
Microsoft Azure
Gold
Palo Alto Networks
Elastic
SNYK
codecentric

CLC-Newsletter

Ihr möchtet über die Continuous Lifecycle
auf dem Laufenden gehalten werden?

 

Anmelden