如何在Amazon EMR上查找spark主URL

Sam*_*Sam 10 amazon-emr apache-spark spark-streaming

我是新手,并试图在版本为1.3.1的Amazon集群上安装spark.当我做

SparkConf sparkConfig = new SparkConf().setAppName("SparkSQLTest").setMaster("local[2]");
Run Code Online (Sandbox Code Playgroud)

它对我有用,但我知道这是为了测试目的我可以设置本地[2]

当我尝试使用群集模式时,我将其更改为

SparkConf sparkConfig = new SparkConf().setAppName("SparkSQLTest").setMaster("spark://localhost:7077");
Run Code Online (Sandbox Code Playgroud)

有了这个我得到低于错误

试图与无法访问的远程地址关联[akka.tcp:// sparkMaster @ localhost:7077].地址现在被封闭了5000毫秒,所有发送到此地址的消息都将被发送到死信.原因:连接被拒绝15/06/10 15:22:21 INFO client.AppClient $ ClientActor:连接到master akka.tcp:// sparkMaster @ localhost:7077/user/Master ..

有人可以让我如何设置主网址.

Chr*_*erB 7

如果您正在使用https://github.com/awslabs/emr-bootstrap-actions/tree/master/spark中的引导操作,则会在YARN上为Spark设置配置.所以只需将master设置为yarn-clientyarn-cluster.确保定义具有内存和内核的执行程序的数量.有关Spark on YARN的详细信息,访问https://spark.apache.org/docs/latest/running-on-yarn.html

关于内存和核心大小的执行程序设置的添加:

看看默认YARN节点管理器CONFIGS为每种类型的http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/TaskConfiguration_H2.html,具体yarn.scheduler.maximum-allocation-mb.您可以从基本EC2信息URL(http://aws.amazon.com/ec2/instance-types/)确定核心数.执行程序内存的最大大小必须符合最大分配,减去Spark的开销,增量为256MB.有关此计算的详细说明,请访问http://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part-2/.不要忘记,执行程序内存的一半以上可以用于RDD缓存.

  • @ChristopherB非常感谢!新手后续问题.如果我想使用Java代码远程连接,我应该指定为master. (2认同)