Проблема с подключением Livy к EMR через sagemaker - PullRequest
0 голосов
/ 27 февраля 2019

Я следовал этому руководству: https://aws.amazon.com/fr/blogs/machine-learning/build-amazon-sagemaker-notebooks-backed-by-spark-in-amazon-emr/, чтобы иметь возможность запускать код pyspark на EMR через apache-livy.Я только внес небольшое изменение, чтобы скрипт конфигурации EMR выполнялся как скрипт конфигурации жизненного цикла sagemaker.

При тестировании соединения с curl <EMR Master Private IP>:8998/sessions результат выглядит вполне нормально: {"from":0,"total":0,"sessions":[]}.Но когда я пытаюсь запустить приложение, состояние меняется с начиная с напрямую до dead со следующим сообщением:

{'id': 0, 'appId': None, 'owner': None, 'proxyUser': None, 'state': 'dead', 'kind': 'spark', 'appInfo': {'driverLogUrl': None, 'sparkUiUrl': None}, 'log': ['19/02/27 09:23:24 INFO Client: Requesting a new application from cluster with 2 NodeManagers', '19/02/27 09:23:25 INFO Client: Verifying our application has not requested more than the maximum memory capability of the cluster (1024 MB per container)', '19/02/27 09:23:25 INFO Client: Will allocate AM container, with 896 MB memory including 384 MB overhead', '19/02/27 09:23:25 INFO Client: Setting up container launch context for our AM', '19/02/27 09:23:25INFO Client: Setting up the launch environment for our AM container', '19/02/27 09:23:25 INFO Client: Preparing resources for our AM container', '19/02/27 09:23:26 WARN Client: Neither spark.yarn.jars nor spark.yarn.archive is set, falling back to uploading libraries under SPARK_HOME.', '\nYARN Diagnostics: ', 'java.lang.Exception: No YARN application is found with tag livy-session-0-v9wkutit in 120 seconds. Please check your cluster status, it is may be very busy.', 'org.apache.livy.utils.SparkYarnApp.org$apache$livy$utils$SparkYarnApp$$getAppIdFromTag(SparkYarnApp.scala:182) org.apache.livy.utils.SparkYarnApp$$anonfun$1$$anonfun$4.apply(SparkYarnApp.scala:239) org.apache.livy.utils.SparkYarnApp$$anonfun$1$$anonfun$4.apply(SparkYarnApp.scala:236) scala.Option.getOrElse(Option.scala:121) org.apache.livy.utils.SparkYarnApp$$anonfun$1.apply$mcV$sp(SparkYarnApp.scala:236) org.apache.livy.Utils$$anon$1.run(Utils.scala:94)']}

Iпытался исследовать, но на самом деле не имею ни малейшего понятия о том, что здесь происходит, есть ли кто-то случайно кто-нибудь здесь, кто имеет представление о том, как отладить это.

...