리전 내 및 리전 간 객체 복제

리전 내 및 리전 간 객체 복제 (Replicating objects within and across Regions)

복제를 사용해 Amazon S3 버킷 간에 객체를 자동으로 비동기 복사할 수 있어요. 라이브 복제와 온디맨드 복제의 두 가지 유형이 있어요.

출처: 문서

본문

복제를 사용해 Amazon S3 버킷 간에 객체를 자동으로 비동기 복사할 수 있어요. 객체 복제용으로 구성된 버킷은 같은 AWS 계정 또는 다른 계정이 소유할 수 있어요. 단일 대상 버킷 또는 여러 대상 버킷으로 객체를 복제할 수 있어요. 대상 버킷은 원본 버킷과 다른 AWS 리전 또는 같은 리전에 있을 수 있어요.

라이브 복제와 온디맨드 복제의 두 가지 유형이 있어요.

  • 라이브 복제 – 원본 버킷에 기록될 때 새 객체와 업데이트된 객체를 자동으로 복제하려면 라이브 복제를 사용해요. 라이브 복제는 복제를 설정하기 전에 버킷에 존재했던 객체는 복제하지 않아요. 복제를 설정하기 전에 존재했던 객체를 복제하려면 온디맨드 복제를 사용해요.
  • 온디맨드 복제 – 원본 버킷의 기존 객체를 하나 이상의 대상 버킷으로 온디맨드로 복제하려면 S3 Batch Replication을 사용해요. 기존 객체 복제에 대한 자세한 내용은 S3 Batch Replication을 언제 사용해야 하나요?를 참고하세요.

라이브 복제에는 CRR(교차 리전 복제)과 SRR(같은 리전 복제)의 두 가지 형태가 있어요.

  • CRR(교차 리전 복제) – CRR을 사용해 다른 AWS 리전의 Amazon S3 버킷 간에 객체를 복제할 수 있어요. CRR에 대한 자세한 내용은 교차 리전 복제를 언제 사용해야 하나요?를 참고하세요.
  • SRR(같은 리전 복제) – SRR을 사용해 같은 AWS 리전의 Amazon S3 버킷 간에 객체를 복사할 수 있어요. SRR에 대한 자세한 내용은 같은 리전 복제를 언제 사용해야 하나요?를 참고하세요.

관련 주제

복제를 사용하는 이유는 무엇인가요?

복제는 다음을 수행하는 데 도움이 될 수 있어요.

  • 메타데이터를 유지하면서 객체 복제 – 복제를 사용해 원본 객체 생성 시간 및 버전 ID와 같은 모든 메타데이터를 유지하는 객체 복사본을 만들 수 있어요. 이 기능은 복제본이 원본 객체와 동일한지 확인해야 하는 경우 중요해요.
  • 다른 스토리지 클래스로 객체 복제 – 복제를 사용해 대상 버킷에서 객체를 S3 Glacier Flexible Retrieval, S3 Glacier Deep Archive 또는 다른 스토리지 클래스로 직접 넣을 수 있어요. 데이터를 같은 스토리지 클래스로 복제하고 대상 버킷의 수명 주기 구성을 사용해 객체가 오래됨에 따라 더 저렴한 스토리지 클래스로 이동할 수도 있어요.
  • 다른 소유권 하에 객체 복사본 유지 – 원본 객체의 소유자와 관계없이 복제본 소유권을 대상 버킷을 소유한 AWS 계정으로 변경하도록 Amazon S3에 지시할 수 있어요. 이를 소유자 재정의 옵션이라고 해요. 이 옵션을 사용해 객체 복제본에 대한 접근을 제한할 수 있어요.
  • 여러 AWS 리전에 객체 저장 유지 – 데이터를 보관하는 위치의 지리적 차이를 보장하려면 여러 AWS 리전에 걸쳐 여러 대상 버킷을 설정할 수 있어요. 이 기능은 특정 규정 준수 요구 사항을 충족하는 데 도움이 될 수 있어요.
  • 15분 내에 객체 복제 – 예측 가능한 시간 내에 같은 AWS 리전 또는 다른 리전에서 데이터를 복제하려면 S3 Replication Time Control(S3 RTC)을 사용할 수 있어요. S3 RTC는 Amazon S3에 저장된 새 객체의 99.99%를 15분 내에 복제해요(서비스 수준 계약으로 보장). 자세한 내용은 S3 Replication Time Control로 규정 준수 요구 사항 충족하기를 참고하세요. > 참고 S3 RTC는 Batch Replication에는 적용되지 않아요. Batch Replication은 온디맨드 복제 작업이며 S3 Batch Operations로 추적할 수 있어요. 자세한 내용은 작업 상태 및 완료 보고서 추적을 참고하세요.
  • 버킷 동기화, 기존 객체 복제, 이전에 실패했거나 복제된 객체 복제 – 버킷을 동기화하고 기존 객체를 복제하려면 온디맨드 복제 작업으로 Batch Replication을 사용해요. Batch Replication을 언제 사용해야 하는지에 대한 자세한 내용은 S3 Batch Replication을 언제 사용해야 하나요?를 참고하세요.
  • 객체 복제 및 다른 AWS 리전의 버킷으로 장애 조치 – Amazon S3 Multi-Region Access Point 장애 조치 제어를 구성하기 전에 데이터 복제 중에 모든 메타데이터와 객체를 버킷 간에 동기화하려면 양방향 복제(양방향 복제라고도 함) 규칙을 사용해요. 양방향 복제 규칙은 트래픽이 장애 조치되는 S3 버킷에 데이터가 기록될 때 해당 데이터가 원본 버킷으로 다시 복제되도록 보장하는 데 도움이 돼요.

