Amazon S3 복제 기능 업데이트 – 복제 SLA, 지표 및 이벤트 지원
복제를 설정하는 것은 아주 쉬우며 복제는 한 S3 버킷에서 다른 버킷으로 객체를 복사하는 규칙을 사용할 수 있게 합니다. 이 규칙은 전체 버킷의 복제를 지정하거나 접두사 또는 태그에 기반한 하위 집합의 복제를 지정할 수도 있습니다.
재해 복구 계획의 일환으로 지리적 중복을 위한 규제 요건을 충족하거나 다른 운영 상의 이유로 복제를 사용하여 중요한 데이터를 한 AWS 리전 내에 또는 리전 간에 복사할 수 있습니다. 로그를 집계하고 테스트 환경 및 개발 환경을 설정하고 규정 준수 요건을 해결하기 위해 한 리전 내에서 복사할 수 있습니다.
S3의 복제 기능은 많이 활용되고 있습니다. 2015년 출시 이후로 AWS의 고객은 수조 개의 객체와 수 엑사바이트의 데이터를 복제했습니다. 저는 오늘 Replication Time Control(복제 시간 제어)의 추가로 한층 강력해진 복제 기능을 발표하게 되어 아주 기쁩니다. 이 기능은 기존 규칙 기반 복제를 기반으로 구축되고 태그 또는 접두사를 기반으로 한 세부적인 제어를 제공합니다. 이를 통해 지정한 데이터 세트에 대해 Replication Time Control을 사용할 수 있게 됩니다. 다음과 같은 기능이 제공됩니다.
복제 SLA – 이제 복제 SLA를 활용하여 복제 시간 예측 가능성을 높혔습니다.
복제 지표 – 이제 새 CloudWatch 지표를 사용하여 개별 규칙의 최대 복제 시간을 모니터링할 수 있습니다.
복제 이벤트 – 이제 이벤트를 사용하여 SLA 준수에서 벗어나는 모든 객체 복제를 추적할 수 있습니다.
자세한 내용은 다음과 같습니다.
새 복제 SLA
S3는 객체를 대상 버킷에 복제합니다. 영향을 주는 객체 크기 및 개수, 사용 가능한 대역폭, 기타 트래픽을 적시에 버킷 등에 복제합니다. 복제 시간에 대한 추가 제어가 필요한 경우 AWS의 새 Replication Time Control 기능을 사용할 수 있습니다. 다음과 같은 기능을 제공하도록 설계되었습니다.
- 대부분의 객체가 몇 초 안에 복제됩니다.
- 99%의 객체가 5분 안에 복제됩니다.
- 99.99%의 객체가 15분 안에 복제됩니다.
이 기능을 활성화하면 연결된 Service Level Agreement의 혜택을 누릴 수 있습니다. SLA는 15분 안에 복제될 것으로 예상되는 객체 비율로 표시되며 SLA를 충족하지 못할 경우 청구 크레딧을 제공합니다.
- 99.9%~ 98% – 10% 크레딧
- 98%~95% – 25% 크레딧
- 95%~0% – 100% 크레딧
청구 크레딧은 청구 기간 동안 대상의 Replication Time Control 요금 비율, 복제 데이터 전송, S3 요청 및 S3 스토리지 요금에 적용됩니다.
새 복제 규칙을 생성할 때 Replication Time Control을 활성화할 수 있으며 기존 규칙에 추가할 수도 있습니다.
복제는 규칙을 생성하거나 업데이트하면 바로 시작됩니다. 복제 지표와 복제 이벤트를 사용하여 규정 준수를 모니터링할 수 있습니다.
리전 간의 S3 요청 및 데이터 전송에 대한 기존 요금 외에도 Replication Time Control을 사용하면 GB당 추가 요금을 지불해야 합니다. S3 요금 페이지에서 자세한 정보를 확인하십시오.
복제 지표
규칙에 대해 Replication Time Control을 활성화할 때마다 S3는 세 가지 새로운 지표를 CloudWatch에 게시합니다. S3와 CloudWatch 콘솔에서 사용할 수 있습니다.
저는 대용량 tar 파일을 생성했고 소스 버킷에 업로드했습니다. 잠시 후에 지표를 조사했습니다. 제가 출시 전에 테스트를 했기 때문에 실제 숫자에 대해 아주 큰 걱정은 하지 마세요. 또한 이 지표는 표시를 위해 복제 간에 집계된 것이라 객체당 SLA 규정 준수를 정확하게 보여주지는 않습니다.
BytesPendingReplication는 업로드 후에 올라갔다가 복제가 일어나면 내려갑니다.
ReplicationLatency는 S3 복제가 미국에서 호주로 최대 8.3분의 지연 시간으로 37GB 이상을 전송한 후 피크 상태에서 0으로 빠르게 내려갑니다.
그리고 OperationsPendingCount는 복제되는 객체 수를 추적합니다.
저는 CloudWatch Alarms를 지표에 설정할 수도 있습니다. 예를 들어 저는 75GB보다 큰 복제 백로그가 있는지 알고 싶습니다. 예상한 대로 작동하려면 Missing data treatment를 Treat missing data as ignore (maintain the alarm state)으로 설정해야 합니다.
이 지표는 CloudWatch 사용자 지정 지표로 청구됩니다.
복제 이벤트
마지막으로 여러분은 SQS 대기열, SNS 주제 또는 Lambda 함수에 이벤트를 설정하여 복제 문제를 추적할 수 있습니다. 콘솔의 [Events] 섹션에서 시작합니다.
이 이벤트를 사용하여 SLA 준수를 모니터링할 수 있습니다. 예를 들어 준수하지 못한 복제 시간 임계값 및 임계값 이후 완료한 복제 시간 이벤트를 데이터베이스에 저장하여 복제가 예상보다 길어진 상황을 추적할 수 있습니다. 첫 번째 이벤트는 복제가 지연되고 있음을 보여주고 두 번째 이벤트는 완료한 복제와 얼마나 지연되었는지 알려줍니다.
자세히 알아보려면 복제를 확인하십시오.
지금 이용 가능
오늘부터 이 기능을 모든 상용 AWS 리전에서 이용할 수 있습니다. 단 AWS 중국(베이징) 및 AWS 중국(닝샤) 리전은 제외됩니다.
— Jeff
S3 작동 방식에 대해 알고 싶으면 re:Invent 세션 99.999999999%이상의 가용성: Amazon S3 Culture of Durability의 교훈에 참석하십시오.