S3 호환 가능 오브젝트 스토리지 시스템


14

거의 100 % Amazon S3 RESTful API 호환 객체 스토리지 시스템을 경험 한 사람이 있습니까?

내가 좋아하는 것은 적절한 인증 으로 저장 ( PUT), 검색 ( GET), stat ( HEAD) 및 삭제 ( DELETE) 할 수있는 Amazon S3 스타일 RESTful API를 제공하는 모든 (바람직하게는 POSIX) 파일 시스템 위에있는 레이어입니다 .

상업 프로젝트 / 아이디어도 환영합니다.

노트:

나는 지금까지 유칼립투스적운을 시도했습니다 . 유칼립투스는 맹목적으로 S3 호환이라고 부르는 것 같습니다. 응답 XML 문서는 전혀 호환되지 않으며 XML 문서가없는 특정 장소에서는 패치가 가능합니다. Cumulus는 응답 문서를 상당히 유사하게 유지했지만 데이터 무결성에 대해 잊어 버린 것 같습니다!

유칼립투스와 적운은 Amazon S3가 제공하는 무결성 검증을 지원하지 않습니다. S3로 수행 할 수있는 작업은 PUT 요청과 함께 Base64 (MD5 (FILE))를 제공 할 수 있으며 S3가 성공으로 응답하기 전에 S3에 의해 확인됩니다. 유칼립투스와 적운은 이것을 지원하지 않습니다. 유칼립투스를 사용하면 응답 문서에 제공된 MD5 (S3 호환 동작 아님)를 확인하여이 문제를 해결할 수 있습니다. 적운에서는 (S3와 같은) 아무것도 응답하지 않으므로 불가능합니다. Cumulus는 HEAD요청에 ETag를 제공하지 않아 더욱 악화됩니다 .

답변:


3

Swift 는 OpenStack의 객체 스토리지 엔진이며 2011 년 2 월 Bexar 릴리즈에서 실험적인 S3 호환 미들웨어를 주장합니다. OpenStack이 많은 주목을 받고 있기 때문에 (예를 들어, 정식은 Ubuntu를 이번 10 월 유칼립투스로 옮기고 있습니다) 살펴볼 가치가 있습니다.


3

결국, 나는 유칼립투스 해마로 나아가 야했습니다. 결국 나는 근본적인 문제를 발견했지만 모두 가능한 해결 방법이있었습니다.

소중한 의견을 보내 주셔서 감사합니다!


2

[면책 조항 : 나는 Scality를 위해 일한다]

Amazon은 AWS 제품을 적극적으로 사용하며 API를 자주 추가 및 변경 / 개선합니다. 그런 다음 거의 100 % 호환 제품을 찾기가 어렵습니다 (특히 상용 제품의 경우 OSS 제품이 변경에 더 반응 할 수 있음). 많은 객체 / 클라우드 스토리지 공급 업체가 한동안 자체 프로토콜을 사용해 왔지만 (Atmos, DDN은 OpenStack의 신속한 솔루션입니다.) 대부분 S3만큼 널리 사용되는 자체 프로토콜에 대한 아이디어를 포기했습니다. 그들은 지금 또는 앞으로 몇 달 안에 S3 호환 인터페이스를 발표합니다 (거의?). 사실상 모든 업계 표준을 따릅니다. 표준화 된 특성과 비영리, 비 공급 업체 조직인 SNIA에서 온 사실 때문에 CDMI가 유일하게 남아있을 수 있습니다. 그러나 그것은

S3 호환 인터페이스가있는 한 Mezeo, 언급 한 것 (Eucalyptus 및 Cumulus), OpenStack (아직 내가 믿지는 않지만)과 같은 몇 가지 옵션이 있습니다. 비결은 그중 하나입니다.

Scality의 S3 구현 (RS2-REST Storage Service라고 함)은 요청 / 응답이 S3에서 얻은 것과 일치한다는 점에서 S3에 매우 가깝습니다. S3의 인프라와 관련된 일부 기능은 명백한 이유로 존재하지 않습니다 (예 : 지역 선택). 그러나 필요한 명령은 다음과 같습니다. GET / PUT / DELETE 객체, 버킷 생성 및 목록; S3처럼 반응합니다.

두 번째 문제에 답하기 위해 Scality의 제품인 RING은 RING에 저장된 모든 객체의 체크섬 및 백그라운드 무결성 검사를 통해 참조하는 데이터 무결성 문제를 해결하는 소프트웨어 객체 스토리지 플랫폼이라는 점을 덧붙입니다. 객체 저장은 기본적으로 트랜잭션 쿼리이며 일단 객체가 "성공적으로 저장되었다"고 주장되면 지속적인 무결성 검사 (예 : 모든 읽기에서)를 통해 영원히 유지됩니다.

