컨테이너 소프트 삭제는 삭제된 컨테이너를 지정된 기간 동안 스토리지 계정에 보관함으로써 실수로 삭제되는 것을 방지합니다. 보존 기간 동안 일시 삭제된 컨테이너와 해당 콘텐츠를 삭제 당시의 컨테이너 상태로 복원할 수 있습니다. 보존 기간이 만료되면 컨테이너와 해당 콘텐츠가 영구적으로 삭제됩니다.
권장되는 데이터 보호 구성
컨테이너 일시 삭제는 포괄적인 계정 내 데이터 보호 전략의 일부입니다. 스토리지 계정에 대한 최적의 보호를 위해 다음과 같은 데이터 보호 기능을 사용하도록 설정하는 것이 좋습니다.
블롭 소프트 삭제는 삭제한 블롭, 스냅샷 또는 버전을 복원하는 방법입니다. Blob 일시 삭제를 사용하도록 설정하는 방법을 알아보려면 Blob에 대한 일시 삭제 사용 및 관리를 참조하세요.
컨테이너 소프트 삭제, 삭제한 컨테이너를 복원하는 방법입니다. 컨테이너 일시 삭제를 사용하도록 설정하는 방법을 알아보려면 컨테이너에 대한 일시 삭제 사용 및 관리를 참조하세요.
실수로 인한 계정 삭제 또는 랜섬웨어와 같은 광범위한 데이터 손실 시나리오를 방지하려면 계정 내 기능 외에 Azure Backup 사용하도록 설정하는 것이 좋습니다. 워크로드에 따른 Microsoft의 데이터 보호 권장 사항에 대해 자세히 알아보려면 데이터 보호 개요를 참조하세요.
Tip
Blob 및 컨테이너 소프트 삭제를 대규모로 활성화하려면, 기본 제공 Azure Policy Configure soft delete for blobs and containers on storage accounts를 사용하세요.
컨테이너 일시 삭제 작동 방식
컨테이너 소프트 삭제를 활성화할 때, 삭제된 컨테이너의 보존 기간을 1일에서 365일 사이로 지정하세요. 기본 보존 기간은 7일입니다. 최소 7일을 선택하고, 데이터 양과 데이터 손실 사건 감지 및 대응에 걸리는 시간을 바탕으로 보존 기간을 필요에 따라 늘리세요.
보존 기간 중에는 컨테이너 복원 작업을 호출하여 삭제된 컨테이너를 복구할 수 있습니다. 컨테이너를 복원하면 컨테이너의 Blob과 모든 Blob 버전 및 스냅샷도 복원됩니다.
경고
컨테이너 일시 삭제는 삭제 시 전체 컨테이너와 그 콘텐츠만 복원할 수 있습니다. 부모 컨테이너가 삭제되지 않은 상태에서 삭제된 블롭을 복원하려면 블롭 소프트 삭제 또는 블롭 버전 관리(blob versioning)를 사용해야 합니다. 컨테이너를 복원할 경우에는 원래 이름으로 복원해야 합니다. 원래 이름을 사용해 새 컨테이너를 만들면, 소프트 삭제된 컨테이너를 복원할 수 없습니다.
다음 다이어그램은 컨테이너 일시 삭제를 사용하는 경우 삭제된 컨테이너가 어떻게 복원되는지 보여줍니다.
보존 기간이 끝나면 Azure Storage가 컨테이너를 영구적으로 삭제하며, 해당 컨테이너를 복구할 수 없습니다. 보관 기간은 컨테이너가 삭제되는 시점부터 시작됩니다. 보존 기간은 언제든지 변경할 수 있지만 새 설정은 업데이트 후 삭제된 컨테이너에만 적용됩니다. 이미 삭제된 컨테이너는 원래 삭제 당시 유효했던 보존 기간에 따라 영구적으로 제거됩니다.
컨테이너 일시 삭제를 해제해도 기존 일시 삭제된 컨테이너가 영구적으로 삭제되지는 않습니다. 삭제 당시 적용된 보존 기간에 따라 영구적으로 삭제됩니다.
컨테이너 일시 삭제는 다음 유형의 스토리지 계정에서 사용할 수 있습니다.
- 범용 v2 및 v1 스토리지 계정
- 블록 Blob Storage 계정
- Blob 스토리지 계정
Azure Data Lake Storage에서 사용할 수 있도록 계층 구조 네임스페이스가 설정된 스토리지 계정도 지원됩니다.
Azure Storage REST API 버전 2019-12-12 이상에서는 컨테이너 일시 삭제를 지원합니다.
소프트 삭제된 컨테이너를 복원하는 데 권한이 가장 적은 기본 제공 역할은 Storage Blob Data Contributor입니다.
중요합니다
컨테이너 일시 삭제는 스토리지 계정 삭제를 방지하지 않고 해당 계정의 컨테이너 삭제에 대해서만 보호합니다. 스토리지 계정이 삭제되지 않도록 보호하려면 스토리지 계정 리소스에 대한 잠금을 구성합니다. Azure Resource Manager 리소스 잠금에 대한 자세한 내용은 예기치 않은 변경을 방지하기 위한 리소스 잠금을 참조하세요.
업무량 고려사항
기존 계정에서 컨테이너 소프트 삭제를 활성화하기 전에 다음 사항들을 고려하세요:
활성화는 소급 적용이 아닙니다: 컨테이너 소프트 삭제는 활성화 후에 삭제한 컨테이너만 보호합니다. 활성화하기 전에 삭제된 컨테이너는 복구할 수 없습니다.
컨테이너는 원래 이름으로만 복원됩니다: 소프트 삭제된 컨테이너는 삭제 당시 이름으로만 복원할 수 있습니다. 그 이름으로 새 컨테이너를 만들면 복원 전에 반드시 이름을 바꾸거나 삭제해야 합니다.
더 짧은 보존 기간이 우선순위를 가집니다: 컨테이너 소프트 삭제와 블롭 소프트 삭제는 독립적인 보존 기간을 가집니다. 블롭 소프트 삭제 보존 기간이 컨테이너 소프트 삭제 보존 기간보다 짧다면, 복원된 컨테이너 내 블롭들은 컨테이너 보존 기간이 끝나기 전에 이미 영구적으로 삭제되었을 수 있습니다. 두 보존 기간을 맞추어 블롭이 누락된 컨테이너를 복원하지 않도록 하세요.
보존 변경은 소급 적용되지 않습니다: 보존 기간 변경은 업데이트 후 삭제된 컨테이너에만 적용됩니다. 이미 소프트 삭제된 컨테이너는 삭제 당시 유효했던 보존 기간을 유지합니다.
이미 소프트 삭제된 컨테이너에 대한 보존 기간을 연장하려면 다시 삭제가 필요합니다: 이미 소프트 삭제된 컨테이너에 더 긴 보존 기간을 적용하려면, 삭제를 취소한 후 새로운 보존 기간이 적용된 상태로 다시 삭제하세요.
소프트 삭제를 비활성화해도 기존의 소프트 삭제 컨테이너는 삭제되지 않습니다: 컨테이너 소프트 삭제를 비활성화하면, 서비스가 이미 소프트 삭제된 컨테이너를 즉시 삭제하지 않습니다. 이들은 원래 보존 기간이 끝날 때까지 지속되며 복구 가능합니다.
HNS 계정은 소프트 삭제된 컨테이너를 열거할 수 없습니다: 계층적 네임스페이스를 가진 계정에서는 어떤 컨테이너가 소프트 삭제되었는지 나열할 수 없습니다. 복원은 원래 컨테이너 이름을 정확히 알아야 합니다.
평면 네임스페이스 계정을 계층적 네임스페이스(ADLS)로 업그레이드하지 못하게 합니다: 컨테이너 소프트 삭제가 활성화된 상태에서는 계층적 네임스페이스로의 마이그레이션이 차단됩니다. 마이그레이션 전에 비활성화한 후 마이그레이션이 완료된 후 다시 활성화하세요.
기능 지원
이 기능에 대한 지원은 Data Lake Storage Gen2, NFS(네트워크 파일 시스템) 3.0 프로토콜 또는 SSH SFTP(파일 전송 프로토콜)를 사용하도록 설정하면 영향을 받을 수 있습니다. 이러한 기능을 사용하도록 설정한 경우 Azure Storage 계정의 Blob Storage 기능 지원을 참조하여 이 기능에 대한 지원을 평가합니다.
가격 책정 및 대금 청구
컨테이너 일시 삭제를 사용하도록 설정하는 데 추가 요금은 없습니다. 소프트 삭제된 컨테이너 내 데이터에 대해 활성 데이터와 동일한 요금으로 비용을 지불합니다.
비용을 최소화하기 위해 팀이 우발적 삭제를 감지하고 복구할 수 있는 충분한 시간을 주도록 가장 짧은 유지 기간을 설정하세요. Microsoft는 최소 7일을 권장하지만, 워크로드 데이터 볼륨과 요구 사항에 따라 이 값을 조정해야 합니다.
모니터링 및 문제 해결
Azure Monitor 활동 로그를 사용하여 컨테이너 삭제 이벤트를 모니터링하세요. Azure 포털에서 소프트 삭제된 컨테이너를 보려면 스토리지 브라우저에서 '삭제된 컨테이너 표시'를 활성화하세요. 프로그래밍적으로, include=deleted와 함께 List Containers 작업을 사용합니다.
내 소프트 삭제 컨테이너가 보이지 않습니다: 소프트 삭제된 컨테이너는 기본적으로 숨겨져 있습니다. Azure 포털에서 스토리지 브라우저에서 삭제된 컨테이너 표시를 활성화하세요. API를 통해
include=deleted를 사용하여 List Containers를 호출하세요. 만약 컨테이너가 여전히 나타나지 않는다면, 컨테이너 소프트 삭제가 컨테이너가 삭제되기 전에 활성화되었는지, 그리고 보존 기간이 지나지 않았는지 확인하세요.이름이 이미 사용 중이어서 컨테이너를 복원할 수 없습니다: 원본이 삭제된 후 같은 이름의 새 컨테이너를 만들었어요. 컨테이너는 원래 이름으로만 복원할 수 있으니, 충돌하는 컨테이너를 먼저 이름을 바꾸거나 삭제한 후 복원하세요.
HNS 계정에서 소프트 삭제 컨테이너를 찾을 수 없습니다: 계층적 네임스페이스를 가진 계정은 소프트 삭제 컨테이너 열거를 지원하지 않습니다. 복원을 위해서는 정확한 원래 컨테이너 이름이 필요합니다.
계층적 네임스페이스(ADLS)로의 업그레이드가 차단되었습니다: 컨테이너 소프트 삭제는 계층적 네임스페이스로의 마이그레이션을 차단합니다. 컨테이너 소프트 삭제를 비활성화한 뒤 마이그레이션을 수행한 후 마이그레이션이 완료된 후 다시 활성화하세요.
여러 컨테이너를 동시에 복원해야 합니다: Azure 포털에서는 대량 복원이 불가능합니다. Azure PowerShell이나 Azure CLI를 사용해 여러 컨테이너에 걸친 복원 스크립트를 작성하세요.
지나치게 광범위하게 사용 설정한 후 대규모로 소프트 삭제를 비활성화해야 합니다: 여러 도구를 사용하여 소프트 삭제를 비활성화하는 방법은 컨테이너에 대한 소프트 삭제 사용 설정을 참조하세요.
다음 단계
Blob 버전 관리