I am deploying a scenario from Nussknacker to Flink where the source is Kafka and the sink sends requests to an HTTP endpoint. The setup has 2 Kafka broker nodes and 2 TaskManagers with one TM have 6 slots and the other have 5 slots
I ran the job with different parallelism configurations, and I noticed unexpected load distribution across TaskManagers:
Job Parallelism = 5
Observation: Only one TaskManager slot is being utilized, and the entire load runs on a single TaskManager.
Job Parallelism = 8
Observation: Two TaskManager slots are being utilized, but still the entire load is handled by a single TaskManager.
Observation: Again, only two TaskManager slots are being utilized, and the load is concentrated on a single TaskManager.
However, when I set job parallelism = 6 with 3 slots in each Task Managers, the load distributes properly across both TaskManagers.
Question:
Why is the load not evenly distributed across TaskManagers? Is this related to the number of Kafka partitions, operator chaining in Flink/Nussknacker, or some scheduling limitation? What’s the recommended configuration to ensure even distribution and better throughput in this setup?
Thanks in Advance,
Arjun S
Is this related to the number of Kafka partitions, operator chaining in Flink/Nussknacker, or some scheduling limitation?
--
You received this message because you are subscribed to the Google Groups "Nussknacker" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nussknacker...@googlegroups.com.
To view this discussion, visit https://groups.google.com/d/msgid/nussknacker/414f0455-1cac-49bf-be3b-529dbcdbde92n%40googlegroups.com.
Hi all, I’m facing an issue with load distribution in my Flink setup. - I have **2 TaskManagers** (TM1 and TM2). - TM1: 5 slots - TM2: 6 slots - Total: 11 slots - Kafka cluster: **2 brokers** - I have configured the property `taskmanager.load-balance.mode`. Observations: - When the job parallelism is 5, the slots are divided, and during load testing, the load is distributed equally across both TaskManagers. - When the job parallelism is 10, the slots are divided, and during load testing, the load is distributed equally across both TaskManagers. - When the job parallelism is 8 (4 slots allocated to each TM), the load goes **only to one TaskManager** (either TM1 or TM2). - I also tried changing the slot configuration to make it **10 slots total (5 per TM)** and also **8 slots total (4 per TM)**, but with parallelism 8, the same issue persists—load is directed only to one TaskManager. Question: Why is the load not being balanced across both TaskManagers when job parallelism is 8? Is there any configuration I might be missing?TBH I don't understand the difference between these mentioned setups with with parallelism 10 and 8. Both setups looks similar and I don't think that the observation that you've made is related with this.
Thanks in advance for your help!
On Tuesday, September 9, 2025 at 7:41:08 AM UTC+5:30 Arkadiusz Burdach wrote:
To view this discussion, visit https://groups.google.com/d/msgid/nussknacker/a7c6f24e-1315-40b0-be9d-18be957724ccn%40googlegroups.com.
2. Kafka topic has 2 partitions, both with assigned leaders and fully in-sync.
The number of partitions should be greater or equals to job parallelism.
To view this discussion, visit https://groups.google.com/d/msgid/nussknacker/1a2226d6-5b0b-4369-9b64-280024d04064n%40googlegroups.com.