교차 리전 복제를 언제 사용해야 하나요?

S3 교차 리전 복제(CRR)는 다른 AWS 리전의 Amazon S3 버킷 간에 객체를 복사하는 데 사용돼요. CRR은 다음을 수행하는 데 도움이 될 수 있어요.

  • 규정 준수 요구 사항 충족 – Amazon S3는 기본적으로 여러 지리적으로 떨어진 가용 영역에 데이터를 저장하지만 규정 준수 요구 사항은 더 먼 거리에 데이터를 저장하도록 요구할 수 있어요. 이러한 요구 사항을 충족하려면 먼 AWS 리전 간에 데이터를 복제하는 교차 리전 복제를 사용해요.
  • 대기 시간 최소화 – 고객이 두 지리적 위치에 있다면 사용자에게 지리적으로 더 가까운 AWS 리전에 객체 복사본을 유지해 객체 접근 대기 시간을 최소화할 수 있어요.
  • 운영 효율성 향상 – 같은 객체 집합을 분석하는 컴퓨팅 클러스터가 두 개의 다른 AWS 리전에 있다면 해당 리전에 객체 복사본을 유지하기로 선택할 수 있어요.

같은 리전 복제를 언제 사용해야 하나요?

같은 리전 복제(SRR)는 같은 AWS 리전의 Amazon S3 버킷 간에 객체를 복사하는 데 사용돼요. SRR은 다음을 수행하는 데 도움이 될 수 있어요.

  • 로그를 단일 버킷으로 집계 – 여러 버킷 또는 여러 계정에 로그를 저장한다면 로그를 단일 리전 내 버킷으로 쉽게 복제할 수 있어요. 이렇게 하면 단일 위치에서 로그를 더 간단하게 처리할 수 있어요.
  • 프로덕션 및 테스트 계정 간 라이브 복제 구성 – 사용자 또는 고객이 같은 데이터를 사용하는 프로덕션 및 테스트 계정을 가지고 있다면 객체 메타데이터를 유지하면서 해당 여러 계정 간에 객체를 복제할 수 있어요.
  • 데이터 주권 법률 준수 – 특정 리전 내의 별도 AWS 계정에 데이터의 여러 복사본을 저장해야 할 수 있어요. 규정 준수 규정이 데이터가 국가를 벗어나는 것을 허용하지 않는 경우 같은 리전 복제는 중요 데이터를 자동으로 복제하는 데 도움이 될 수 있어요.

