S3 버전 관리로 객체의 여러 버전 유지
S3 버전 관리로 객체의 여러 버전 유지 (Retaining multiple versions of objects with S3 Versioning)
Amazon S3의 버전 관리는 동일한 버킷에서 객체의 여러 변형을 유지하는 수단이에요. S3 버전 관리 기능을 사용해 버킷에 저장된 모든 객체의 모든 버전을 보존, 검색, 복원할 수 있어요. 버전 관리를 사용하면 의도하지 않은 사용자 작업과 애플리케이션 실패에서 더 쉽게 복구할 수 있어요. 버킷에서 버전 관리를 활성화한 후 Amazon S3가 동일한 객체에 대한 여러 쓰기 요청을 동시에 수신하면 해당 객체를 모두 저장해요.
버전 관리 활성화 버킷은 실수로 객체를 삭제하거나 덮어쓰는 상황에서 객체를 복구하는 데 도움이 돼요. 예를 들어 객체를 삭제하면 Amazon S3는 객체를 영구 제거하는 대신 삭제 마커를 삽입해요. 삭제 마커가 현재 객체 버전이 돼요. 객체를 덮어쓰면 버킷에 새로운 객체 버전이 생겨요. 이전 버전은 언제든 복원할 수 있어요. 자세한 내용은 버전 관리 활성화 버킷에서 객체 버전 삭제를 참고하세요.
기본적으로 S3 버전 관리는 버킷에서 비활성화되어 있으며 명시적으로 활성화해야 해요. 자세한 내용은 버킷에서 버전 관리 활성화를 참고하세요.
참고 SOAP API는 S3 버전 관리를 지원하지 않아요. HTTP를 통한 SOAP 지원은 더 이상 사용되지 않지만 HTTPS를 통해서는 여전히 사용할 수 있어요. 새 Amazon S3 기능은 SOAP에서 지원되지 않아요.
저장되고 전송되는 객체의 모든 버전에는 일반 Amazon S3 요금이 적용돼요. 객체의 각 버전은 전체 객체예요. 이전 버전과의 diff가 아니에요. 따라서 객체 버전을 3개 저장하면 객체 3개에 대한 요금이 부과돼요.
본문
비버전 관리, 버전 관리 활성화, 버전 관리 일시 중단 버킷
버킷은 다음 세 가지 상태 중 하나일 수 있어요.
- 비버전 관리(기본값)
- 버전 관리 활성화
- 버전 관리 일시 중단
버킷 수준에서 버전 관리를 활성화하고 일시 중단해요. 버킷에서 버전 관리를 활성화하면 그 버킷은 비버전 관리 상태로는 되돌아갈 수 없어요. 하지만 그 버킷에서 버전 관리를 일시 중단할 수는 있어요.
버전 관리 상태는 해당 버킷의 모든(일부가 아닌) 객체에 적용돼요. 버킷에서 버전 관리를 활성화하면 모든 새 객체가 버전 관리되고 고유한 버전 ID가 부여돼요. 버전 관리 활성화 당시 버킷에 이미 있던 객체는 이후 요청으로 수정될 때 항상 버전 관리되고 고유한 버전 ID가 부여돼요. 다음 사항에 주의하세요.
- 버전 관리 상태를 설정하기 전에 버킷에 저장된 객체는 버전 ID가
null이에요. 버전 관리를 활성화하면 버킷의 기존 객체는 변하지 않아요. 변하는 것은 Amazon S3가 이후 요청에서 객체를 처리하는 방식이에요. 자세한 내용은 버전 관리 활성화 버킷의 객체 작업을 참고하세요. - 버킷 소유자(또는 적절한 권한이 있는 모든 사용자)는 버전 관리를 일시 중단해 객체 버전이 계속 생기지 않도록 할 수 있어요. 버전 관리를 일시 중단하면 버킷의 기존 객체는 변하지 않아요. 변하는 것은 Amazon S3가 이후 요청에서 객체를 처리하는 방식이에요. 자세한 내용은 버전 관리 일시 중단 버킷의 객체 작업을 참고하세요.
S3 버전 관리와 S3 Lifecycle 사용
데이터 보존 방식을 사용자 지정하고 스토리지 비용을 제어하려면 객체 버전 관리를 S3 Lifecycle과 함께 사용해요. 자세한 내용은 객체의 수명주기 관리를 참고하세요. AWS Management Console, AWS CLI, AWS SDK 또는 REST API를 사용해 S3 Lifecycle 구성을 만드는 방법은 버킷에 S3 Lifecycle 구성 설정을 참고하세요.
중요 비버전 관리 버킷에 객체 만료 수명주기 구성이 있고, 버전 관리를 활성화할 때 동일한 영구 삭제 동작을 유지하려면 비현재 버전 만료 구성을 추가해야 해요. 비현재 버전 만료 수명주기 구성은 버전 관리 활성화 버킷에서 비현재 객체 버전의 삭제를 관리해요. (버전 관리 활성화 버킷은 현재 버전 1개와 비현재 객체 버전 0개 이상을 유지해요.) 자세한 내용은 버킷에 S3 Lifecycle 구성 설정을 참고하세요.
S3 버전 관리 작업에 대한 자세한 내용은 다음 주제를 참고하세요.
주제
- S3 버전 관리 작동 방식
- 버킷에서 버전 관리 활성화
- MFA 삭제 구성
- 버전 관리 활성화 버킷의 객체 작업
- 버전 관리 일시 중단 버킷의 객체 작업
- 버전 관리 문제 해결
출처: 문서