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
中也遇到了这个错误答案 0 :(得分:1)
解决:Spark附带的嵌入式boto库找到了我为另一个非Spark项目提供的〜/ .boto配置文件(实际上它是针对Google Cloud Services ... GCS安装它,我忘记了它)。这搞砸了一切。
一旦我删除了安装了〜/ .boto配置文件的GCS,一切都开始为Spark工作了!