With Flink v1.13, I have 3 taskmanagers and 1 jobmanager with un-bounded stream using rocksdb as a state backend (all of them are running separate servers). When I start my flink application, one of the taskmanager's cpu load is higher than other. I am just calculating taskmanager jvm cpu load with promethues using: (flink_taskmanager_Status_JVM_CPU_Load{job="Flink"}*100)
When I start the application, CPU load:
- TaskManager 1 => 46.0 %,
- TaskManager 2 => 54.0 %,
- TaskManager 3 => 76.0 %,
After 4-6 six hours, CPU load:
- TaskManager 1 => 40-45.0 %,
- TaskManager 2 => 50-57.0 %,
- TaskManager 3 => 88-95.0 %, (almost 100% !!)
How can i distribute load equally ?
Rocksdb can also be reason for the high cpu? (Or how can i measure the rocksdb cpu usage ?)