Программный доступ к Walrus (Java) с помощью AWS S3 SDK / JetS3t

Я искал способы получить доступ к Walrus (Eucalyptus), используя AWS SDK для Java. Я знаком с использованием AWS SDK для программного подключения к Amazon S3 с использованием моих учетных данных AWS. Однако когда я прогуглил Google, чтобы проверить, доступен ли Walrus с помощью AWS SDK, я узнал, что есть проблемы, и единственный выход - использовать вместо этого JetS3t.

Кто-нибудь играл с JetS3t и Walrus раньше?
Является ли JetS3t надежным решением?
Могу ли я отразить все, что я могу сделать в AWS SDK против S3, с JetS3t и Walrus?

Заранее спасибо.

3 ответа

Вы можете использовать тот же самый точный код для доступа к своему моржу, что и s3. Однако вам нужно будет указать jets3t на свой экземпляр walrus, включив в свою сборку правильно отредактированный файл jets3t.properties.

Я использовал AWS SDK, и он прекрасно работал для меня. Вот пример кода, который я написал для загрузки файла с моего локального диска в Walrus. Надеюсь, что вы найдете ее полезной.

    AmazonS3 s3 = new AmazonS3Client(new AWSCredentials() {
        @Override
        public String getAWSSecretKey() {
            return "G0WewmHyE5KYaGcVWvSAQrsBsPnJb2qQOPIIc74h";
        }

        @Override
        public String getAWSAccessKeyId() {
            return "4OFCOBFGPGVINNR7H6TMG";
        }
    });
    s3.setEndpoint("http://10.14.99.97:8773/services/Walrus/");
    byte[] bytes = convertToByteArray("/home/harshit/Desktop/poster.jpg"); // function written by me for extracting byte stream out of a local file
    ByteArrayInputStream is = new ByteArrayInputStream(bytes);
    PutObjectRequest request = new PutObjectRequest("skg", "foo.jpg", is, metaData);
    s3.putObject(request);

Я знаю, что это старый вопрос, заданный давным-давно, но я хотел бы вкратце рассказать, что AWS JAVA SDK 1.4.0 работает с Walrus, если вы ищете пример кода, который объясняет, как мы могли бы использовать AWS JAVA SDK 1.4.0 против моржа, пожалуйста, смотрите

https://gist.github.com/jeevanullas/5351730

Это прекрасно работает против Eucalyptus 3.2.2 (текущий стабильный выпуск) и 3.3.0 (текущий выпуск для разработки)

Надеюсь, это было полезно.

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