在Flink 1.14.0中,Adaptive Scheduler默认被禁用了。如果你想使用它,需要手动开启。
在flink-conf.yaml文件中添加以下配置:
# 启用JobGraph优化
optimizer.job-graph-reshuffle.enabled: true
# 启用Adaptive Scheduler
scheduler: adaptive
# 启用动态分配资源
slot.request.timeout: 600s
slot.idle.timeout: 5min
resourcemanager.slot.request.timeout: 300s
resourcemanager.heartbeat.interval: 1000ms
完成之后,重新启动Flink集群,并确保在提交任务时使用正确的配置,如下所示:
./bin/flink run -Dscheduler=adaptive -Doptimizer.job-graph-reshuffle.enabled=true -Dslot.request.timeout=600000 -Dslot.idle.timeout=300000 -Dresourcemanager.slot.request.timeout=300000 -Dresourcemanager.heartbeat.interval=1000 ...
这样就可以在Flink 1.14.0中使用Adaptive Scheduler了。