Spark on YARN - Clinet模式运行spark报错问题

应用场景

安装部署完完全分布式的spark后,发现yarn-cluster模式可以运行不报错,但是yarn-client报错,无法进行计算PI的值,导致spark并不能使用,报错信息如下所示,只需要修改yarn的配置即可!

操作方案

#./bin/spark-submit--classorg.apache.spark.examples.SparkPi--masteryarn-clientlib/spark-examples-1.6.1-hadoop2.6.0.jar

报错信息

[root@hadoop0 spark1.6.1]# ./bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn-client lib/spark-examples-1.6.1-hadoop2.6.0.jar 17/11/1616:04:59 INFO spark.SparkContext: Running Spark version 1.6.117/11/1616:05:00 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 17/11/1616:05:00 INFO spark.SecurityManager: Changing view acls to: root 17/11/1616:05:00 INFO spark.SecurityManager: Changing modify acls to: root 17/11/1616:05:00 INFO spark.SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(root); users with modify permissions: Set(root) 17/11/1616:05:00 INFO util.Utils: Successfully started service 'sparkDriver' on port 56204.17/11/1616:05:00 INFO slf4j.Slf4jLogger: Slf4jLogger started 17/11/1616:05:01 INFO Remoting: Starting remoting 17/11/1616:05:01 INFO Remoting: Remoting started; listening on addresses :[akka.tcp://[email protected]:56916]17/11/1616:05:01 INFO util.Utils: Successfully started service 'sparkDriverActorSystem' on port 56916.17/11/1616:05:01 INFO spark.SparkEnv: Registering MapOutputTracker 17/11/1616:05:01 INFO spark.SparkEnv: Registering BlockManagerMaster 17/11/1616:05:01 INFO storage.DiskBlockManager: Created local directory at /tmp/blockmgr-9e904d0f-0d09-4c9a-b523-86dc52613223 17/11/1616:05:01 INFO storage.MemoryStore: MemoryStore started with capacity 511.1 MB 17/11/1616:05:01 INFO spark.SparkEnv: Registering OutputCommitCoordinator 17/11/1616:05:01 INFO server.Server: jetty-8.y.z-SNAPSHOT 17/11/1616:05:01 INFO server.AbstractConnector: Started SelectChannelConnector@0.0.0.0:404017/11/1616:05:01 INFO util.Utils: Successfully started service 'SparkUI' on port 4040.17/11/1616:05:01 INFO ui.SparkUI: Started SparkUI at http://192.168.210.70:404017/11/1616:05:01 INFO spark.HttpFileServer: HTTP File server directory is /tmp/spark-a3aae429-abe4-4bcb-b73e-8fe359aa92d9/httpd-742c21cf-89df-4af2-8b81-431523fe7bfd 17/11/1616:05:01 INFO spark.HttpServer: Starting HTTP Server 17/11/1616:05:01 INFO server.Server: jetty-8.y.z-SNAPSHOT 17/11/1616:05:01 INFO server.AbstractConnector: Started SocketConnector@0.0.0.0:3744017/11/1616:05:01 INFO util.Utils: Successfully started service 'HTTP file server' on port 37440.17/11/1616:05:01 INFO spark.SparkContext: Added JAR file:/opt/spark1.6.1/lib/spark-examples-1.6.1-hadoop2.6.0.jar at http://192.168.210.70:37440/jars/spark-examples-1.6.1-hadoop2.6.0.jar with timestamp 151081950161817/11/1616:05:01 INFO client.RMProxy: Connecting to ResourceManager at hadoop0/192.168.210.70:803217/11/1616:05:01 INFO yarn.Client: Requesting a new application from cluster with3 NodeManagers 17/11/1616:05:01 INFO yarn.Client: Verifying our application has not requested more than the maximum memory capability of the cluster (12288 MB per container) 17/11/1616:05:01 INFO yarn.Client: Will allocate AM container, with896 MB memory including 384 MB overhead 17/11/1616:05:01 INFO yarn.Client: Setting up container launch context for our AM 17/11/1616:05:01 INFO yarn.Client: Setting up the launch environment for our AM container 17/11/1616:05:01 INFO yarn.Client: Preparing resources for our AM container 17/11/1616:05:02 INFO yarn.Client: Uploading resource file:/opt/spark1.6.1/lib/spark-assembly-1.6.1-hadoop2.6.0.jar -> hdfs://hadoop0:9000/user/root/.sparkStaging/application_1510653707211_0005/spark-assembly-1.6.1-hadoop2.6.0.jar17/11/1616:05:04 INFO yarn.Client: Uploading resource file:/tmp/spark-a3aae429-abe4-4bcb-b73e-8fe359aa92d9/__spark_conf__7623958375810260855.zip -> hdfs://hadoop0:9000/user/root/.sparkStaging/application_1510653707211_0005/__spark_conf__7623958375810260855.zip17/11/1616:05:04 INFO spark.SecurityManager: Changing view acls to: root 17/11/1616:05:04 INFO spark.SecurityManager: Changing modify acls to: root 17/11/1616:05:04 INFO spark.SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(root); users with modify permissions: Set(root) 17/11/1616:05:04 INFO yarn.Client: Submitting application 5to ResourceManager 17/11/1616:05:04 INFO impl.YarnClientImpl: Submitted application application_1510653707211_0005 17/11/1616:05:06 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:06 INFO yarn.Client: client token: N/A diagnostics: N/A ApplicationMaster host: N/A ApplicationMaster RPC port: -1 queue: default start time: 1510819504598 final status: UNDEFINED tracking URL: http://hadoop0:8088/proxy/application_1510653707211_0005/ user: root 17/11/1616:05:07 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:08 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:09 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:10 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:11 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:12 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:13 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:14 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:15 ERROR server.TransportRequestHandler: Error sending result RpcResponse{requestId=89567902 java.nio.channels.ClosedChannelException 17/11/1616:05:15 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:16 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:17 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:18 INFO yarn.Client: Application report for application_1510653707211_0005 (state: ACCEPTED) 17/11/1616:05:18 INFO cluster.YarnSchedulerBackend$YarnSchedulerEndpoint: ApplicationMaster registered as17/11/1616:05:18 INFO cluster.YarnClientSchedulerBackend: Add WebUI Filter. org.apache.hadoop.yarn.server.07211_0005 17/11/1616:05:18 INFO ui.JettyUtils: Adding filter: org.apache.hadoop.yarn.server.webproxy.amfilter.AmIpFi 17/11/1616:05:19 INFO yarn.Client: Application report for application_1510653707211_0005 (state: RUNNING) 17/11/1616:05:19 INFO yarn.Client: client token: N/A diagnostics: N/A ApplicationMaster host: 192.168.210.71 ApplicationMaster RPC port: 0 queue: default start time: 1510819504598 final status: UNDEFINED tracking URL: http://hadoop0:8088/proxy/application_1510653707211_0005/ user: root 17/11/1616:05:19 INFO cluster.YarnClientSchedulerBackend: Application application_1510653707211_0005 has s 17/11/1616:05:19 INFO util.Utils: Successfully started service 'org.apache.spark.network.netty.NettyBlockT 17/11/1616:05:19 INFO netty.NettyBlockTransferService: Server created on 6093217/11/1616:05:19 INFO storage.BlockManagerMaster: Trying to register BlockManager 17/11/1616:05:19 INFO storage.BlockManagerMasterEndpoint: Registering block manager 192.168.210.70:60932 w 17/11/1616:05:19 INFO storage.BlockManagerMaster: Registered BlockManager 17/11/1616:05:22 INFO cluster.YarnClientSchedulerBackend: Registered executor NettyRpcEndpointRef(null) (h 17/11/1616:05:22 INFO storage.BlockManagerMasterEndpoint: Registering block manager hadoop1:35613with2.717/11/1616:05:22 ERROR cluster.YarnClientSchedulerBackend: Yarn application has already exited with state 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/metrics/json,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/stages/stage/kill,nul 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/api,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/static,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/executors/threadDump/ 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/executors/threadDump, 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/executors/json,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/executors,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/environment/json,null17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/environment,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/storage/rdd/json,null17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/storage/rdd,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/storage/json,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/storage,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/stages/pool/json,null17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/stages/pool,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/stages/stage/json,nul 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/stages/stage,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/stages/json,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/stages,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/jobs/job/json,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/jobs/job,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/jobs/json,null} 17/11/1616:05:22 INFO handler.ContextHandler: stopped o.s.j.s.ServletContextHandler{/jobs,null} 17/11/1616:05:22 INFO cluster.YarnClientSchedulerBackend: Registered executor NettyRpcEndpointRef(null) (h 17/11/1616:05:22 INFO ui.SparkUI: Stopped Spark web UI at http://192.168.210.70:404017/11/1616:05:22 INFO cluster.YarnClientSchedulerBackend: Shutting down all executors 17/11/1616:05:22 INFO cluster.YarnClientSchedulerBackend: Asking each executor to shut down 17/11/1616:05:22 INFO cluster.YarnClientSchedulerBackend: Stopped 17/11/1616:05:22 INFO spark.MapOutputTrackerMasterEndpoint: MapOutputTrackerMasterEndpoint stopped! 17/11/1616:05:22 INFO storage.BlockManagerMasterEndpoint: Registering block manager hadoop2:51640with2.717/11/1616:05:22 INFO storage.MemoryStore: MemoryStore cleared 17/11/1616:05:22 INFO storage.BlockManager: BlockManager stopped 17/11/1616:05:22 ERROR scheduler.LiveListenerBus: SparkListenerBus has already stopped! Dropping event Spa 17/11/1616:05:22 INFO storage.BlockManagerMaster: BlockManagerMaster stopped 17/11/1616:05:22 INFO scheduler.OutputCommitCoordinator$OutputCommitCoordinatorEndpoint: OutputCommitCoord 17/11/1616:05:22 INFO spark.SparkContext: Successfully stopped SparkContext 17/11/1616:05:22 INFO remote.RemoteActorRefProvider$RemotingTerminator: Shutting down remote daemon. 17/11/1616:05:22 INFO remote.RemoteActorRefProvider$RemotingTerminator: Remote daemon shut down; proceedin 17/11/1616:05:22 INFO cluster.YarnClientSchedulerBackend: SchedulerBackend is ready for scheduling beginni 17/11/1616:05:22 ERROR spark.SparkContext: Error initializing SparkContext. java.lang.NullPointerException at org.apache.spark.SparkContext.<init>(SparkContext.scala:584) at org.apache.spark.examples.SparkPi$.main(SparkPi.scala:29) at org.apache.spark.examples.SparkPi.main(SparkPi.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.sc at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181) at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206) at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121) at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) 17/11/1616:05:22 INFO spark.SparkContext: SparkContext already stopped. Exception in thread "main" java.lang.NullPointerException at org.apache.spark.SparkContext.<init>(SparkContext.scala:584) at org.apache.spark.examples.SparkPi$.main(SparkPi.scala:29) at org.apache.spark.examples.SparkPi.main(SparkPi.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.sc at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181) at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206) at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121) at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) 17/11/1616:05:22 INFO util.ShutdownHookManager: Shutdown hook called 17/11/1616:05:22 INFO util.ShutdownHookManager: Deleting directory /tmp/spark-a3aae429-abe4-4bcb-b73e-8fe3 17/11/1616:05:22 INFO remote.RemoteActorRefProvider$RemotingTerminator: Remoting shut down. 17/11/1616:05:22 INFO util.ShutdownHookManager: Deleting directory /tmp/spark-a3aae429-abe4-4bcb-b73e-8fe

修改yarn-site.xml配置添加最后两个配置:

# vim /opt/hadoop2.6.0/etc/hadoop/yarn-site.xml <property><name>yarn.resourcemanager.hostname</name><value>hadoop0</value><property><description>The http address of the RM web application.</description><name>yarn.resourcemanager.webapp.address</name><value>${yarn.resourcemanager.hostname}:8088</value><name>yarn.resourcemanager.resource-tracker.address</name><value>${yarn.resourcemanager.hostname}:8031</value></property><property><description>The address of the RM admin interface.</description><name>yarn.resourcemanager.admin.address</name><value>${yarn.resourcemanager.hostname}:8033</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.scheduler.maximum-allocation-mb</name><value>8182</value><discription>每个节点可用内存,单位MB,默认8182MB</discription></property><property><name>yarn.nodemanager.pmem-check-enabled</name><value>false</value></property><property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value></property> # 添加最后两个false的属性即可!

猜你喜欢

转载自hmge.iteye.com/blog/2415527