Amazon ec2 工人无法连接到AWS EC2上的驱动程序
我的火花盘有问题。我已经在3台不同的ec2机器上建立了一个集群,当我试图在那里提交时,一切都正常。 我试图做的是使用Eclipse从我的Windows7机器提交。 当我在Eclipse上本地运行Pi.py示例时,它工作得很好。 我将向您展示我的代码,以便更容易理解:Amazon ec2 工人无法连接到AWS EC2上的驱动程序,amazon-ec2,apache-spark,pyspark,Amazon Ec2,Apache Spark,Pyspark,我的火花盘有问题。我已经在3台不同的ec2机器上建立了一个集群,当我试图在那里提交时,一切都正常。 我试图做的是使用Eclipse从我的Windows7机器提交。 当我在Eclipse上本地运行Pi.py示例时,它工作得很好。 我将向您展示我的代码,以便更容易理解: from __future__ import print_function import sys from random import random from operator import add from pyspark.co
from __future__ import print_function
import sys
from random import random
from operator import add
from pyspark.conf import SparkConf
from pyspark import SparkContext
if __name__ == "__main__":
"""
Usage: pi [partitions]
"""
conf = SparkConf()
conf.setMaster("spark://52.50.19.132:7077") #"52.50.19.132" is the master's
# public ip, as the private one didn't allow connection(don't know why...ssh?)
conf.setAppName("PythonPi")
conf.set("spark.executor.memory", "500m")
sc = SparkContext(conf=conf)
partitions = int(sys.argv[1]) if len(sys.argv) > 1 else 2
n = 100000 * partitions
def f(_):
x = random() * 2 - 1
y = random() * 2 - 1
return 1 if x ** 2 + y ** 2 < 1 else 0
count = sc.parallelize(range(1, n + 1), partitions).map(f).reduce(add)
print("Pi is roughly %f" % (4.0 * count / n))
sc.stop()
所以一开始我认为这是一个关闭的端口的问题,我打开了所有端口。但一切都没有改变。
我认为这是ssh连接的问题,但实际上我是通过Putty连接到ec2机器的,尽管我认为问题是另一个方面,我的意思是从ec2机器连接到Windows机器。
我还通过
netstat -an
如果出现一些问题,我发现ec2工作程序和我的Windows计算机之间发送了一个同步。
我希望您能帮助某些作业挂起,您的计划程序可以为新作业分配资源。检查是否有一些悬而未决的工作!在Spark Ui上,没有应用程序正在等待或运行,我为这个任务分配的内存相当小,所以它不会阻塞任何东西!我注意到,当我在主机上键入netstat-an时,我可以看到它使用公共Ip地址连接到Windows机器(主机)。我想“强制”工作人员也这样做,因此使用公共ip连接回Windows机器(驱动程序),但我找不到任何配置文件来执行此操作。你把我弄糊涂了!它是否在EC2上?master和2个Worker在3个不同的EC2实例上,驱动程序(我创建SparkContext的地方)是我的Windows机器。
netstat -an