試圖創建表minio桶使用磚。
火花。sql(“創建數據庫管理如果不存在minio_db_1位置s3a: / /桶/ minio_db_1”);
我通過了s3配置使用火花上下文。
access_key =“XXXX”
secret_key = ' XXXXXXX '
sc._jsc.hadoopConfiguration()這裏(“fs.s3a.access。鍵”,access_key)
sc._jsc.hadoopConfiguration()這裏(“fs.s3a.secret。鍵”,secret_key)
sc._jsc.hadoopConfiguration()這裏(“fs.s3a。端點”、“http://my-ip: 9000”)
有了這個配置我能寫數據在s3中使用
df.write.format(“鋪”).save (“s3a: / /桶/文件路徑”);
但它拋出異常當我試圖創建表/數據庫;
火花。sql(“創建數據庫管理如果不存在minio_db_1位置s3a: / /桶/ minio_db_1”);
AnalysisException: org.apache.hadoop.hive.ql.metadata。HiveException: MetaException(信息:有例外:java.nio.file。AccessDeniedException s3a: / /我的/我的數據庫:getFileStatus s3a: / / test2 / minio_db_1: com.amazonaws.services.s3.model。AmazonS3Exception:禁止;要求:頭https://test2.s3.us -東- 1. - amazonaws.com3.3.4 minio_db_1 {} Hadoop, aws-sdk-java / 1.12.189 Linux / 5.4.0-1093-aws OpenJDK_64-Bit_Server_VM / 25.345 -b01 java / 1.8.0_345 scala / 2.12.14供應商/ Azul_Systems _Inc。cfg /重試模式/遺留com.amazonaws.services.s3.model.GetObjectMetadataRequest;請求ID: 6 ybeazy59eygaevb擴展請求ID: o + h6YBGczQmWsnFMW8kLGi + llJ + v3ysqoz05fnNYTH901 + ACgmi5x50dE2ekXbNrr3qQf81uOx8 =,雲提供商:AWS實例ID:我- 072 - d1969af3c17cb6(服務:Amazon S3;狀態碼:403;錯誤代碼:403禁止;請求ID: 6 ybeazy59eygaevb;S3擴展請求ID: o + h6YBGczQmWsnFMW8kLGi + llJ + v3ysqoz05fnNYTH901 + ACgmi5x50dE2ekXbNrr3qQf81uOx8 =;代理:null), S3請求ID: o + h6YBGczQmWsnFMW8kLGi + llJ + v3ysqoz05fnNYTH901 + ACgmi5x50dE2ekXbNrr3qQf81uOx8 =: 403禁止)
請求路由到s3a端點,但它的路由通用s3端點。晶石。sql不兌現火花上下文配置。
誰能請指出表創建的配置缺乏嗎?
嗨@Wasim Reza
為什麼fs.s3a。端點指向http://my-ip: 9000嗎?你能確認,如果這是正確的aws端點?
有沒有實例配置文件連接到集群?access-secret鍵以及實例配置文件可以混淆。
驗證權限AWS一側。
@Vivian威爾弗雷德我用Minio s3提供者,Minio api s3對照表它隻有不同的端點。