【发布时间】:2021-02-13 21:41:14
【问题描述】:
我在 EKS 上运行 Jupyterhub,并希望利用 EKS IRSA 功能在 K8s 上运行 Spark 工作负载。我之前有过使用 Kube2IAM 的经验,但现在我打算转向 IRSA。
这个错误不是因为 IRSA,因为服务帐户可以很好地连接到 Driver 和 Executor pod,我可以通过 CLI 和 SDK 从两者访问 S3。此问题与在 Spark 3.0/Hadoop 3.2 上使用 Spark 访问 S3 相关
Py4JJavaError:调用 None.org.apache.spark.api.java.JavaSparkContext 时出错。 : java.lang.NoClassDefFoundError: com/amazonaws/services/s3/model/MultiObjectDeleteException
我正在使用以下版本 -
- APACHE_SPARK_VERSION=3.0.1
- HADOOP_VERSION=3.2
- aws-java-sdk-1.11.890
- hadoop-aws-3.2.0
- Python 3.7.3
我也测试了不同的版本。
- aws-java-sdk-1.11.563.jar
如果有人遇到此问题,请帮助提供解决方案。
PS:这也不是 IAM 政策错误,因为 IAM 政策非常好。
【问题讨论】:
标签: apache-spark hadoop amazon-s3 amazon-eks