尝试使用spark-ec2脚本在EC2上启动集群时,是否存在错误的SSL密钥?

时间:2015-03-11 16:19:04

标签: apache-spark spark-ec2

Apache Spark的版本:spark-1.2.1-bin-hadoop2.4 平台:Ubuntu

我一直在使用spark-1.2.1-bin-hadoop2.4 / ec2 / spark-ec2脚本在ec2上创建临时集群进行测试。一切都运作良好。

然后我在尝试启动群集时开始出现以下错误:

  

[Errno 185090050] _ssl.c:344:错误:0B084002:x509证书例程:X509_load_cert_crl_file:system lib

我已将其追溯到spark_ec2.py脚本中的以下行:

  

conn = ec2.connect_to_region(opts.region)

因此,脚本第一次与ec2交互时,就会抛出此错误。 Spark正在使用Python boto库(包含在Spark下载中)来进行此调用。

我认为我得到的错误是因为某处有一个糟糕的cacert.pem文件。

我的问题:当我尝试调用spark-ec2脚本时,会使用哪个cacert.pem文件,为什么它不起作用?

我在spark-1.2.0-bin-hadoop2.4

中也遇到了这个错误

1 个答案:

答案 0 :(得分:1)

解决:Spark附带的嵌入式boto库找到了我为另一个非Spark项目提供的〜/ .boto配置文件(实际上它是针对Google Cloud Services ... GCS安装它,我忘记了它)。这搞砸了一切。

一旦我删除了安装了〜/ .boto配置文件的GCS,一切都开始为Spark工作了!