首页 文章

Dask Distributed无法找到凭据

提问于
浏览
2

我无法使用数据框读取来访问S3上的文件:df_read_csv . 我收到错误: Exception: Unable to locate credentials

当我的dask分布式针对本地工作者核心运行时,这很好 . 但是,当我使用其他工作服务器群集导入客户端时,它会失败 . 我的集群是在ubuntu上使用dask-ec2在头服务器上使用1个调度程序和3个工作服务器(所有ubuntu)创建的 .

我假设失败是因为所有工作人员也需要访问S3 . 我已经在所有这些上安装了aws cli并使用我的密钥连接,并且可以列出cli中的S3存储桶 . 但是,出于某种原因,我的数据帧读取会抛出一个ubuntu错误,说boto无法找到凭据

我已经浏览了各种帖子,但似乎找不到任何有用的东西 . 这是错误的屏幕截图:

Error

1 回答

  • 0

    嗨马特你应该添加 keysecretstorage_options . 在我的情况下,我将它们保存在settings.py上

    import dask.dataframe as dd
    import settings
    
    df = dd.read_csv("s3://gra-dask-ec2/us_cities.csv",
                      storage_options={'key': settings.AWS_ACCESS_KEY_ID,
                                       'secret': settings.AWS_SECRET_ACCESS_KEY})
    

相关问题