스냅샷
스냅샷은 App Configuration 저장소 키-값의 명명된 변경할 수 없는 하위 집합입니다. 스냅샷 구성하는 키-값은 키 및 레이블 필터를 사용하여 만드는 동안 선택됩니다. 스냅샷이 만들어지면 포함된 키-값은 변경되지 않은 상태로 유지됩니다.
이 비디오에서는 스냅샷이 도움이 될 수 있는 세 가지 이유를 강조해서 설명하는 간략한 개요를 확인할 수 있습니다.
스냅샷을 사용하여 안전하게 배포
스냅샷은 구성 변경 내용을 안전하게 배포하도록 설계되었습니다. 잘못된 구성 변경 내용을 실행 중인 환경에 배포하면 서비스 중단 및 데이터 손실과 같은 문제가 발생할 수 있습니다. 이러한 문제를 방지하려면 프로덕션 환경으로 이동하기 전에 구성 변경 내용을 검사할 수 있어야 합니다. 이러한 문제가 발생하는 경우 서비스를 복원하기 위해 잘못된 구성 변경 내용을 롤백할 수 있어야 합니다. 스냅샷은 이러한 시나리오를 관리하기 위해 만들어집니다.
구성 변경 내용은 제어되는 일관된 방식으로 배포해야 합니다. 개발자는 스냅샷을 사용하여 제어된 롤아웃을 수행할 수 있습니다. 제어된 롤아웃을 시작하기 위해 애플리케이션에서는 애플리케이션이 참조하는 스냅샷 이름만 업데이트하면 됩니다. 애플리케이션이 프로덕션으로 전환되면 참조된 스냅샷 구성이 변경되지 않은 상태로 유지됩니다. 이렇게 하면 스냅샷이 변경되지 않도록 하여 예기치 않은 설정이 프로덕션에 적용되지 않도록 보호합니다. 스냅샷의 불변성 및 참조 용이성을 통해 올바른 구성 변경 내용 집합을 안전하게 롤아웃할 수 있습니다.
스냅샷 사용 시나리오
제어된 롤아웃: 스냅샷은 변경할 수 없는 특성으로 인해 제어된 롤아웃을 지원하는 데 적합합니다. 개발자가 구성에 스냅샷을 사용하는 경우 릴리스가 롤아웃의 여러 단계를 진행함에 따라 확실히 구성은 변경되지 않은 상태로 유지될 수 있습니다.
LKG(마지막으로 성공한) 구성: 스냅샷을 사용하여 구성에 대한 안전한 배포 사례를 지원할 수 있습니다. 스냅샷을 사용하면 개발자는 배포 중에 문제가 있는 경우 롤백에 LKG(마지막으로 성공한) 구성을 사용할 수 있는지 확인할 수 있습니다.
구성 버전 관리: 스냅샷을 사용하여 릴리스 버전과 동기화할 구성 설정의 버전 기록을 만들 수 있습니다. 각 스냅샷에 캡처된 설정을 비교하여 버전 간의 변경 내용을 식별할 수 있습니다.
감사: 스냅샷을 감사 및 규정 준수 목적으로 사용할 수 있습니다. 개발자는 릴리스에 대한 스냅샷을 사용하여 릴리스 간에 구성 변경에 대한 기록을 유지할 수 있습니다.
테스트 및 스테이징 환경: 스냅샷을 사용하여 일관된 테스트 및 스테이징 환경을 만들 수 있습니다. 개발자는 동일한 스냅샷 사용하여 여러 환경에서 동일한 구성을 사용할 수 있으며 이러한 특성은 디버깅 및 테스트에 도움이 될 수 있습니다.
간소화된 클라이언트 구성 컴퍼지션: 일반적으로 App Configuration 클라이언트에는 App Configuration 인스턴스의 키-값 하위 집합이 필요합니다. 필요한 키-값 집합을 얻으려면 코드로 작성된 쿼리 논리가 있어야 합니다. 스냅샷은 생성 시간 동안 필터 제공을 지원하므로 클라이언트가 이제 필요한 키 값 집합을 이름으로 참조할 수 있으므로 클라이언트 컴퍼지션을 간소화하는 데 도움이 됩니다.
스냅샷 작업
스냅샷은 변경할 수 없는 엔터티이므로 스냅샷을 만들고 보관할 수만 있습니다. 삭제, 제거 또는 편집은 불가능합니다.
스냅샷 만들기: 키 및 레이블 필터를 정의하여 App Configuration 인스턴스에서 필요한 키-값을 캡처함으로써 스냅샷을 만들 수 있습니다. 필터링된 키-값은 만드는 동안 제공된 이름을 사용하여 스냅샷으로 저장됩니다.
스냅샷 보관: 스냅샷을 보관하면 보관된 상태가 됩니다. 스냅샷은 보관된 동안 여전히 완벽하게 작동합니다. 스냅샷이 보관되면 스냅샷을 만드는 동안 구성된 보존 기간에 따라 만료 시간이 설정됩니다. 스냅샷이 만료 시간까지 보관된 상태로 유지될 경우 만료 시간이 지나면 시스템에서 자동으로 사라집니다. 보관은 더 이상 사용되지 않는 스냅샷을 단계적으로 중단하는 데 사용됩니다.
스냅샷 복구: 스냅샷을 복구하면 다시 활성 상태로 돌아갑니다. 이 시점에서 스냅샷은 구성된 보존 기간에 따라 더 이상 만료되지 않습니다. 보관 후 보존 기간에만 복구가 가능합니다.
참고 항목
보존 기간은 스냅샷을 만드는 동안에만 설정할 수 있습니다. 기본 보존 기간은 표준 저장소의 경우 30일, 무료 저장소의 경우 7일입니다.
스냅샷 작업에 대한 요구 사항
다음 섹션에서는 Microsoft Entra ID 및 HMAC 인증을 사용하여 스냅샷 관련 작업을 수행하는 데 필요한 권한을 자세히 설명합니다.
스냅샷 만들기
Microsoft Entra 인증을 사용하여 저장소에서 스냅샷을 만들려면 다음 권한이 필요합니다. App Configuration 데이터 소유자 역할에는 이미 이러한 권한이 있습니다.
Microsoft.AppConfiguration/configurationStores/keyvalues/read
Microsoft.AppConfiguration/configurationStores/snapshots/write
HMAC 인증을 사용하여 스냅샷을 만들려면 읽기-쓰기 액세스 키를 사용해야 합니다.
스냅샷 보관 및 복구
Microsoft Entra 인증을 사용하여 스냅샷을 보관 및/또는 복구하려면 다음 권한이 필요합니다. App Configuration 데이터 소유자 역할에는 이미 이 권한이 있습니다.
Microsoft.AppConfiguration/configurationStores/snapshots/archive/action
HMAC 인증을 사용하여 스냅샷을 보관 및/또는 복구하려면 읽기-쓰기 액세스 키를 사용해야 합니다.
스냅샷 읽기 및 나열
모든 스냅샷을 나열하거나 이름으로 개별 스냅샷 모든 키-값을 얻으려면 Microsoft Entra 인증을 활용하는 저장소에 다음 권한이 필요합니다. 기본 제공 데이터 소유자 및 데이터 읽기 권한자 역할에는 이미 이 권한이 있습니다.
Microsoft.AppConfiguration/configurationStores/snapshots/read
HMAC 인증을 사용하는 저장소의 경우 읽기-쓰기 액세스 키 또는 읽기 전용 액세스 키를 사용하여 "스냅샷 읽기" 작업(스냅샷에서 키-값을 읽기 위해) 및 "스냅샷 나열" 작업을 모두 수행할 수 있습니다.
청구 고려 사항 및 제한 사항
App Configuration에는 무료, 표준 및 프리미엄의 세 가지 계층이 있습니다. 각 계층에서 스냅샷 할당량에 대한 다음 세부 정보를 확인합니다.
무료 계층: 이 계층에는 10MB의 스냅샷 스토리지 할당량이 있습니다. 활성 및 보관된 모든 스냅샷의 총 스토리지 크기가 10MB 미만인 경우 가능한 한 많은 스냅샷을 만들 수 있습니다.
표준 계층: 이 계층에는 1GB의 스냅샷 스토리지 할당량이 있습니다. 활성 및 보관된 모든 스냅샷의 총 스토리지 크기가 1GB 미만인 경우 가능한 한 많은 스냅샷을 만들 수 있습니다.
프리미엄 계층: 이 계층에는 4GB의 스냅샷 스토리지 할당량이 있습니다. 활성 및 보관된 모든 스냅샷의 총 스토리지 크기가 4GB 미만인 경우 가능한 한 많은 스냅샷을 만들 수 있습니다.
스냅샷 최대 크기는 1MB입니다.