Eine ausführbare Anwendung ist noch kein betriebssicherer Containerdienst. Image-Inhalt, Benutzerrechte, JVM-Speicher, Startverhalten, Sonden, Konfiguration und Datenbankänderungen müssen als zusammenhängendes System behandelt werden.
Das Seminar erstellt aus einem geprüften Grails-Artefakt ein schlankes Laufzeit-Image und führt es in eine Kubernetes-nahe Zielumgebung über. Rollout und Rückfall werden nicht nur beschrieben, sondern praktisch getestet.
Inhaltsverzeichnis
- Zielgruppe
- Voraussetzungen
- Lernziele
- Modul 1: Buildvarianten, Konfiguration und Artefakte
- Modul 2: Container-Image für Grails-Anwendungen
- Modul 3: Laufzeitkonfiguration und Ressourcensteuerung
- Modul 4: Externe Konfiguration und Secret-Management
- Modul 5: Deployment in Kubernetes
- Modul 6: Health, Metriken und technische Beobachtbarkeit
- Modul 7: Release-, Datenbank- und Rückrollstrategie
- Modul 8: Laufzeit-, Speicher- und Nebenläufigkeitsfehler
- Praxisprojekt und Übungen
- Arbeitsweise
Zielgruppe
Grails-Entwickler, DevOps- und Plattform-Teams, Cloud-Architekten sowie Administratoren mit Containererfahrung.
Voraussetzungen
Grails- oder Spring-Boot-Grundkenntnisse, grundlegende Docker-Kenntnisse und Verständnis für Netzwerk, Prozesse und YAML-Konfiguration.
Lernziele
- Ein schlankes und nicht privilegiertes Container-Image erstellen.
- JVM- und Container-Ressourcen konsistent konfigurieren.
- Kubernetes-Sonden, Konfiguration und Skalierung sachgerecht einsetzen.
- Health, Metriken und Logs in den Plattformbetrieb integrieren.
- Release-, Datenbank- und Rückrollabläufe praktisch beherrschen.
Modul 1: Buildvarianten, Konfiguration und Artefakte
Lokale Entwicklung, Tests und Produktion erhalten klar getrennte, reproduzierbare Buildpfade.
- Schritt 1: Eigenschaften und Umgebungsparameter vom eigentlichen Build trennen.
- Schritt 2: Ausführbares Archiv und optionales Container-Artefakt erzeugen.
- Schritt 3: Buildinformationen und Versionskennzeichnung einbetten.
- Schritt 4: Artefakte auf Vollständigkeit und unbeabsichtigte Inhalte prüfen.
Modul 2: Container-Image für Grails-Anwendungen
Ein schlankes, reproduzierbares und nicht privilegiertes Laufzeit-Image wird aus dem geprüften Build-Artefakt erzeugt.
- Schritt 1: Build- und Laufzeitphase voneinander trennen.
- Schritt 2: JVM, Benutzerrechte, Dateisystem und Portfreigaben restriktiv konfigurieren.
- Schritt 3: Konfiguration und Secrets erst zur Laufzeit zuführen.
- Schritt 4: Image lokal starten, Healthcheck prüfen und Größe sowie Inhalt kontrollieren.
Modul 3: Laufzeitkonfiguration und Ressourcensteuerung
JVM und Container werden gemeinsam auf Speichergrenzen, Startverhalten und sauberes Beenden abgestimmt.
- Schritt 1: Heap, Metaspace und Container-Grenzen konsistent konfigurieren.
- Schritt 2: Graceful Shutdown und maximale Beendigungszeit prüfen.
- Schritt 3: Temporäre Dateien, Schreibpfade und Zeitzone kontrollieren.
- Schritt 4: Fehlstarts und Ressourcenengpässe mit reproduzierbaren Tests untersuchen.
Modul 4: Externe Konfiguration und Secret-Management
Betriebswerte werden außerhalb des Anwendungsartefakts verwaltet und kontrolliert in die Laufzeit eingebracht.
- Schritt 1: Konfigurationsquellen und Prioritäten nachvollziehen.
- Schritt 2: Dateien, Umgebungsvariablen und Plattform-Secrets geeignet kombinieren.
- Schritt 3: Sensible Werte in Logs, Fehlerausgaben und Diagnosen maskieren.
- Schritt 4: Konfigurationsänderungen versionieren, freigeben und rückgängig machen.
Modul 5: Deployment in Kubernetes
Die Anwendung wird mit klaren Betriebsverträgen, Sonden und konfigurierbaren Ressourcen in einem Cluster bereitgestellt.
- Schritt 1: Deployment, Service und Konfigurationsobjekte definieren.
- Schritt 2: Liveness-, Readiness- und Startup-Probes passend konfigurieren.
- Schritt 3: Requests, Limits und horizontale Skalierung auf Messwerte stützen.
- Schritt 4: Rolling Update, Rückrollung und Unterbrechungsverhalten praktisch testen.
Modul 6: Health, Metriken und technische Beobachtbarkeit
Betriebszustand und Leistung werden über definierte Signale statt über Vermutungen bewertet.
- Schritt 1: Health- und Readiness-Informationen fachlich sinnvoll zusammenstellen.
- Schritt 2: Metriken für HTTP, JVM, Datenbankpool und Geschäftsprozesse erfassen.
- Schritt 3: Logs, Metriken und Traces über Korrelationsdaten verbinden.
- Schritt 4: Warnschwellen und Dashboards aus Servicezielen ableiten.
Modul 7: Release-, Datenbank- und Rückrollstrategie
Anwendungs-, Konfigurations- und Datenbankänderungen werden als zusammenhängender Release-Prozess geplant.
- Schritt 1: Vorwärts- und Rückwärtskompatibilität zwischen Versionen prüfen.
- Schritt 2: Schemaänderungen und Anwendungsauslieferung zeitlich koordinieren.
- Schritt 3: Blue-Green-, Rolling- oder gestufte Einführung bewerten.
- Schritt 4: Rückrollentscheidung, Datensicherung und Verantwortlichkeiten dokumentieren.
Modul 8: Laufzeit-, Speicher- und Nebenläufigkeitsfehler
Fehler unter Last werden mit Thread-, Heap- und Verbindungsdaten eingegrenzt.
- Schritt 1: Thread Dumps und blockierte Aufrufe auswerten.
- Schritt 2: Heap-Verbrauch, Leaks und übermäßige Objektmengen untersuchen.
- Schritt 3: Datenbankpool, Timeouts und externe Abhängigkeiten korrelieren.
- Schritt 4: Behebung mit einem gezielten Regressions- oder Lasttest absichern.
Praxisprojekt und Übungen
Eine Grails-Anwendung wird als Container gebaut, lokal unter Ressourcenbegrenzung geprüft und anschließend mit Deployment, Service, Konfiguration und Probes bereitgestellt. Ein fehlerhafter Rollout wird erkannt und kontrolliert zurückgesetzt.
Arbeitsweise
Kurze fachliche Einführungen wechseln mit Demonstrationen, angeleiteten Implementierungsschritten, selbstständigen Übungen und gemeinsamer Auswertung. Entscheidungen werden im Code, in Tests und in einer knappen technischen Dokumentation nachvollziehbar festgehalten.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Grails-Entwickler, DevOps- und Plattform-Teams, Cloud-Architekten sowie Administratoren mit Containererfahrung. |
| Voraussetzungen: | Grails- oder Spring-Boot-Grundkenntnisse, grundlegende Docker-Kenntnisse und Verständnis für Netzwerk, Prozesse und YAML-Konfiguration. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
