From 7c875f58e882c5eb6cd5e63130145cc44eefe078 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Henning?= <soeren.henning@email.uni-kiel.de>
Date: Mon, 30 Jan 2023 16:53:46 +0100
Subject: [PATCH] Use Strimzi resources for Kafka topics

---
 .../uc1-beam-flink/resources/input-topic.yaml    |  9 +++++++++
 .../uc1-beam-flink-benchmark-operator.yaml       |  7 +------
 .../uc1-beam-samza/resources/input-topic.yaml    |  9 +++++++++
 .../uc1-beam-samza-benchmark-operator.yaml       |  4 +---
 .../uc1-flink/resources/input-topic.yaml         |  9 +++++++++
 .../uc1-flink/uc1-flink-benchmark-operator.yaml  |  7 +------
 .../uc1-hazelcastjet/resources/input-topic.yaml  |  9 +++++++++
 .../uc1-hazelcastjet-benchmark-operator.yaml     |  7 +------
 .../uc1-kstreams/resources/input-topic.yaml      |  9 +++++++++
 .../uc1-kstreams-benchmark-operator.yaml         |  7 +------
 .../uc2-beam-flink/resources/input-topic.yaml    |  9 +++++++++
 .../uc2-beam-flink/resources/output-topic.yaml   |  9 +++++++++
 .../uc2-beam-flink-benchmark-operator.yaml       |  8 ++------
 .../uc2-beam-samza/resources/input-topic.yaml    |  9 +++++++++
 .../uc2-beam-samza/resources/output-topic.yaml   |  9 +++++++++
 .../uc2-beam-samza-benchmark-operator.yaml       |  8 ++------
 .../uc2-flink/resources/input-topic.yaml         |  9 +++++++++
 .../uc2-flink/resources/output-topic.yaml        |  9 +++++++++
 .../uc2-flink/uc2-flink-benchmark-operator.yaml  |  8 ++------
 .../uc2-hazelcastjet/resources/input-topic.yaml  |  9 +++++++++
 .../uc2-hazelcastjet/resources/output-topic.yaml |  9 +++++++++
 .../uc2-hazelcastjet-benchmark-operator.yaml     |  8 ++------
 .../uc2-kstreams/resources/input-topic.yaml      |  9 +++++++++
 .../uc2-kstreams/resources/output-topic.yaml     |  9 +++++++++
 .../uc2-kstreams-benchmark-operator.yaml         | 14 ++++++++------
 .../uc3-beam-flink/resources/input-topic.yaml    |  9 +++++++++
 .../uc3-beam-flink/resources/output-topic.yaml   |  9 +++++++++
 .../uc3-beam-flink-benchmark-operator.yaml       |  8 ++------
 .../uc3-beam-samza/resources/input-topic.yaml    |  9 +++++++++
 .../uc3-beam-samza/resources/output-topic.yaml   |  9 +++++++++
 .../uc3-beam-samza-benchmark-operator.yaml       |  8 ++------
 .../uc3-flink/resources/input-topic.yaml         |  9 +++++++++
 .../uc3-flink/resources/output-topic.yaml        |  9 +++++++++
 .../uc3-flink/uc3-flink-benchmark-operator.yaml  |  8 ++------
 .../uc3-hazelcastjet/resources/input-topic.yaml  |  9 +++++++++
 .../uc3-hazelcastjet/resources/output-topic.yaml |  9 +++++++++
 .../uc3-hazelcastjet-benchmark-operator.yaml     |  8 ++------
 .../uc3-kstreams/resources/input-topic.yaml      |  9 +++++++++
 .../uc3-kstreams/resources/output-topic.yaml     |  9 +++++++++
 .../uc3-kstreams-benchmark-operator.yaml         |  8 ++------
 .../resources/aggregation-feedback-topic.yaml    |  9 +++++++++
 .../resources/configuration-topic.yaml           |  9 +++++++++
 .../uc4-beam-flink/resources/input-topic.yaml    |  9 +++++++++
 .../uc4-beam-flink/resources/output-topic.yaml   |  9 +++++++++
 .../uc4-beam-flink-benchmark-operator.yaml       | 16 ++++------------
 .../resources/aggregation-feedback-topic.yaml    |  9 +++++++++
 .../resources/configuration-topic.yaml           |  9 +++++++++
 .../uc4-beam-samza/resources/input-topic.yaml    |  9 +++++++++
 .../uc4-beam-samza/resources/output-topic.yaml   |  9 +++++++++
 .../uc4-beam-samza-benchmark-operator.yaml       | 16 ++++------------
 .../resources/aggregation-feedback-topic.yaml    |  9 +++++++++
 .../uc4-flink/resources/configuration-topic.yaml |  9 +++++++++
 .../uc4-flink/resources/input-topic.yaml         |  9 +++++++++
 .../uc4-flink/resources/output-topic.yaml        |  9 +++++++++
 .../uc4-flink/uc4-flink-benchmark-operator.yaml  | 16 ++++------------
 .../resources/aggregation-feedback-topic.yaml    |  9 +++++++++
 .../resources/configuration-topic.yaml           |  9 +++++++++
 .../uc4-hazelcastjet/resources/input-topic.yaml  |  9 +++++++++
 .../uc4-hazelcastjet/resources/output-topic.yaml |  9 +++++++++
 .../uc4-hazelcastjet-benchmark-operator.yaml     | 16 ++++------------
 .../resources/aggregation-feedback-topic.yaml    |  9 +++++++++
 .../resources/configuration-topic.yaml           |  9 +++++++++
 .../uc4-kstreams/resources/input-topic.yaml      |  9 +++++++++
 .../uc4-kstreams/resources/output-topic.yaml     |  9 +++++++++
 .../uc4-kstreams-benchmark-operator.yaml         | 16 ++++------------
 65 files changed, 456 insertions(+), 147 deletions(-)
 create mode 100644 theodolite-benchmarks/definitions/uc1-beam-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc1-beam-samza/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc1-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc1-hazelcastjet/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc1-kstreams/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-beam-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-beam-flink/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-beam-samza/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-beam-samza/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-flink/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-kstreams/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc2-kstreams/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-beam-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-beam-flink/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-beam-samza/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-beam-samza/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-flink/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-kstreams/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc3-kstreams/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-flink/resources/aggregation-feedback-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-flink/resources/configuration-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-flink/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-samza/resources/aggregation-feedback-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-samza/resources/configuration-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-samza/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-beam-samza/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-flink/resources/aggregation-feedback-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-flink/resources/configuration-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-flink/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-flink/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/aggregation-feedback-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/configuration-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/output-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-kstreams/resources/aggregation-feedback-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-kstreams/resources/configuration-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-kstreams/resources/input-topic.yaml
 create mode 100644 theodolite-benchmarks/definitions/uc4-kstreams/resources/output-topic.yaml

