메인 콘텐츠로 건너뛰기 탐색으로 건너뛰기 푸터로 건너뛰기
기간 한정 디자인 파트너 프로그램. BUSINESS 플랜 평생 무료.

백업 및 복원

저장소를 외부 스토리지에 푸시하고, 필요할 때 새 서버에서 복원합니다.

백업 및 복원

앱이 프로덕션에서 실행 중입니다. 이제 백업해두세요. rdc는 앱, 데이터베이스, 파일, 구성을 포함한 전체 저장소를 외부 스토리지에 푸시하고 언제든지 다시 가져올 수 있습니다. 랜섬웨어, 하드웨어 장애, 무엇이든 견딜 수 있습니다.

튜토리얼 보기

세 가지 단계

Configure, push, restore

  1. 스토리지 제공자를 구성합니다.
  2. 백업을 푸시합니다.
  3. 필요할 때 복원합니다.

1단계: 스토리지 구성

rclone 구성 파일이 필요합니다. 이미 rclone을 사용 중이라면 직접 가져오세요:

rdc config storage import --file rclone.conf

기존 rclone 설정을 가져옵니다. rclone은 S3, Backblaze, Google Drive, Dropbox 등 다양한 서비스를 지원합니다. 이미 rclone을 사용하고 있다면 동일한 설정을 그대로 가져올 수 있습니다.

S3, B2, Google Drive, Dropbox 등 다양한 스토리지를 지원합니다. 연결된 스토리지를 확인하세요:

rdc config storage list

CLI가 현재 인식하고 있는 스토리지 목록을 확인합니다. 각 항목은 백업의 대상 저장소입니다.

2단계: 백업 푸시

rdc repo push --name my-app -m <machine-name> --to my-storage

전체 백업을 푸시합니다. 앱, 데이터베이스, 파일, 설정을 포함한 전체 repository가 업로드됩니다. repository는 저장 시 암호화되어 있으므로 백업도 마찬가지로 암호화되며, 별도의 키 관리가 필요하지 않습니다.

앱, 데이터베이스, 파일, 모든 것을 포함한 전체 저장소가 백업되었습니다. 저장소 자체가 암호화되어 있으므로 백업도 암호화됩니다. 추가적인 키 관리가 필요 없습니다.

백업 목록을 언제든지 확인하세요:

rdc repo backup list --from my-storage -m <machine-name>

이 스토리지에서 사용 가능한 백업 목록을 확인합니다. 새 서버에서 복원하는 것은 명령어 하나로 가능합니다. repo pull 명령어를 사용하면 됩니다.

다운타임이 없는 이유는?

백업이 업로드되는 동안 앱은 계속 실행됩니다. 어떻게 일관성이 유지될까요?

포크와 동일한 로직입니다. rdc가 먼저 포크한 다음 포크를 업로드합니다. 포크가 그 순간을 캡처하고, 실제 앱은 계속 실행됩니다. 다운타임도 없고 불일치도 없습니다.

3단계: 복원, 직접 해보기

한 번도 복원해보지 않은 백업은 희망이지, 백업이 아닙니다. 먼저 저장소를 오프라인으로 내립니다:

rdc repo down --name my-app --machine <machine-name> --unmount

먼저 repository를 오프라인으로 전환하세요. repo down 명령으로 서비스를 중지하고 암호화된 볼륨을 언마운트합니다.

스토리지에서 백업을 바로 가져옵니다:

rdc repo pull --name my-app --machine <machine-name> --from my-storage --force --yes

repo pull 명령으로 스토리지에서 백업을 가져옵니다. 이미지를 다운로드하고 무결성을 확인합니다.

그리고 다시 마운트합니다. 완전히 복원되었습니다:

rdc repo mount --name my-app --machine <machine-name>

repository를 다시 마운트하세요. 완전히 복원된 상태입니다. 동일한 pull 명령은 새 머신에서도 작동합니다.

동일한 pull 명령이 새 서버에서도 작동합니다: 설정하고, rdc에 추가한 다음 거기서 pull을 실행합니다.

rdc repo pull --name my-app -m new-server --from my-storage
rdc repo up --name my-app -m new-server

동일한 데이터, 동일한 컨테이너, 다른 머신.

더 빠른 백업: 머신 간 직접 전송

클라우드 스토리지 없이 머신 간에 직접 푸시할 수도 있습니다:

rdc repo push --name my-app -m my-server --to-machine backup-server

Pro tip. 머신 간 푸시는 첫 번째 이후부터 변경된 블록만 전송합니다. 델타 전송 튜토리얼에서 직접 확인할 수 있습니다.


다음: 네트워킹 및 도메인.