2016-05-13 41 views
0

我想运行我的Spark任务,使用Amazon EC2实例,我知道他们的所有IP。在四台机器上安装Spark

我想有一台计算机作为主,其他三个可以运行工人节点..有人可以帮助我如何配置此任务的火花..应该是独立的吗?我知道如何设置主节点使用

setMaster(“SPARK:// masterIP:7070”);

但如何定义工作节点并将它们分配给上述主节点?

回答

0

如果要配置你火花集群手动你可以通过执行启动一个独立的主服务器:

./sbin/start-master.sh

一旦启动,主人将打印出一个spark:// HOST:PORT它自己的URL,您可以使用它将工作人员连接到它,或者作为“主”参数传递给SparkContext。您还可以在主设备的Web UI上找到此URL,默认为http://localhost:8080

增加员工:

现在你可以开始一个或多个工人,他们通过连接到主:

./sbin/start-slave.sh

启动工作人员后,查看主人的网络用户界面(默认为http://localhost:8080)。您应该看到那里列出的新节点以及CPU和内存的数量(减去操作系统剩余的1 GB)。

获取更多信息,您可以检查火花塞网站starting-a-cluster-manually

编辑

TO RUN工人MASTER

要启动与启动脚本星火独立的集群,您应该创建一个文件在您的Spark目录中名为conf/slave,其中必须包含所有机器的主机名称您打算启动Spark工作人员,每行一个。请注意,主机通过ssh访问每个工作机(在主机和工作机之间应该有密码ssh)。

配置的conf后/奴隶文件,你应该运行两个文件:

sbin目录/ start-master.sh - 执行针对 脚本的机器上启动一个主实例。

sbin/start-slaves.sh - 在conf/slaves文件中指定的每台机器 上启动一个从机实例。

欲了解更多信息检查Cluster Launch Scripts

+0

喜Thnaks的答复,我有anotehr的问题,我现在设定星火主并启动,但我想开始我的工作人员(如我使用的Java API),我想编写一个单独的应用程序来启动Spark worker(通过设置工作IP),但是如何使用API​​来完成它们,我的意思是我可以从主节点或驱动程序节点运行Spark工作站,然后通过API设置它们的IP地址 – Luckylukee

+0

I已经编辑我的,包括你问什么 –

+0

嗨我可以如何运行代码上面的任务,我的Java应用程序需要运行两个工作节点读取两个separted大文件..每个节点然后必须运行在separted机器上,我有tota l 3台机器之一是主人,另外两个人是工人,我不知道从哪个机器运行代码(mastre node?)我已经在我的代码下面加上了 – Luckylukee

相关问题