diff --git a/theodolite-benchmarks/definitions/uc1-beam-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc1-beam-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc1-beam-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc1-beam-flink/uc1-beam-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc1-beam-flink/uc1-beam-flink-benchmark-operator.yaml
index 6b21aa2ab..09dca3c59 100644
--- a/theodolite-benchmarks/definitions/uc1-beam-flink/uc1-beam-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc1-beam-flink/uc1-beam-flink-benchmark-operator.yaml
@@ -12,6 +12,7 @@ spec:
       - configMap:
           name: "benchmark-resources-uc1-beam-flink"
           files:
+          - "input-topic.yaml"
           - "flink-configuration-configmap.yaml"
           - "taskmanager-deployment.yaml"
           - "taskmanager-service.yaml"
@@ -91,9 +92,3 @@ spec:
         threshold: 2000
         externalSloUrl: "http://localhost:80/evaluate-slope"
         warmup: 60 # in seconds
-  kafkaConfig:
-    bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
-    topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
diff --git a/theodolite-benchmarks/definitions/uc1-beam-samza/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc1-beam-samza/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc1-beam-samza/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc1-beam-samza/uc1-beam-samza-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc1-beam-samza/uc1-beam-samza-benchmark-operator.yaml
index 428f9928f..ff81feaac 100644
--- a/theodolite-benchmarks/definitions/uc1-beam-samza/uc1-beam-samza-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc1-beam-samza/uc1-beam-samza-benchmark-operator.yaml
@@ -12,6 +12,7 @@ spec:
       - configMap:
           name: "benchmark-resources-uc1-beam-samza"
           files:
+          - "input-topic.yaml"
           - "uc1-beam-samza-deployment.yaml"
           - "beam-samza-service.yaml"
           - "service-monitor.yaml"
@@ -83,9 +84,6 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
       - name: ".*samza.*"
         removeOnly: true
       - name: ".*uc1-application.*"
