Отправка задания Flink в кластер EMR: не удалось инициализировать точку входа кластера YarnJobClusterEntrypoint - PullRequest
0 голосов
/ 18 июня 2020

Я использую EMR 5.30.0 и пытаюсь отправить задание Flink (1.10.0) с помощью следующей команды

flink run -m yarn-cluster /home/hadoop/flink--test-0.0 .1-SNAPSHOT.jar

, и я получаю следующую ошибку:

Caused by: org.apache.flink.yarn.YarnClusterDescriptor$YarnDeploymentException: The YARN application unexpectedly switched to state FAILED during deployment. 

После просмотра журналов на рабочих узлах и журналах диспетчера заданий это похоже на конфликт портов

2020-06-17 21:40:51,199 ERROR org.apache.flink.runtime.entrypoint.ClusterEntrypoint         - Could not start cluster entrypoint YarnJobClusterEntrypoint.
org.apache.flink.runtime.entrypoint.ClusterEntrypointException: Failed to initialize the cluster entrypoint YarnJobClusterEntrypoint.
        at org.apache.flink.runtime.entrypoint.ClusterEntrypoint.startCluster(ClusterEntrypoint.java:187)
        at org.apache.flink.runtime.entrypoint.ClusterEntrypoint.runClusterEntrypoint(ClusterEntrypoint.java:518)
        at org.apache.flink.yarn.entrypoint.YarnJobClusterEntrypoint.main(YarnJobClusterEntrypoint.java:119)
Caused by: org.apache.flink.util.FlinkException: Could not create the DispatcherResourceManagerComponent.
        at org.apache.flink.runtime.entrypoint.component.DefaultDispatcherResourceManagerComponentFactory.create(DefaultDispatcherResourceManagerComponentFactory.java:261)
        at org.apache.flink.runtime.entrypoint.ClusterEntrypoint.runCluster(ClusterEntrypoint.java:215)
        at org.apache.flink.runtime.entrypoint.ClusterEntrypoint.lambda$startCluster$0(ClusterEntrypoint.java:169)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1844)
        at org.apache.flink.runtime.security.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41)
        at org.apache.flink.runtime.entrypoint.ClusterEntrypoint.startCluster(ClusterEntrypoint.java:168)
        ... 2 more
Caused by: java.net.BindException: Could not start rest endpoint on any port in port range 8081
        at org.apache.flink.runtime.rest.RestServerEndpoint.start(RestServerEndpoint.java:219)
        at org.apache.flink.runtime.entrypoint.component.DefaultDispatcherResourceManagerComponentFactory.create(DefaultDispatcherResourceManagerComponentFactory.java:165)
        ... 9 more

Кажется, для этого открыт JIRA Ticket (https://issues.apache.org/jira/browse/FLINK-15394) (хотя он предназначен для версии Flink 1.9), и предлагаемое решение - использовать диапазон портов для rest.bind-port в файле конфигурации Flink.

Однако в версии Flink 1.10 мы следуем только YML-файлу Yan Conf

rest.port: 8081

Другая проблема i Я столкнулся с тем, что я отправил несколько заданий Flink (одно и то же задание несколько раз) с помощью консоли AWS и через интерфейс добавления шага. Только одно задание выполнено успешно, а остальные завершились ошибкой, указанной выше. И когда я go в Flink UI, он вообще не показывает никаких заданий.

Интересно, пытается ли каждое из представленных заданий создать сеанс Flink Yarn вместо использования существующего.

Спасибо, Сати sh

1 Ответ

0 голосов
/ 23 июня 2020

Я могу решить эту проблему. Кажется, существует конфликт портов, и я должен использовать диапазон портов и закомментировать rest.port: 8081

#rest.port: 8081
rest.bind-port: 50100-50200

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...