Amazon S3에서 RSYNC 사용 [닫기]


39

Amazon S3를 사용하여 ~ 100gb 서버 이미지를 백업하는 데 관심이 있습니다 (Acronis 백업 도구를 통해 생성됨)

분명히, 매일 밤 S3에 업로드하는 것은 대역폭과 비용면에서 비쌀 것입니다. S3에서 rsync 사용을 고려하고 있으며 s3rsync발견했습니다. 아무도 이것이나 다른 유틸리티를 사용한 경험이 있는지 궁금합니다.


1
s3rsync에서 주목 한 것은 현재 10GB 버킷 크기로 제한되어 있다는 것입니다 (FAQ 확인). 여러 개의 버킷을 가질 수 있지만 데이터를 10GB 청크로 분할해야합니다.
dana

답변:


35

최근 Google 에서이 스레드를 우연히 발견했으며 질문이 제기 된 이후 풍경이 약간 변경 된 것처럼 보입니다. 여기에 제안 된 대부분의 솔루션은 더 이상 유지 관리되지 않거나 상용화되었습니다.

FUSE와 함께 일하는 일부 좌절과 다른 솔루션 중 일부는 Python을 사용하여 S3 및 Google 스토리지에 대한 자체 명령 줄 rsync "clone"을 작성하기로 결정했습니다.

GitHub에서 프로젝트를 확인할 수 있습니다 : http://github.com/seedifferently/boto_rsync

내가 최근에 알게 된 또 다른 프로젝트는 "이중성"입니다. 좀 더 정교하게 보이고 여기에서 찾을 수 있습니다 : http://duplicity.nongnu.org/

도움이 되었기를 바랍니다.

최신 정보

AWS의 Python 팀은 클라우드 서비스를위한 보토 기반 CLI 프로젝트를 위해 열심히 노력하고 있습니다. 포함 된 도구 중에는 boto-rsync가 제공하는 대부분의 기능을 복제 (및 여러 가지 방법으로 대체)하는 S3 용 인터페이스가 있습니다.

https://github.com/aws/aws-cli

특히, sync명령은 rsync와 거의 동일하게 작동하도록 구성 할 수 있습니다.

http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html


큰 기여! 감사합니다. 코드를 곧 보내 드리겠습니다. 파이썬 / 장고 학습을위한 필수 자료가 있습니까? 건배
iainlbc

프로그램이 S3cmd 및 S3sync와 비교하여 어떤 장점 / 차이가 있습니까?
James McMahon

@JamesMcMahon s3cmd / s3sync는 S3 (버킷 관리, 목록 내용 등)에 대한 모든 기능을 갖춘 CLI이며, boto-rsync는 rsync를 모방하려는 시도입니다.
세스

s3fs 퓨즈가 있습니다 : github.com/s3fs-fuse/s3fs-fuse 는 꽤 훌륭하게 작동하고 rsync와 결합 할 수 있지만 얼마나 효율적인지는 확실하지 않습니다.
Stanislav

"sync 명령이 rsync와 거의 동일하게 작동하도록 구성 할 수있는 방법"을 설명 할 수 있다면 정말 좋을 것입니다.
trusktr

10

또한 S3cmdS3sync 와 함께 행운을 얻었 습니다 . 둘 다 무료입니다.


S3cmd의 경우 +1 -.-
fnkr

S3cmd는 큰 파일 번호 (> 300k 파일)에 문제가 있습니다. 작업 메모리의 100k 파일 당 약 1gig를 소비하므로 이러한 제한을 명심해야합니다.
Tuxie

7

Acronis 이미지 생성 방법에 따라 rsync가 대역폭을 절약 할 수 있는지 확신 할 수 없습니다. Acronis 이미지는 단일 파일이므로 rsync는 이미지를 읽어서 변경된 내용 만 백업 할 수는 없습니다. 또한 어떤 종류의 서버 이미지를 만들고 있는지 확실하지 않지만 100GB를 말한 이후 전체를 사용한다고 가정합니까? 증분 이미지는 야간 이미지 크기를 크게 줄여 대역폭을 절약합니다. 테이프 미디어와 같은 S3가 아닌 다른 위치에 이미지를 저장하고 오프 사이트에 저장하는 것도 고려할 수 있습니다.


4
아니요, rsync는 그렇게 작동하지 않습니다. 모든 파일 형식에서 작동하며 파일 내부의 동기화에 대한 지식이 필요하지 않습니다. 대신 파일 청크의 해시를 비교하고 다른 청크 만 전송합니다. en.wikipedia.org/wiki/Rsync
Alan Donnelly