diff --git a/theodolite-benchmarks/definitions/uc1-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc1-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc1-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc1-flink/uc1-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc1-flink/uc1-flink-benchmark-operator.yaml
index ddd0d388a..22001e6c8 100644
--- a/theodolite-benchmarks/definitions/uc1-flink/uc1-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc1-flink/uc1-flink-benchmark-operator.yaml
@@ -12,6 +12,7 @@ spec:
       - configMap:
           name: "benchmark-resources-uc1-flink"
           files:
+          - "input-topic.yaml"
           - "flink-configuration-configmap.yaml"
           - "taskmanager-deployment.yaml"
           - "taskmanager-service.yaml"
@@ -91,9 +92,3 @@ spec:
         threshold: 2000
         externalSloUrl: "http://localhost:80/evaluate-slope"
         warmup: 60 # in seconds
-  kafkaConfig:
-    bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
-    topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
diff --git a/theodolite-benchmarks/definitions/uc1-hazelcastjet/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc1-hazelcastjet/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc1-hazelcastjet/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc1-hazelcastjet/uc1-hazelcastjet-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc1-hazelcastjet/uc1-hazelcastjet-benchmark-operator.yaml
index b3933ff35..a77b21727 100644
--- a/theodolite-benchmarks/definitions/uc1-hazelcastjet/uc1-hazelcastjet-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc1-hazelcastjet/uc1-hazelcastjet-benchmark-operator.yaml
@@ -12,6 +12,7 @@ spec:
       - configMap:
           name: "benchmark-resources-uc1-hazelcastjet"
           files:
+          - "input-topic.yaml"
           - "uc1-hazelcastjet-deployment.yaml"
           - "uc1-hazelcastjet-service.yaml"
           - "uc1-jmx-configmap.yaml"
@@ -66,9 +67,3 @@ spec:
         threshold: 2000
         externalSloUrl: "http://localhost:80/evaluate-slope"
         warmup: 60 # in seconds
-  kafkaConfig:
-    bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
-    topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
diff --git a/theodolite-benchmarks/definitions/uc1-kstreams/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc1-kstreams/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc1-kstreams/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc1-kstreams/uc1-kstreams-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc1-kstreams/uc1-kstreams-benchmark-operator.yaml
index 530fed41e..b416ece8f 100644
--- a/theodolite-benchmarks/definitions/uc1-kstreams/uc1-kstreams-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc1-kstreams/uc1-kstreams-benchmark-operator.yaml
@@ -12,6 +12,7 @@ spec:
       - configMap:
           name: "benchmark-resources-uc1-kstreams"
           files:
+          - "input-topic.yaml"
           - "uc1-kstreams-deployment.yaml"
           - "uc1-kstreams-service.yaml"
           - "uc1-jmx-configmap.yaml"
@@ -71,9 +72,3 @@ spec:
         threshold: 2000
         externalSloUrl: "http://localhost:80/evaluate-slope"
         warmup: 60 # in seconds
-  kafkaConfig:
-    bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
-    topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
diff --git a/theodolite-benchmarks/definitions/uc2-beam-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc2-beam-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-beam-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-beam-flink/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc2-beam-flink/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-beam-flink/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-beam-flink/uc2-beam-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc2-beam-flink/uc2-beam-flink-benchmark-operator.yaml
index 20ebf1e0f..a55b9df05 100644
--- a/theodolite-benchmarks/definitions/uc2-beam-flink/uc2-beam-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc2-beam-flink/uc2-beam-flink-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc2-beam-flink"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
           - "flink-configuration-configmap.yaml"
           - "taskmanager-deployment.yaml"
           - "taskmanager-service.yaml"
@@ -106,11 +108,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc2-beam-samza/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc2-beam-samza/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-beam-samza/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-beam-samza/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc2-beam-samza/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-beam-samza/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-beam-samza/uc2-beam-samza-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc2-beam-samza/uc2-beam-samza-benchmark-operator.yaml
index 20abcca66..6e92cb3f1 100644
--- a/theodolite-benchmarks/definitions/uc2-beam-samza/uc2-beam-samza-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc2-beam-samza/uc2-beam-samza-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc2-beam-samza"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
           - "uc2-beam-samza-deployment.yaml"
           - "beam-samza-service.yaml"
           - "service-monitor.yaml"
@@ -83,12 +85,6 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: ".*samza.*"
         removeOnly: true
       - name: ".*uc2-application.*"
