Amazon EMR で Hue S3 ファイルブラウザを使用しているときに S3 バケットにアクセスできないのはなぜですか。

最終更新日: 2022 年 1 月 11 日

Hue (Hadoop User Experience) を使用して、Amazon EMR クラスターの Amazon Simple Storage Service (Amazon S3) バケットにアクセスしています。次のいずれかのエラーメッセージが表示されています。

  • 検索条件に一致するファイルはありません。
  • パス「s3a://awsdoc-example-bucket.hue1」へのアクセスに失敗しました。ホスト名「awsdoc-example-bucket.hue1.s3.amazonaws.com」は「*.s3.amazonaws.com」または「s3.amazonaws.com」のいずれかに一致しません
  • バケットの取得に失敗しました。ホスト名「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.coms3.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 サービスを再起動します。

5.30 より前の Amazon EMR バージョンの場合:

$ sudo stop hue
$ sudo start hue

Amazon EMR バージョン 5.30 以降の場合:

$ sudo systemctl restart hue

この記事は役に立ちましたか。


請求に関するサポートまたは技術サポートが必要ですか?