1.确保代码里有对应的spark set 认证信息

spark.sparkContext.hadoopConfiguration.set("fs.s3a.endpoint", "your endpoint")

spark.sparkContext.hadoopConfiguration.set("fs.s3a.access.key", "your accessKeyId")

spark.sparkContext.hadoopConfiguration.set("fs.s3a.secret.key", "your secretAccessKey")

spark.sparkContext.hadoopConfiguration.set("fs.s3a.impl", "org.apache.hadoop.fs.s3a.S3AFileSystem")

2.添加s3版本配置 

在spark-defaults.conf里或者spark submit的时候添加如下参数
spark.executor.extraJavaOptions=-Dcom.amazonaws.services.s3.enableV4=true
spark.driver.extraJavaOptions=-Dcom.amazonaws.services.s3.enableV4=true
或者
import com.amazonaws.SDKGlobalConfiguration

System.setProperty(SDKGlobalConfiguration.ENABLE_S3_SIGV4_SYSTEM_PROPERTY, "true")
或者

spark.sparkContext.hadoopConfiguration.set("com.amazonaws.services.s3.enableV4", "true")


 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