양방향 복제(양방향 복제)를 언제 사용해야 하나요?

  • 여러 AWS 리전에 걸쳐 공유 데이터 세트 구축 – 복제본 수정 동기화를 사용하면 복제 객체에서 객체 ACL(액세스 제어 목록), 객체 태그 또는 객체 잠금과 같은 메타데이터 변경을 쉽게 복제할 수 있어요. 모든 객체와 객체 메타데이터 변경을 동기화하려면 이 양방향 복제가 중요해요. 같은 AWS 리전 또는 다른 AWS 리전의 둘 이상의 버킷 간에 양방향 복제를 수행할 때 새 또는 기존 복제 규칙에서 복제본 수정 동기화를 활성화할 수 있어요.
  • 장애 조치 중 리전 간 데이터 동기화 유지 – Multi-Region Access Point에서 직접 S3 교차 리전 복제(CRR)로 양방향 복제 규칙을 구성해 AWS 리전 간 버킷의 데이터를 동기화할 수 있어요. 장애 조치를 시작할 시점에 대한 정보에 입각한 결정을 내리려면 Amazon CloudWatch, S3 Replication Time Control(S3 RTC) 또는 Multi-Region Access Point에서 복제를 모니터링할 수 있도록 S3 복제 지표도 활성화할 수 있어요.
  • 애플리케이션을 고가용성으로 만들기 – 리전 트래픽 중단이 발생해도 양방향 복제 규칙을 사용해 데이터 복제 중에 모든 메타데이터와 객체를 버킷 간에 동기화할 수 있어요.

S3 Batch Replication을 언제 사용해야 하나요?

Batch Replication은 온디맨드 옵션으로 기존 객체를 다른 버킷으로 복제해요. 라이브 복제와 달리 이러한 작업은 필요에 따라 실행할 수 있어요. Batch Replication은 다음을 수행하는 데 도움이 될 수 있어요.

  • 기존 객체 복제 – Batch Replication을 사용해 같은 리전 복제 또는 교차 리전 복제가 구성되기 전에 버킷에 추가된 객체를 복제할 수 있어요.
  • 이전에 복제하지 못한 객체 복제 – 복제 상태가 FAILED인 객체를 복제하려고 시도하도록 Batch Replication 작업을 필터링할 수 있어요.
  • 이미 복제된 객체 복제 – 별도의 AWS 계정 또는 AWS 리전에 데이터의 여러 복사본을 저장해야 할 수 있어요. Batch Replication은 기존 객체를 새로 추가된 대상으로 복제할 수 있어요.
  • 복제 규칙에서 생성된 객체의 복제본 복제 – 복제 구성은 대상 버킷에 객체의 복제본을 만들어요. 객체의 복제본은 Batch Replication으로만 복제할 수 있어요.

워크로드 요구 사항 및 라이브 복제

워크로드 요구 사항에 따라 일부 유형의 라이브 복제가 다른 것보다 사용 사례에 더 적합할 수 있어요. 다음 표를 사용해 상황에 맞는 복제 유형과 워크로드에 S3 Replication Time Control(S3 RTC)을 사용할지 결정하세요. S3 RTC는 Amazon S3에 저장된 새 객체의 99.99%를 15분 내에 복제해요(서비스 수준 계약(SLA)으로 보장). 자세한 내용은 S3 Replication Time Control로 규정 준수 요구 사항 충족하기를 참고하세요.

워크로드 요구 사항 S3 RTC(15분 SLA) 교차 리전 복제(CRR) 같은 리전 복제(SRR)
다른 AWS 계정 간 객체 복제 예 예 예
같은 AWS 리전 내에서 24-48시간 내에 객체 복제(SLA 미보장) 아니요 아니요 예
다른 AWS 리전 간에 24-48시간 내에 객체 복제(SLA 미보장) 아니요 예 아니요
예측 가능한 복제 시간: 15분 내에 99.9% 객체 복제를 SLA로 보장 예 아니요 아니요

더 알아보기 (Learn more)