자세한 내용은 다루지 않겠습니다. 웹 사이트를 방문하여 일반적인 데이터 관리 악몽에서 스토리지 관리자를 완화하고 밤에 데이터를 사용할 수 있음을 알도록하는 방법을 이해할 수 있습니다. 항상. :)

최고, Marc Villemade @mastachand


2

Newdream의 Ceph에는 Ceph 파일 시스템 자체와 동일한 객체 스토리지 시스템을 사용하는 S3 호환 fastcgi 게이트웨이가 있습니다. ( http://ceph.newdream.net/wiki/RADOS_Gateway ) 여전히 프로덕션 준비가되지 않았지만 정기적으로 업데이트합니다.

필자가 사용한 s3 라이브러리와 호환되지 않거나 클라우드 파일 스토리지 서비스 (자체 버전의 신속한 버전을 사용하는)에 대한 랙 공간의 자체 Java 클라이언트와 호환되지 않지만 테스트에서 Openstack의 객체 저장소가 더 안정적이라는 것을 알았습니다. s3과 Swift를 모두 지원하는 jclouds 프로젝트가 저에게 효과적이었습니다.


2

Cloud Foundry vBlob을 볼 수도 있습니다. https://github.com/cloudfoundry/vblob

VM이 "볼 수있는"파일 시스템 위에 S3 프로토콜의 공정한 청크를 구현하는 node.js 앱 (CF 통합을위한 Ruby 래퍼 포함)입니다.


1

s3ql (GNU GPL V3)과 s3backer (GNU GPL v2를) 당신이 찾고있는 무엇.


1
션; 스토리지와 상호 작용할 클라이언트 라이브러리 나 클라이언트를 찾고 있지 않습니다. 서버 자체에 더 관심이 있습니다.
CodeMedic

1

올드 / 대답 질문,하지만 https://github.com/basho/riak_cs은 단지에 오픈 소스 화했다 https://github.com/basho/riak_cs :. "Riak CS는 Riak의 상단에 내장 객체 저장 시스템이 용이 큰 객체를 Riak에 저장하고 S3 호환 인터페이스를 제공합니다. 또한 사용자 계정, 인증, 액세스 제어 메커니즘 및 계정 별 사용량보고와 같은 다중 테넌트 기능도 제공합니다. "


1

위의 많은 옵션을 여전히 가지고 있다고 확신하지만 OpenSource Object Storage 인 OpenStack Swift를 확인하고 S3 호환 API를 지원합니다. Rackspace, Hpcloud Korea Telecom 및 기타 여러 제품의 객체 스토리지 솔루션으로 사용됩니다.

설명서 http://docs.openstack.org/developer/swift/related_projects.html Swift3 https://github.com/fujita/swift3 OpenStack Swift 용 Swift3 미들웨어로 Amazon S3 API를 통해 OpenStack swift에 액세스 할 수 있습니다.

도움이 되길 바랍니다.


-3

[면책 조항 : Cloudian에서 일합니다]

Cloudian HyperStore 객체 스토리지 소프트웨어는 100 % Amazon S3 API와 호환됩니다. 오류 코드와 Amazon S3의 모든 기능에 이르기까지 모든 S3 API를 구현합니다.

Cloudian HyperStore는 멀티 파트 업로드, 객체 버전 관리, S3 호환 ACL, S3 및 Glacier 자동 계층화, S3 CORS (Cross-Origin Resource Sharing), S3 인코딩 유형, 위치 제약 조건 등을 지원합니다.

Cloudian을 사용하면 PUT 요청과 함께 Base64 (MD5 (FILE))를 제공 할 수 있습니다. 그런 다음 성공으로 응답하기 전에 확인됩니다.

자세한 내용은이 블로그 게시물 http://www.cloudian.com/blog/?p=64 및 Cloudian 웹 사이트 http://www.cloudian.com/products/cloudian-hyperstore.php를 확인 하십시오.


-4

s3fs 를 체크 아웃 습니까? 그것은 당신이 원하는 MD5 검사 ( http://code.google.com/p/s3fs/issues/detail?id=37&q=md5 ) 기능을 제공하지 않지만 이것을 구현하는 것이 어렵지 않을 것이라고 생각합니다. 주목할 점은 결국 일관성이 있다는 것입니다.


2
S3FS는 포스터가 원하는 것과 반대 순서입니다. 파일 시스템을 S3 버킷으로 만듭니다. OP는 파일 시스템에서 S3 버킷을 만들려고합니다.
crb
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.