2
이미지 내부의 파일을 조금만 변경해도 압축으로 인해 전체 파일이 변경되므로 척이 일치하지 않습니다. 압축이 해제 된 경우에도 이미지 내부의 파일 순서가 변경 될 수 있고 덩어리를 찾기보다는 롤링 기준으로 일치하기 때문에 재 동기화가 잘 될지 확신하지 못합니다.
JamesRyan

4

나는 S3rsync를 시도하지 않았다.

오프 사이트 백업에 이중성을 사용하고 있습니다. S3에서 증분 백업을 지원하지만 파일 수정으로 인해 전체 새 파일을 다시 업로드해야하는 Amazon S3 스토리지 프로토콜로 인해 대역폭이 실제로 절약되지는 않습니다. 어쨌든 이중성은 마지막 증분 백업과의 차이점 만 업로드합니다.

Duplicity를 사용하면 S3sync처럼 다른 서버를 거치지 않아도되지만 데이터를 암호화하면 S3sync를 사용해 볼 가치가 있습니다.


1

S3에는 또한 AWS Import / Export라는 애드온 서비스가있어 초기 100Gb 데이터 세트가 포함 된 USB 드라이브를 전송할 수 있으며, 데이터 센터의 일부 백엔드 도구를 사용하여 S3 클라우드에로드 할 수 있습니다. 100Gb가 설치되면 매일 밤 차등 백업을 수행하여 변경된 모든 것을 백업 할 수 있습니다.

이 사이트는 http://aws.amazon.com/importexport/입니다.

대부분의 데이터가 상당히 정적 인 경우 이것은 100Gb의 전체 데이터가 매일 바뀌면 도움이되지 않는 좋은 옵션입니다.


3
그들이 128Gb 플래시 드라이브를 "로드"한다고 어떻게 생각하십니까? 세계 최대의 USB 허브, USB 커넥터의 바닥에서 천장까지의 패치 패널, 고객이 제공 한 플래시 드라이브의 3/4 전체가 모두 단일 블레이드 서버의 후면에 들어가는 것을 상상해보십시오.
Paul

이 얼마나 이미지! 실제로 자신의 PC에 연결된 세계 최대의 USB 허브가있는 데이터 센터의 어두운 구석에있는 가난한 사람이있을 것입니다. :)
monkeymagic

0

minio client 일명 "mc"를 사용해 볼 수 있습니다 . mc는 Amazon S3 호환 클라우드 스토리지 및 파일 시스템과 함께 작동하는 최소한의 도구를 제공합니다.

mc는 다음 명령을 구현합니다.

  ls        List files and folders.
  mb        Make a bucket or folder.
  cat       Display contents of a file.
  pipe      Write contents of stdin to one or more targets. When no target is specified, it writes to stdout.
  share     Generate URL for sharing.
  cp        Copy one or more objects to a target.
  mirror    Mirror folders recursively from a single source to many destinations.
  diff      Compute differences between two folders.
  rm        Remove file or bucket [WARNING: Use with care].
  access    Manage bucket access permissions.
  session   Manage saved sessions of cp and mirror operations.
  config    Manage configuration file.
  update    Check for a new software update.
  version   Print version.

미러 명령을 사용하여 작업을 수행 할 수 있습니다. "localdir"은 로컬 디렉토리 및 S3 [Alias ​​S3의 별칭] 및 S3에있는 버킷의 "remoteDir"이름입니다.

$ mc mirror localdir/ S3/remoteDir

같은 것을 위해 cronjob을 작성할 수도 있습니다. 또한 네트워크 장애가 발생할 경우 "$ mc session"을 사용하여 특정 시간부터 업로드를 다시 시작할 수 있습니다.

추신 : 나는 minio 프로젝트에 기여하고 당신의 피드백과 기여를 얻고 싶습니다. 도움이 되길 바랍니다.


-1

새로운 Jungle Disk Server Edition (베타)이 유용 할 것입니다. 블록 수준 중복 제거 기능이 있으므로 Acronis 이미지에 공통적 인 것이 있으면 백업해야하는 양이 크게 줄어 듭니다. 이 기능은 서버 백업에 적합합니다. 릴리스 정보를 확인하십시오.

나는 2 주 동안 베타 테스트를 해왔으며, GUI와 관련된 몇 가지 작은 문제를 제외하고는 최종적으로 수정 될 것이라고 확신하며 제품에 대해 기대가된다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.