S3 kann nicht mit der S3A-Pyspark-Konfiguration authentifiziert werden. Ich möchte, dass der Code in EMR funktioniert, u
Posted: 19 Jan 2025, 20:54
Fehler: org.apache.hadoop.fs.s3a.auth.NoAuthWithAWSException: Keine AWS-Anmeldeinformationen bereitgestellt von TemporaryAWSCredentialsProvider SimpleAWSCredentialsProvider EnvironmentVariableCredentialsProvider IAMInstanceCredentialsProvider: com.amazonaws.SdkClientException: AWS-Anmeldeinformationen können nicht aus Umgebungsvariablen geladen werden (AWS_ACCESS_KEY_ID (oder AWS_ACCESS_KEY) und AWS_SECRET_KEY (oder AWS_SECRET_ACCESS_KEY))
In der Produktion ist eine harte Codierung des Zugriffs und des geheimen Schlüssels nicht zulässig, was zur Folge hat Ich habe entweder diesen Ansatz, den Zugriff über .aws
Code: Select all
.config("spark.hadoop.fs.s3a.aws.credentials.provider",
"com.amazonaws.auth.profile.DefaultAWSCredentialsProviderChain")
.config("spark.hadoop.fs.s3a.access.key",
AWSHandler.get_session(Constant.aws_sso_profile).get_credentials().access_key)
.config("spark.hadoop.fs.s3a.secret.key",
AWSHandler.get_session(Constant.aws_sso_profile).get_credentials().secret_key)
.config("spark.hadoop.fs.s3a.impl", "org.apache.hadoop.fs.s3a.S3AFileSystem")
.config('spark.executor.instances', 4).getOrCreate()
)
return spark
In der Produktion ist eine harte Codierung des Zugriffs und des geheimen Schlüssels nicht zulässig, was zur Folge hat Ich habe entweder diesen Ansatz, den Zugriff über .aws