diff --git a/theodolite-benchmarks/definitions/uc2-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc2-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-flink/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc2-flink/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-flink/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-flink/uc2-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc2-flink/uc2-flink-benchmark-operator.yaml
index 0c30c88ff..e3b27eb55 100644
--- a/theodolite-benchmarks/definitions/uc2-flink/uc2-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc2-flink/uc2-flink-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc2-flink"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
           - "flink-configuration-configmap.yaml"
           - "taskmanager-deployment.yaml"
           - "taskmanager-service.yaml"
@@ -106,11 +108,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-hazelcastjet/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-hazelcastjet/uc2-hazelcastjet-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc2-hazelcastjet/uc2-hazelcastjet-benchmark-operator.yaml
index 419326787..3f2412d8a 100644
--- a/theodolite-benchmarks/definitions/uc2-hazelcastjet/uc2-hazelcastjet-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc2-hazelcastjet/uc2-hazelcastjet-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc2-hazelcastjet"
           files:
+            - "input-topic.yaml"
+            - "output-topic.yaml"
             - "uc2-hazelcastjet-deployment.yaml"
             - "uc2-hazelcastjet-service.yaml"
             - "uc2-jmx-configmap.yaml"
@@ -81,11 +83,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc2-kstreams/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc2-kstreams/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-kstreams/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-kstreams/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc2-kstreams/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc2-kstreams/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc2-kstreams/uc2-kstreams-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc2-kstreams/uc2-kstreams-benchmark-operator.yaml
index 3e82c08f3..73f4297cd 100644
--- a/theodolite-benchmarks/definitions/uc2-kstreams/uc2-kstreams-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc2-kstreams/uc2-kstreams-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc2-kstreams"
           files:
+            - "input-topic.yaml"
+            - "output-topic.yaml"
             - "uc2-kstreams-deployment.yaml"
             - "uc2-kstreams-service.yaml"
             - "uc2-jmx-configmap.yaml"
@@ -86,11 +88,11 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
+      # - name: "input"
+      #   numPartitions: 100
+      #   replicationFactor: 1
+      # - name: "output"
+      #   numPartitions: 100
+      #   replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc3-beam-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc3-beam-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-beam-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-beam-flink/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc3-beam-flink/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-beam-flink/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-beam-flink/uc3-beam-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc3-beam-flink/uc3-beam-flink-benchmark-operator.yaml
index f0f96ac89..64a286d1b 100644
--- a/theodolite-benchmarks/definitions/uc3-beam-flink/uc3-beam-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc3-beam-flink/uc3-beam-flink-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc3-beam-flink"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
           - "flink-configuration-configmap.yaml"
           - "taskmanager-deployment.yaml"
           - "taskmanager-service.yaml"
@@ -101,11 +103,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc3-beam-samza/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc3-beam-samza/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-beam-samza/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-beam-samza/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc3-beam-samza/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-beam-samza/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-beam-samza/uc3-beam-samza-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc3-beam-samza/uc3-beam-samza-benchmark-operator.yaml
index f5f6e7222..e800b5d19 100644
--- a/theodolite-benchmarks/definitions/uc3-beam-samza/uc3-beam-samza-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc3-beam-samza/uc3-beam-samza-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc3-beam-samza"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
           - "uc3-beam-samza-deployment.yaml"
           - "beam-samza-service.yaml"
           - "service-monitor.yaml"
@@ -90,12 +92,6 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: ".*samza.*"
         removeOnly: true
       - name: ".*uc3-application.*"
diff --git a/theodolite-benchmarks/definitions/uc3-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc3-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-flink/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc3-flink/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-flink/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-flink/uc3-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc3-flink/uc3-flink-benchmark-operator.yaml
index 87b5c9dc6..d5717734f 100644
--- a/theodolite-benchmarks/definitions/uc3-flink/uc3-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc3-flink/uc3-flink-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc3-flink"
           files:
+            - "input-topic.yaml"
+            - "output-topic.yaml"
             - "flink-configuration-configmap.yaml"
             - "taskmanager-deployment.yaml"
             - "taskmanager-service.yaml"
@@ -101,11 +103,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-hazelcastjet/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-hazelcastjet/uc3-hazelcastjet-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc3-hazelcastjet/uc3-hazelcastjet-benchmark-operator.yaml
index 2c04bbbe6..62086b68a 100644
--- a/theodolite-benchmarks/definitions/uc3-hazelcastjet/uc3-hazelcastjet-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc3-hazelcastjet/uc3-hazelcastjet-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc3-hazelcastjet"
           files:
+            - "input-topic.yaml"
+            - "output-topic.yaml"
             - "uc3-hazelcastjet-deployment.yaml"
             - "uc3-hazelcastjet-service.yaml"
             - "uc3-jmx-configmap.yaml"
