使用 Amazon EMR 中的 Hue S3 文件浏览器时,无法访问 S3 存储桶

上次更新时间:2020 年 7 月 14 日

我正在使用 Hue (Hadoop User Experience) 访问 Amazon EMR 集群上的 Amazon Simple Storage Service (Amazon S3) 存储桶。我收到了下面的一条错误消息:

  • 没有文件与搜索条件匹配。
  • 无法访问路径 "s3a://awsdoc-example-bucket.hue1":主机名 u'awsdoc-example-bucket.hue1.s3.amazonaws.com' 与 '*.s3.amazonaws.com'、's3.amazonaws.com' 都不匹配
  • 无法检索存储桶:主机名 u'awsdoc-example-bucket.hue1.s3.amazonaws.com' 与 '*.s3.amazonaws.com'、's3.amazonaws.com' 都不匹配

简短描述

Hue 默认的 Amazon S3 调用格式为 https://awsdoc-example-bucket.s3.amazonaws.com。如果 S3 存储桶名称包含点 (.),则部分存储桶名称会包含在 Amazon S3 终端节点中。例如,如果存储桶的名称为 awsdoc-example-bucket.hue,那么 Hue 会将 hue.s3.amazonaws.com 而不是 s3.amazonaws.com 视为 Amazon S3 终端节点。

解决方法

要解决此错误,请将终端节点格式更改为 https://s3.amazonaws.com/awsdoc-example-bucket。使用此格式后,您可以在存储桶名称中拥有任意数量的点。

1.    打开 /etc/boto.cfg 文件。

2.    将以下行添加到 boto.cfg 文件:

[s3]
calling_format=boto.s3.connection.OrdinaryCallingFormat

3.    重新启动 Hue 服务:

$ sudo stop hue
$ sudo start hue

这篇文章对您有帮助吗?


您是否需要账单或技术支持?