Почему такой параметр, как '-n' или '-yn' не работает, когда применяется для диспетчера задач - PullRequest
2 голосов
/ 10 апреля 2019

Выполнение следующей команды для отправки задания на пряжу, но выделение номера диспетчера задач не ожидается. Кластеру достаточно ресурса <220vcores, 720G mem>

/data/clusterserver/flink-1.7.2/bin/flink run -m yarn-cluster -yn 4 -ys 2  /data/clusterserver/flink-1.7.2/examples/batch/WordCount.jar --input hdfs:///tmp/wordcount.txt --output hdfs:///tmp/count.result
2019-04-10 15:04:57,397 INFO  org.apache.flink.yarn.cli.FlinkYarnSessionCli                 - No path for the flink jar passed. Using the location of class org.apache.flink.yarn.YarnClusterDescriptor to locate the jar
2019-04-10 15:04:57,397 INFO  org.apache.flink.yarn.cli.FlinkYarnSessionCli                 - No path for the flink jar passed. Using the location of class org.apache.flink.yarn.YarnClusterDescriptor to locate the jar
2019-04-10 15:04:57,405 INFO  org.apache.flink.yarn.cli.FlinkYarnSessionCli                 - The argument yn is deprecated in will be ignored.
2019-04-10 15:04:57,405 INFO  org.apache.flink.yarn.cli.FlinkYarnSessionCli                 - The argument yn is deprecated in will be ignored.
2019-04-10 15:04:57,554 INFO  org.apache.flink.yarn.AbstractYarnClusterDescriptor           - Cluster specification: ClusterSpecification{masterMemoryMB=2048, taskManagerMemoryMB=2048, numberTaskManagers=4, slotsPerTaskManager=2}
2019-04-10 15:04:58,017 WARN  org.apache.flink.yarn.AbstractYarnClusterDescriptor           - The configuration directory ('/data/clusterserver/flink-1.7.2/conf') contains both LOG4J and Logback configuration files. Please delete or rename one of them.
2019-04-10 15:05:01,419 INFO  org.apache.flink.yarn.AbstractYarnClusterDescriptor           - Submitting application master application_1554348641734_0105
2019-04-10 15:05:01,446 INFO  org.apache.hadoop.yarn.client.api.impl.YarnClientImpl         - Submitted application application_1554348641734_0105
2019-04-10 15:05:01,447 INFO  org.apache.flink.yarn.AbstractYarnClusterDescriptor           - Waiting for the cluster to be allocated
2019-04-10 15:05:01,450 INFO  org.apache.flink.yarn.AbstractYarnClusterDescriptor           - Deploying cluster, current state ACCEPTED
2019-04-10 15:05:05,747 INFO  org.apache.flink.yarn.AbstractYarnClusterDescriptor           - YARN application has been deployed successfully.
Starting execution of program

Как видно из журнала INFO, параметры, отправляемые на пряжу, {masterMemoryMB=2048, taskManagerMemoryMB=2048, numberTaskManagers=4, slotsPerTaskManager=2}, однако есть только один TaskManager из Flink WebUI.

Использование yarn-session.sh с -n также встречает ту же проблему, а именно, контрольный номер TaskManager из командной строки не работает.

  • Flink версия 1.7.2
  • hadoop version 2.8.5 (Capacity Scheduler)
  • Java: 1,8,0_91

1 Ответ

2 голосов
/ 10 апреля 2019

Начиная с Flink 1.5, Flink поддерживает полную эластичность ресурса.Это означает, что Flink способен динамически запускать и останавливать TaskManagers при работе на пряже.Как следствие, вам больше не нужно указывать количество контейнеров / TaskManagers для кластера Flink на Yarn.Вот почему Flink больше не учитывает параметр -n / -yn.

Вместо этого Flink учитывает параллелизм задания, чтобы вычислить, сколько слотов необходимо для выполнения задания, а затем запускает столько TaskManagers, сколько необходимо для выполнения требований к слотам.

Вы можете найтидополнительная информация об изменениях развертывания здесь и здесь .

...