我提交给Spark Cluster的工作尚未完成。我看到它永远都在等待中,但是日志显示甚至 Spark jetty 连接器也已关闭:
17/05/23 11:53:39 INFO org.spark_project.jetty.server.ServerConnector: Stopped ServerConnector@4f67e3df{HTTP/1.1}{0.0.0.0:4041}
我在yarn上运行了最新的cloud dataproc v1.1(spark 2.0.2)。我通过gcloud api提交了 Spark 作业:
gcloud dataproc jobs submit spark --project stage --cluster datasys-stg \
--async --jar hdfs:///apps/jdbc-job/jdbc-job.jar --labels name=jdbc-job -- --dbType=test
相同的spark pi内容正确完成了:
gcloud dataproc jobs submit spark --project stage --cluster datasys-stg --async \
--class org.apache.spark.examples.SparkPi --jars file:///usr/lib/spark/examples/jars/spark-examples.jar -- 100
在访问hadoop应用程序管理器界面时,我看到它已成功完成:
Google云控制台和作业列表显示它一直运行直到被杀死(请参阅作业运行20个小时再杀死),而hadoop表示它运行了19秒钟):
有什么我可以监视的东西,以查看导致gcloud无法完成工作的原因吗?
最佳答案
我找不到可以监视我的应用程序未完成的任何内容,但是我已经找到了实际的问题并已解决。原来,我在应用程序中放弃了线程-我已经连接到RabbitMQ,并且似乎创建了一些线程,这些线程最终阻止了gcloud停止应用程序。