繁体   English   中英

当 MLFlow 尝试访问存储在 S3 上的人工制品时,获取“(InvalidToken)调用 ListObjectsV2 操作时”

[英]Getting "(InvalidToken) when calling the ListObjectsV2 operation" when MLFlow is trying to access the artefacts stored on S3

我正在尝试使用以下命令在 python 虚拟环境中的本地计算机上启动 MLFlow 服务器:

mlflow server --backend-store-uri postgresql://mlflow_user:mlflow@localhost/mlflow  --artifacts-destination S3://<S3 bucket name>/mlflow/ --serve-artifacts  -h 0.0.0.0 -p 8000

我在激活的 python venv中导出了以下环境变量:

export AWS_ACCESS_KEY_ID=<access key>
export AWS_SECRET_ACCESS_KEY=<secret key>
export DEFAULT_REGION_NAME=<region name>
export DEFAULT_OUTPUT_FORMAT=<output format>

MLFlow 在访问所有运行的 model 工件时出现以下错误:

botocore.exceptions.ClientError: An error occurred (InvalidToken) when calling the ListObjectsV2 operation: The provided token is malformed or otherwise invalid.

有什么解决方法吗?

根据 Boto3 官方文档中的环境变量部分,设置AWS_SESSION_TOKEN也是必要的。

参考 Stack Overflow 用户@Francis Lewis 添加的这个答案,我只是在激活的 python 环境中重置了 AWS 访问令牌,如下所示:

export AWS_SESSION_TOKEN=""

问题就解决了。 感谢@Francis Lewis!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM