Einstellungen

Wir respektieren Ihr Recht auf Privatsphäre. Sie können sich dafür entscheiden, einige Arten von Cookies nicht zuzulassen. Ihre Cookie-Einstellungen gelten für unsere gesamte Website.

 

Wir verwenden Cookies auf unserer Website, um unseren Datenverkehr zu analysieren und damit ihre Usererfahrung zu verbessern. Diese Cookies sind aber nicht notwendig, um unsere Seiten korrekt abzurufen.  Datenschutzerklärung.

Testgetriebene Entwicklung von Kubernetes Operators mit Testcontainern

Deutsch
Dieser Vortrag wird auf Deutsch gehalten. / This Talk will be held in German.

Die Entwicklung von Kubernetes Operators in Java ist derzeit eher die Ausnahme als die Regel. Meist kommt stattdessen Go zum Einsatz – häufig wegen des besseren Toolings und umfangreicheren Testing-Supports.

Die Bibliothek kindcontainer auf Basis des Test-Frameworks Testcontainers schafft in Sachen testgetriebene Entwicklung von Operators und Controllers in Java Abhilfe.

Egal, ob nur die Control-Plane zum Testen benötigt wird oder doch die Interaktion mehrerer Operatoren bis zur Verfügbarkeit der Workloads geprüft werden muss – mit Hilfe von isoliert laufenden Kubernetes-Instanzen in Docker-Containern ist eine zuverlässige und einfach zu verwendende Teststrategie auch in JVM-Umgebungen kein Wunschdenken.

  • Teilnehmende der Session sollten sich in der Java-Welt zuhause fühlen und mit dem Operator-Pattern vertraut sein.
  • Auch das Deployment einer einfachen Kubernetes-Anwendung mit RBAC und Ingress sollte nicht für große Überraschungen sorgen.

Der Vortrag beschreibt zunächst die Herausforderungen beim testgetriebenen Entwickeln von Kubernetes-Operatoren. Mit Live-Coding-Beispielen wird gezeigt, wie mit Testcontainers isolierte Kubernetes-Instanzen aus JUnit-Tests heraus gestartet und in Testfällen verwendet werden. Auch weiterführende Themen wie private Docker-Registries mit eigener TLS-Infrastruktur und Zugriff auf Dienste im Test-Container via Ingress werden beleuchtet.

Alex Stockinger
Alex Stockinger
ist Software-Engineer mit mehr als zehn Jahren Erfahrung. In früheren Jahren vorwiegend in der Java-Welt des Beratungsgeschäfts zu finden, hat sich sein Schwerpunkt in letzter Zeit mehr und mehr in Richtung DevOps und Cluster-Orchestrierung bewegt. Seit letztem Jahr verbringt er bei AtomicJar seine Zeit in wechselnden Inception-Tiefen zwischen VMs, Containern und Kubernetes-Clustern.

Gold-Sponsor


 

CLC-Newsletter

Du möchtest über die CLC auf dem Laufenden gehalten werden?

Anmelden