demos/kafka/training
2 years agoMerge der Setup-Überarbeitungen aus dem Branch 'simple-consumer' spikzettel-DEPRECATED
Kai Moritz [Thu, 11 Aug 2022 16:40:11 +0000 (18:40 +0200)]
Merge der Setup-Überarbeitungen aus dem Branch 'simple-consumer'

2 years agoCompose-Setup an das aus den Producer-Übungen angepasst
Kai Moritz [Tue, 2 Aug 2022 20:01:35 +0000 (22:01 +0200)]
Compose-Setup an das aus den Producer-Übungen angepasst

* Es wird jetzt der Rest-Producer verwendet.
* Um die Nachrichten zu erzeugen, werden die Rest-Clients verwendet.
* Ziel: Dies ist näher an dem Setup aus den Wordcount-Übungen.
* Versucht das Timing in dem README-Skript unabhängiger von Timing-Fragen
  zu machen - scheitert aber daran, dass das Skript nicht gezielt darauf
  warten kann, dass das neu angelegte Topic zur Verfügung steht.

2 years agoAsciidoc-Tags entfernt
Kai Moritz [Tue, 2 Aug 2022 19:04:16 +0000 (21:04 +0200)]
Asciidoc-Tags entfernt

2 years agoFür eine Übersichtliche Übergabe sollte CooperativeStickyAssignor aktiv sein
Kai Moritz [Tue, 2 Aug 2022 19:00:36 +0000 (21:00 +0200)]
Für eine Übersichtliche Übergabe sollte CooperativeStickyAssignor aktiv sein

* Per Default ist immer noch der RangeAssignor vorgegeben, so dass die
  Partitionen bei jedem Rebalance komplett neu zugeordnet werden.
* Um bei der Betrachtung der Effekte von Sauberem Stop vs. Kill vs. Freeze
  den Überblick behalten zu können, wurde der CooperativeStickyAssignor
  aktiviert.

2 years agoAnpassungen des Projekts/Setups aus 'simple-producer' übernommen
Kai Moritz [Mon, 1 Aug 2022 21:39:56 +0000 (23:39 +0200)]
Anpassungen des Projekts/Setups aus 'simple-producer' übernommen

2 years agoImplementierung des Consumers aus 'first-contact' vereinfacht
Kai Moritz [Mon, 1 Aug 2022 20:55:48 +0000 (22:55 +0200)]
Implementierung des Consumers aus 'first-contact' vereinfacht

* Code für ordentliches Herunterfahren so weit wie möglich vereinfacht.
* Dabei den Code möglichst eng an die Producer-Implementierung angelehnt.

2 years agoAngleichungen zwischen Producer/Consumer
Kai Moritz [Mon, 1 Aug 2022 21:07:55 +0000 (23:07 +0200)]
Angleichungen zwischen Producer/Consumer

2 years agoFehlerchen in Logmeldung korrigiert
Kai Moritz [Mon, 1 Aug 2022 20:57:08 +0000 (22:57 +0200)]
Fehlerchen in Logmeldung korrigiert

2 years agoMöglichst einfach gehaltener technisch vollständiger Producer
Kai Moritz [Wed, 27 Jul 2022 08:36:43 +0000 (10:36 +0200)]
Möglichst einfach gehaltener technisch vollständiger Producer

* Unterschiede zu dem Producer aus `first-contact`:
** Der Producer erzeugt endlos alle ca. 500ms eine Nachricht.
** Der Producer beendet sich ordentlich, wenn STRG-C gedrückt wird.
** Der Producer wird auch als Docker-Image gebaut
* Das Compose-Setup an das Setup aus den vorhergehenden Übungen
  angegelichen.

2 years agoMerge der überarbeiteten Compose-Konfiguration ('endless-stream-consumer') scaling
Kai Moritz [Sat, 23 Jul 2022 11:28:38 +0000 (13:28 +0200)]
Merge der überarbeiteten Compose-Konfiguration ('endless-stream-consumer')

2 years agoCompose-Konfiguration unabhängig von Default-Konfiguration gemacht
Kai Moritz [Sat, 23 Jul 2022 11:26:29 +0000 (13:26 +0200)]
Compose-Konfiguration unabhängig von Default-Konfiguration gemacht

* Damit Instanzen parallel über die IDE (mit voreingestelltem Default-Port)
  und Compose gestartet werden können, wurden den einzelnen Komponenten
  (Producer, Consumer etc.) jeweils unterschiedliche explizite
  Default-Ports zugewiesen.
* Dies führt leicht zu fehlern, in den Compose-Setups, da dort i.d.R.
  Port-Mappings für die gestarteten Instanzen definiert werden.
* Daher werden die Compose-Setups jetzt so umgestellt, dass sie den
  einkompilierten Default-Port der Komponenten explizit mit dem Port `8080`
  überschreiben, so dass alle Komponenten _innerhalb_ von Compose
  einheitlich (und so wie bei Spring-Boot standard) über `8080` ansprechbar
  sind.