@@ -76,11 +78,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc3-kstreams/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc3-kstreams/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-kstreams/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-kstreams/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc3-kstreams/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc3-kstreams/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc3-kstreams/uc3-kstreams-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc3-kstreams/uc3-kstreams-benchmark-operator.yaml
index 821316847..6917380a2 100644
--- a/theodolite-benchmarks/definitions/uc3-kstreams/uc3-kstreams-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc3-kstreams/uc3-kstreams-benchmark-operator.yaml
@@ -12,6 +12,8 @@ spec:
       - configMap:
           name: "benchmark-resources-uc3-kstreams"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
           - "uc3-kstreams-deployment.yaml"
           - "uc3-kstreams-service.yaml"
           - "uc3-jmx-configmap.yaml"
@@ -81,11 +83,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc4-beam-flink/resources/aggregation-feedback-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/aggregation-feedback-topic.yaml
new file mode 100644
index 000000000..5d7c64657
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/aggregation-feedback-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: aggregation-feedback
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-flink/resources/configuration-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/configuration-topic.yaml
new file mode 100644
index 000000000..fb42eb355
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/configuration-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: configuration
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-flink/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-flink/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-flink/uc4-beam-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc4-beam-flink/uc4-beam-flink-benchmark-operator.yaml
index 36701522b..b7f931457 100644
--- a/theodolite-benchmarks/definitions/uc4-beam-flink/uc4-beam-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc4-beam-flink/uc4-beam-flink-benchmark-operator.yaml
@@ -12,6 +12,10 @@ spec:
       - configMap:
           name: "benchmark-resources-uc4-beam-flink"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
+          - "aggregation-feedback-topic.yaml"
+          - "configuration-topic.yaml"
           - "flink-configuration-configmap.yaml"
           - "taskmanager-deployment.yaml"
           - "taskmanager-service.yaml"
@@ -107,17 +111,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "configuration"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "aggregation-feedback"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc4-beam-samza/resources/aggregation-feedback-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/aggregation-feedback-topic.yaml
new file mode 100644
index 000000000..5d7c64657
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/aggregation-feedback-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: aggregation-feedback
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-samza/resources/configuration-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/configuration-topic.yaml
new file mode 100644
index 000000000..fb42eb355
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/configuration-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: configuration
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-samza/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-samza/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-beam-samza/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-beam-samza/uc4-beam-samza-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc4-beam-samza/uc4-beam-samza-benchmark-operator.yaml
index 776b0aeaf..ceae2c326 100644
--- a/theodolite-benchmarks/definitions/uc4-beam-samza/uc4-beam-samza-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc4-beam-samza/uc4-beam-samza-benchmark-operator.yaml
@@ -12,6 +12,10 @@ spec:
       - configMap:
           name: "benchmark-resources-uc4-beam-samza"
           files:
+          - "input-topic.yaml"
+          - "output-topic.yaml"
+          - "aggregation-feedback-topic.yaml"
+          - "configuration-topic.yaml"
           - "uc4-beam-samza-deployment.yaml"
           - "beam-samza-service.yaml"
           - "service-monitor.yaml"
@@ -84,18 +88,6 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "configuration"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "aggregation-feedback"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
       - name: ".*samza.*"
diff --git a/theodolite-benchmarks/definitions/uc4-flink/resources/aggregation-feedback-topic.yaml b/theodolite-benchmarks/definitions/uc4-flink/resources/aggregation-feedback-topic.yaml
new file mode 100644
index 000000000..5d7c64657
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-flink/resources/aggregation-feedback-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: aggregation-feedback
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-flink/resources/configuration-topic.yaml b/theodolite-benchmarks/definitions/uc4-flink/resources/configuration-topic.yaml
new file mode 100644
index 000000000..fb42eb355
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-flink/resources/configuration-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: configuration
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-flink/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc4-flink/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-flink/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-flink/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc4-flink/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-flink/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-flink/uc4-flink-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc4-flink/uc4-flink-benchmark-operator.yaml
index 4eddd7771..02bf7a3b8 100644
--- a/theodolite-benchmarks/definitions/uc4-flink/uc4-flink-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc4-flink/uc4-flink-benchmark-operator.yaml
@@ -12,6 +12,10 @@ spec:
       - configMap:
           name: "benchmark-resources-uc4-flink"
           files:
