Невозможно получить доступ к корзине S3 с помощью Hadoop

Я пытаюсь получить доступ к своему S3 ведро с помощью Hadoop (2.7.3), и я получаю следующее

ubuntu@AWS:~/ Прототип /hadoop$ ubuntu@AWS:~/ Прототип /hadoop$ bin/hadoop fs -ls s3://[ведро] /

17/03/24 15:33:31 WARN util.NativeCodeLoader: Невозможно загрузить библиотеку native-hadoop для вашей платформы... с использованием встроенных java-классов, где это применимо -ls: фатальная внутренняя ошибка com.amazonaws.services.s3.model.AmazonS3Exception: Код состояния: 400, AWS служба: Amazon S3, AWS Запрос ID: 1FA2318A386330C0, AWS Код ошибки: нулевой, AWS Сообщение об ошибке: Bad Request, S3 Extended Request ID: 1S7Eq6s9YxUb9bPwyHP73clJvD619LZ2o0jE8VklMAA9jrKXPbvT7CG6nh0zeuluGrzybiPbgRQ= в com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:798) по адресу com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:421) по адресу com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java.s3.s. Com. At232) at.AmazonS3Client.invoke(AmazonS3Client.java:3528) на com.amazonaws.services.s3.AmazonS3Client.headBucket(AmazonS3Client.java:1031) на com.amazonaws.services.s3.AmazonS3Client.doesBucketExist(AmazonS3gg4).apache.hadoop.fs.s3a.S3AFileSystem.initialize(S3AFileSystem.java:297) в org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2669) в org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:94) в org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2703) в org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2685) в org.apache.hadoop.fs.FileSystem.get(FileSystem.java:373) в org.apache.hadoop.fs.Path.getFileSystem(Path.java:295) в org.apache.hadoop.fs.shell.PathData.expandAsGlob(PathData.java:325) в org.apache.hadoop.fs.shell.Command.expandArgument(Command.java:235) в org.apache.hadoop.fs.shell.Command.expandArguments(Command.java:218) в org.apache.hadoop.fs.shell.Command.processRawArguments(Command.java:201) в org.apache.hadoop.fs.shell.Command.run(Command.java:165) в org.apache.hadoop.fs.FsShell.run(FsShell.java:287) в org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) в org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84) в org.apache.hadoop.fs.FsShell.main(FsShell.java:340) ubu NTU @AWS:~/Prototype/ Hadoop $

конф-site.xml:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>s3://[ Bucket ]</value>
    </property>

    <property>
            <name>fs.s3a.endpoint</name>
            <value>s3.eu-central-1.amazonaws.com</value>
    </property>

    <property>
        <name>fs.s3a.access.key</name>
        <value>[ Access Key Id ]</value>
    </property>

    <property>
        <name>fs.s3a.secret.key</name>
        <value>[ Secret Access Key ]</value>
    </property>

    <property>
        <name>fs.s3.awsAccessKeyId</name>
        <value>[ Access Key Id ]</value>
    </property>

    <property>
        <name>fs.s3.awsSecretAccessKey</name>
        <value>[ Secret Access Key ]</value>
    </property>

    <property>
        <name>fs.s3n.awsAccessKeyId</name>
        <value>[ Access Key Id ]</value>
    </property>

    <property>
        <name>fs.s3n.awsSecretAccessKey</name>
        <value>[ Secret Access Key ]</value>
    </property>

    <property>
        <name>fs.s3.impl</name>
        <value>org.apache.hadoop.fs.s3a.S3AFileSystem</value>
    </property>

    <!-- Comma separated list of local directories used to buffer
         large results prior to transmitting them to S3. -->
    <property>
        <name>fs.s3.buffer.dir</name>
        <value>/tmp</value>
    </property>
</configuration>

Кто-нибудь знает в чем проблема?

Редактировать: ведро и виртуальные машины, имеющие к нему доступ, находятся во Франкфурте. Это похоже на https://docs.hortonworks.com/HDPDocuments/HDCloudAWS/HDCloudAWS-1.8.0/bk_hdcloud-aws/content/s3-trouble/index.html но после добавления конечной точки все равно это не работает.

1 ответ

Решение

Похоже, проблема с аутентификацией в V4, которую свойство fs.s3a.endpoint должно было исправить,

Проблемы с часами также могут вызвать проблемы. Проверьте время Joda и убедитесь, что на всех ваших машинах произошла смена часов на этих выходных.

Попробуйте также захватить Hadoop 2.8.0 RC3 и посмотреть, исчезла ли тогда проблема. Если это все еще там, это версия, чтобы обратиться за помощью в списках Apache.

Другие вопросы по тегам