2 years agoMerge der Upgrades für Confluent/Spring-Boot (Branch 'endless-stream-consumer')
Kai Moritz [Sat, 23 Jul 2022 09:08:25 +0000 (11:08 +0200)]
Merge der Upgrades für Confluent/Spring-Boot (Branch 'endless-stream-consumer')

2 years agoMerge der Upgrades für Confluent/Spring-Boot (Branch 'first-contact')
Kai Moritz [Sat, 23 Jul 2022 08:37:24 +0000 (10:37 +0200)]
Merge der Upgrades für Confluent/Spring-Boot (Branch 'first-contact')

2 years agoUpgrade von Spring Boot und den Confluent-Kafka-Images
Kai Moritz [Fri, 22 Jul 2022 18:04:07 +0000 (20:04 +0200)]
Upgrade von Spring Boot und den Confluent-Kafka-Images

* Upgrade der Kafk-Images von Confluent 7.0.2 auf 7.1.3
** Unterstützt Kafka 3.1.x (siehe https://docs.confluent.io/platform/current/installation/versions-interoperability.html[Versions-Matrix])
* Upgrade für Spring Boot von 2.6.5 auf 2.7.2
** Enthält Kafka: 3.1.1
** Enthält Spring Kafka: 2.8.8

2 years agoHealthIndicator implementiert: Implementierung selbst vergessen :/
Kai Moritz [Sat, 30 Apr 2022 09:22:41 +0000 (11:22 +0200)]
HealthIndicator implementiert: Implementierung selbst vergessen :/

2 years agoHealthIndicator implementiert
Kai Moritz [Sun, 10 Apr 2022 19:56:37 +0000 (21:56 +0200)]
HealthIndicator implementiert

2 years agoshutdown-Endpoint aktiviert
Kai Moritz [Sun, 10 Apr 2022 18:55:56 +0000 (20:55 +0200)]
shutdown-Endpoint aktiviert

2 years agoInformationen zur Kafka-Konfiguration im info-Endpoint sichtbar gemacht
Kai Moritz [Sun, 10 Apr 2022 18:55:42 +0000 (20:55 +0200)]
Informationen zur Kafka-Konfiguration im info-Endpoint sichtbar gemacht

2 years agoInformationen zur Java-Umgebung im info-Endpoint aktiviert
Kai Moritz [Sun, 10 Apr 2022 18:55:13 +0000 (20:55 +0200)]
Informationen zur Java-Umgebung im info-Endpoint aktiviert

2 years agoDas Git-Commit-Id-Plugin generiert eine git.properties
Kai Moritz [Sun, 10 Apr 2022 18:27:49 +0000 (20:27 +0200)]
Das Git-Commit-Id-Plugin generiert eine git.properties

2 years agoDas Spring-Boot-Maven-Plugin generiert Build-Info
Kai Moritz [Sun, 10 Apr 2022 18:25:28 +0000 (20:25 +0200)]
Das Spring-Boot-Maven-Plugin generiert Build-Info

2 years agoDefault-Konfiguration überarbeitet
Kai Moritz [Sun, 10 Apr 2022 17:52:09 +0000 (19:52 +0200)]
Default-Konfiguration überarbeitet

* Eine über die IDE bzw. Maven gestartete Instanz soll klar als solche
  erkennbar sein (`client.id` = DEV), darf dafür aber im Compose-Setup
  mitspielen (`group.id` = my-group).
* Bisher gab es häufig Port-Konflikte, wenn über die IDE bzw. über Maven
  parallel zu einem Compose-Setup eine Instanz gestartet wurde. Daher wird
  jetzt hier explizit auf einen abweichenden Port (8881) ausgewichen.
* Im Compose-Setup auch den neuen Port für den Producer übernommen

2 years agoFalschen Status-Code bei start/stop-Fehler korrigiert
Kai Moritz [Sun, 10 Apr 2022 17:49:44 +0000 (19:49 +0200)]
Falschen Status-Code bei start/stop-Fehler korrigiert

2 years agoVerständliche Fehlermeldungen für DriverController
Kai Moritz [Fri, 25 Mar 2022 14:20:00 +0000 (15:20 +0100)]
Verständliche Fehlermeldungen für DriverController

2 years agoThread-Synchronisation bei start/stop überarbeitet
Kai Moritz [Sun, 10 Apr 2022 16:58:16 +0000 (18:58 +0200)]
Thread-Synchronisation bei start/stop überarbeitet

2 years agoFehlerbehandlung in EndlessConsumer.destroy() korrigiert
Kai Moritz [Sat, 9 Apr 2022 16:50:43 +0000 (18:50 +0200)]
Fehlerbehandlung in EndlessConsumer.destroy() korrigiert

2 years agoValidierung erfolgt über spring-boot-starter-validation
Kai Moritz [Sat, 9 Apr 2022 07:52:59 +0000 (09:52 +0200)]
Validierung erfolgt über spring-boot-starter-validation

2 years agoService soll endlos laufen
Kai Moritz [Mon, 4 Apr 2022 15:50:02 +0000 (17:50 +0200)]
Service  soll endlos laufen

2 years agoBandwurmkommando für die Spikzettel-Übung ergänzt
Kai Moritz [Mon, 4 Apr 2022 15:24:56 +0000 (17:24 +0200)]
Bandwurmkommando für die Spikzettel-Übung ergänzt

2 years agoMerge des Upgrades der Confluent-Images auf 7.0.2
Kai Moritz [Sun, 3 Apr 2022 06:24:19 +0000 (08:24 +0200)]
Merge des Upgrades der Confluent-Images auf 7.0.2

2 years agoMerge des Upgrades der Confluent-Images auf 7.0.2
Kai Moritz [Sun, 3 Apr 2022 06:18:08 +0000 (08:18 +0200)]
Merge des Upgrades der Confluent-Images auf 7.0.2

2 years agoUpgrade der Images von Confluent 6.2.0 auf 7.0.2
Kai Moritz [Sun, 3 Apr 2022 06:15:30 +0000 (08:15 +0200)]
Upgrade der Images von Confluent 6.2.0 auf 7.0.2

2 years agoSetup für die Vorführung in der Einführung vereinfacht
Kai Moritz [Fri, 1 Apr 2022 14:43:20 +0000 (16:43 +0200)]
Setup für die Vorführung in der Einführung vereinfacht

* Nur Übergabe zwischen zwei Consumern
* Nur geregelte Übergabe
* Scaling up/down wird gezeigt

2 years agoSetup für die Übung "Scaling" aus der DevOps-Schulung bei Signal Iduna
Kai Moritz [Fri, 1 Apr 2022 14:18:11 +0000 (16:18 +0200)]
Setup für die Übung "Scaling" aus der DevOps-Schulung bei Signal Iduna

* Siehe tag `signal-iduna-2021-11-devops` im Schulungs-Repo

2 years ago`auto.offset.reset` konfigurierbar gemacht
Kai Moritz [Fri, 1 Apr 2022 09:44:22 +0000 (11:44 +0200)]
`auto.offset.reset` konfigurierbar gemacht

2 years agoFehler bei der Erzeugung des KafkaConsumer werden nicht mehr verschluckt
Kai Moritz [Fri, 1 Apr 2022 09:40:14 +0000 (11:40 +0200)]
Fehler bei der Erzeugung des KafkaConsumer werden nicht mehr verschluckt

* Beim Erzeugen der Properties-Instanz können Exceptions fliegen
* Beim Erzeugen der KafkaConsumer-Instanz können Exception fliegen
* Daher wurden diese Schritte in den try/catch-Block verlegt
* Neben der Nachricht wird jetzt auch der ganze Stack-Trace gelogged
* Da die Erzeugung des KafkaConsumer jetzt im try/catch-Block geschieht,
  wird der EndlessConsumer im Fehlerfall korrekt als beendet markiert

2 years agoEndless Consumer: a simple consumer, implemented as Spring-Boot-App
Kai Moritz [Thu, 31 Mar 2022 17:49:28 +0000 (19:49 +0200)]
Endless Consumer: a simple consumer, implemented as Spring-Boot-App

2 years agoSimpleConsumer in EndlessConsumer umbenannt
Kai Moritz [Fri, 1 Apr 2022 08:10:42 +0000 (10:10 +0200)]
SimpleConsumer in EndlessConsumer umbenannt

* Ohne die Umbenennung _vor_ der Veränderung würde die Versions-Historie
  der Klasse verloren gehen!

2 years agoREADME.sh verwendet den cli-Service für Kommandos
Kai Moritz [Fri, 1 Apr 2022 09:56:34 +0000 (11:56 +0200)]
README.sh verwendet den cli-Service für Kommandos

2 years agoFälschlich hartkodiertes Topic gegen Variable getauscht
Kai Moritz [Fri, 25 Mar 2022 14:27:50 +0000 (15:27 +0100)]
Fälschlich hartkodiertes Topic gegen Variable getauscht

2 years agoCode reorganisiert, um Änderungen vergleichbarer zu machen
Kai Moritz [Fri, 25 Mar 2022 10:19:03 +0000 (11:19 +0100)]
Code reorganisiert, um Änderungen vergleichbarer zu machen

2 years agoUpgrade für Spring Boot 2.6.0 -> 2.6.5
Kai Moritz [Fri, 25 Mar 2022 08:25:54 +0000 (09:25 +0100)]
Upgrade für Spring Boot 2.6.0 -> 2.6.5

* Kafka: 3.0.1
* Spring Kafka: 2.8.4

2 years agoFirst Contact: Simple Producer & Consumer
Kai Moritz [Tue, 14 Dec 2021 17:55:02 +0000 (18:55 +0100)]
First Contact: Simple Producer & Consumer