+            - "input-topic.yaml"
+            - "output-topic.yaml"
+            - "aggregation-feedback-topic.yaml"
+            - "configuration-topic.yaml"
             - "flink-configuration-configmap.yaml"
             - "taskmanager-deployment.yaml"
             - "taskmanager-service.yaml"
@@ -107,17 +111,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "configuration"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "aggregation-feedback"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/aggregation-feedback-topic.yaml b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/aggregation-feedback-topic.yaml
new file mode 100644
index 000000000..5d7c64657
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/aggregation-feedback-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: aggregation-feedback
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/configuration-topic.yaml b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/configuration-topic.yaml
new file mode 100644
index 000000000..fb42eb355
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/configuration-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: configuration
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-hazelcastjet/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-hazelcastjet/uc4-hazelcastjet-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc4-hazelcastjet/uc4-hazelcastjet-benchmark-operator.yaml
index 2370bbbad..7b0d4bfc2 100644
--- a/theodolite-benchmarks/definitions/uc4-hazelcastjet/uc4-hazelcastjet-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc4-hazelcastjet/uc4-hazelcastjet-benchmark-operator.yaml
@@ -12,6 +12,10 @@ spec:
       - configMap:
           name: "benchmark-resources-uc4-hazelcastjet"
           files:
+            - "input-topic.yaml"
+            - "output-topic.yaml"
+            - "aggregation-feedback-topic.yaml"
+            - "configuration-topic.yaml"
             - "uc4-hazelcastjet-deployment.yaml"
             - "uc4-hazelcastjet-service.yaml"
             - "uc4-jmx-configmap.yaml"
@@ -82,17 +86,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "configuration"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "aggregation-feedback"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
diff --git a/theodolite-benchmarks/definitions/uc4-kstreams/resources/aggregation-feedback-topic.yaml b/theodolite-benchmarks/definitions/uc4-kstreams/resources/aggregation-feedback-topic.yaml
new file mode 100644
index 000000000..5d7c64657
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-kstreams/resources/aggregation-feedback-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: aggregation-feedback
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-kstreams/resources/configuration-topic.yaml b/theodolite-benchmarks/definitions/uc4-kstreams/resources/configuration-topic.yaml
new file mode 100644
index 000000000..fb42eb355
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-kstreams/resources/configuration-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: configuration
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-kstreams/resources/input-topic.yaml b/theodolite-benchmarks/definitions/uc4-kstreams/resources/input-topic.yaml
new file mode 100644
index 000000000..d16ed916b
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-kstreams/resources/input-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: input
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-kstreams/resources/output-topic.yaml b/theodolite-benchmarks/definitions/uc4-kstreams/resources/output-topic.yaml
new file mode 100644
index 000000000..81ba735f3
--- /dev/null
+++ b/theodolite-benchmarks/definitions/uc4-kstreams/resources/output-topic.yaml
@@ -0,0 +1,9 @@
+apiVersion: kafka.strimzi.io/v1beta2
+kind: KafkaTopic
+metadata:
+  name: output
+  labels:
+    strimzi.io/cluster: theodolite-kafka
+spec:
+  partitions: 100
+  replicas: 1
diff --git a/theodolite-benchmarks/definitions/uc4-kstreams/uc4-kstreams-benchmark-operator.yaml b/theodolite-benchmarks/definitions/uc4-kstreams/uc4-kstreams-benchmark-operator.yaml
index e43f210f6..99dadc3e5 100644
--- a/theodolite-benchmarks/definitions/uc4-kstreams/uc4-kstreams-benchmark-operator.yaml
+++ b/theodolite-benchmarks/definitions/uc4-kstreams/uc4-kstreams-benchmark-operator.yaml
@@ -12,6 +12,10 @@ spec:
       - configMap:
           name: "benchmark-resources-uc4-kstreams"
           files:
+            - "input-topic.yaml"
+            - "output-topic.yaml"
+            - "aggregation-feedback-topic.yaml"
+            - "configuration-topic.yaml"
             - "uc4-kstreams-deployment.yaml"
             - "uc4-kstreams-service.yaml"
             - "uc4-jmx-configmap.yaml"
@@ -87,17 +91,5 @@ spec:
   kafkaConfig:
     bootstrapServer: "theodolite-kafka-kafka-bootstrap:9092"
     topics:
-      - name: "input"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "output"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "configuration"
-        numPartitions: 100
-        replicationFactor: 1
-      - name: "aggregation-feedback"
-        numPartitions: 100
-        replicationFactor: 1
       - name: "theodolite-.*"
         removeOnly: True
-- 
GitLab