gpt4 book ai didi

apache-spark - 如何使用自签名证书保护的 S3 (Minio) 运行 Apache Spark?

转载 作者:行者123 更新时间:2023-12-04 15:30:36 28 4
gpt4 key购买 nike

我使用自签名证书安装了带有 TLS 的 Minio(我使用 helm 在 Kubernetes 中安装了 Minio)。以前,我可以在没有 TLS 的情况下使用 Minio 运行我的 spark 作业。
现在无法连接到 Minio(正常!)
然后,我从 tls 证书创建了一个信任库文件

keytool -import \
-alias tls \
-file tls.crt \
-keystore truststore.jks \
-storepass "$minioTruststorePass" \
-noprompt
我使用信任库的内容创建了一个 Kubernetes secret ,并在 spark-defaults.conf 中使用以下选项让 spark 使用信任库:
spark.kubernetes.driver.secrets.minio-truststore-secret
最后,我在 spark-defaults.conf 中做了以下所有更改,但同样的问题
spark.hadoop.fs.s3a.endpoint                                      https://smart-agriculture-minio:9000
spark.hadoop.fs.s3.awsAccessKeyId <s3aAccessKey>
spark.hadoop.fs.s3.awsSecretAccessKey <s3aSecretKey>
spark.hadoop.fs.s3.impl org.apache.hadoop.fs.s3a.S3AFileSystem
spark.hadoop.fs.s3a.access.key <s3aAccessKey>
spark.hadoop.fs.s3a.secret.key <s3aSecretKey>
spark.hadoop.fs.s3a.path.style.access true
spark.hadoop.fs.s3a.impl org.apache.hadoop.fs.s3a.S3AFileSystem
spark.hadoop.fs.s3a.connection.ssl.enabled true
spark.drive.extraJavaOptions -Djavax.net.ssl.trustStore=/opt/spark/conf/minio/truststore/truststore.jks -Djavax.net.ssl.trustStorePassword=<minioTruststorePass>
spark.executor.extraJavaOptions -Djavax.net.ssl.trustStore=/opt/spark/conf/minio/truststore/truststore.jks -Djavax.net.ssl.trustStorePassword=<minioTruststorePass>
你有没有遇到过这个问题,你有解决它的想法吗?
谢谢

最佳答案

很晚了,但我通过以下方式将 Hadoop S3/AWS 连接器导入到默认的 Java 信任库中,以使用自签名证书:

keytool -import -trustcacerts -alias certalias \
-noprompt -file /path/to/cert.crt \
-keystore $JAVA_HOME/jre/lib/security/cacerts \
-storepass changeit
changeit 是默认的 Java cacerts 密码。

关于apache-spark - 如何使用自签名证书保护的 S3 (Minio) 运行 Apache Spark?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61301704/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com