Great Expectations访问Minio桶时遇AWS Access Key不存在错误求助
解决Great Expectations连接Minio时的AWS密钥错误
针对你遇到的"The AWS Access Key Id you provided does not exist in our records"错误,可按以下步骤排查修复:
1. 添加region_name配置
Minio需要明确指定region名称,即使是本地部署。在boto3_options中添加region_name字段,通常设为us-east-1即可:
boto3_options: endpoint_url: http://127.0.0.1:9000/ aws_access_key_id: admin aws_secret_access_key: admin12345 region_name: us-east-1
2. 显式指定签名版本
Minio默认使用S3 v4签名,可在boto3_options中添加签名版本配置,确保与Minio兼容:
boto3_options: endpoint_url: http://127.0.0.1:9000/ aws_access_key_id: admin aws_secret_access_key: admin12345 region_name: us-east-1 config: signature_version: s3v4
3. 检查环境变量干扰
Great Expectations会优先读取系统环境变量中的AWS密钥(AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY),如果环境变量中的值和你配置的不一致,会导致验证失败。可以临时清空这些环境变量后重试:
unset AWS_ACCESS_KEY_ID unset AWS_SECRET_ACCESS_KEY
4. 验证存储桶名称和路径
确认配置中的bucket: datalake-landing名称完全正确,包括大小写(Minio默认区分存储桶名称大小写),同时确保存储桶内确实存在符合(.*)\.csv正则的文件。
5. 检查Great Expectations版本兼容性
部分旧版本的GE在处理Minio的S3兼容存储时存在配置问题,建议升级到较新的稳定版本:
pip install --upgrade great-expectations
内容的提问来源于stack exchange,提问作者Tais Nayara
相关产品推荐
相关产品推荐

