구성 데이터 가져오기 또는 내보내기
Azure App Configuration은 데이터 가져오기 및 내보내기 작업을 지원합니다. 해당 작업을 사용하여 구성 데이터를 대량으로 작업하고 App Configuration 저장소와 코드 프로젝트 간에 데이터를 교환할 수 있습니다. 예를 들어 테스트용으로 App Configuration 저장소 1개를 설정하고 프로덕션에 다른 App Configuration 저장소를 1개 설정할 수 있습니다. 데이터를 두 번 입력하지 않아도 되도록 두 저장소 간의 애플리케이션 설정을 복사할 수 있습니다.
이 문서에서는 Azure Portal 또는 Azure CLI를 사용하여 데이터를 가져오고 내보내는 방법에 대한 가이드를 제공합니다. 코드형 구성을 채택하고 GitHub 또는 Azure Devops에서 구성을 관리하는 경우, GitHub Actions를 사용하여 지속적인 구성 파일 가져오기를 설정하거나 Azure 파이프라인 푸시 작업을 사용할 수 있습니다.
데이터 가져오기
가져오기는 기존 소스의 App Configuration 저장소로 구성 데이터를 가져옵니다. 가져오기 함수를 사용하여 데이터를 App Configuration 저장소로 마이그레이션하거나 여러 소스에서 데이터를 집계합니다.
이 가이드에서는 App Configuration 데이터를 가져오는 방법을 보여 줍니다.
구성 파일에서 데이터 가져오기
파일에서 키-값을 가져오려면 아래 단계를 따릅니다.
Azure Portal에서 다음 단계를 따릅니다.
App Configuration 저장소로 이동하고 작업 메뉴에서 가져오기/내보내기를 선택합니다.
가져오기 라디오 단추는 기본적으로 선택됩니다. 원본 유형아래에서 구성 파일을 선택합니다.
다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 파일 형식 가져올 파일 형식(YAML, 속성 또는 JSON)을 선택합니다. Json 찾아보기 단추를 클릭하고 가져올 파일을 선택합니다.
양식의 다음 부분을 작성합니다.
매개 변수 설명 예시 파일 콘텐츠 프로필 콘텐츠 프로필(기본값 또는 KVSet)을 선택합니다. 기본값 파일 콘텐츠 프로필은 기존 프로그래밍 프레임워크 또는 시스템에서 널리 채택된 기존 구성 파일 스키마를 참조하고 JSON, Yaml 또는 Properties 파일 형식을 지원합니다. KVSet 파일 콘텐츠 프로필은 키, 값, 레이블, 콘텐츠 형식 및 태그를 포함하여 App Configuration 키 값의 모든 속성을 포함하는 파일 스키마를 참조합니다. 기본값 가져오기 모드 가져오기 모드는 동일한 키-값을 무시할지 여부를 결정하는 데 사용됩니다. 일치 무시 옵션을 사용하면 구성 파일의 키 값과 동일한 저장소의 모든 키 값이 무시됩니다. 모두 옵션을 사용하면 구성 파일의 모든 키 값이 업데이트됩니다. 일치 무시 기능 플래그 제외 이 옵션을 선택하면 기능 플래그를 가져오지 않습니다. 선택 취소 Strict 이 확인란을 선택하면 파일 콘텐츠 프로필이 기본값으로 설정될 경우 지정된 접두사 및 레이블이 있고 구성 파일에 포함되지 않은 저장소의 모든 키 값이 삭제됩니다. 파일 콘텐츠 프로필이 KVSet으로 설정되면 구성 파일에 포함되지 않은 저장소의 모든 키 값이 삭제됩니다. 이 확인란을 선택 취소하면 저장소의 키 값이 삭제되지 않습니다. 선택 취소 구분 기호 구분 기호는 JSON 또는 YAML 파일을 키-값으로 평면화하기 위해 사용되는 구분 기호입니다. 속성 파일 및 기능 플래그에 대해서는 무시됩니다. 지원되는 값에는 구분 기호 없음, 마침표(.), 쉼표(,), 세미콜론(;), 하이픈(-), 밑줄(_), 이중 밑줄(__), 슬래시(/), 콜론(:) 등이 있습니다. : 깊이 선택 사항. JSON 또는 YAML 파일을 키-값 쌍으로 평면화하기 위한 깊이입니다. 기본적으로 구분 기호를 선택하면 파일이 가장 깊은 수준으로 평면화됩니다. 속성 파일 또는 기능 플래그에는 이 설정을 적용할 수 없습니다. 접두사 추가 선택 사항. 지정된 경우 가져온 모든 키 값의 키 이름에 접두사가 추가됩니다. TestApp: 레이블 추가 선택 사항. 지정된 경우 제공된 레이블이 가져온 모든 키 값에 할당됩니다. prod 콘텐츠 형식 추가 선택 사항. 지정된 경우 제공된 콘텐츠 형식이 가져온 모든 키 값에 추가됩니다. JSON’(애플리케이션/json)’ 태그 추가 선택 사항. 지정된 경우 제공된 태그가 가져온 모든 키 값에 추가됩니다. {tag: tag1} 적용을 선택하여 가져오기를 진행합니다.
JSON 파일에서 키-값을 가져왔습니다. 키 이름은 :
구분 기호를 사용하여 평면화되고 TestApp:
이 접두사로 지정됩니다. 가져온 모든 키-값은 prod
레이블이 지정되고, 콘텐츠 형식이 application/json
이고, tag: tag1
태그가 지정됩니다.
App Configuration 저장소에서 데이터 가져오기
한 App Configuration 저장소에서 다른 App Configuration 저장소로 값을 가져오거나 한 App Configuration 저장소에서 동일한 App Configuration 저장소로 값을 가져와 값을 복제하고 새 레이블 또는 콘텐츠 형식과 같은 다른 매개 변수를 적용할 수 있습니다.
Azure App Configuration 저장소에서 키-값 및 기능 플래그를 가져오려면 아래 단계를 따릅니다.
Azure Portal에서 다음 단계를 따릅니다.
App Configuration 저장소로 이동하고 작업 메뉴에서 가져오기/내보내기를 선택합니다.
가져오기 라디오 단추는 기본적으로 선택됩니다. 원본 유형아래에서 앱 구성을 선택합니다.
데이터를 가져올 App Configuration 저장소를 선택하고 다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 구독 현재 구독이 기본적으로 선택되어 있습니다. my-subscription Resource group 가져올 구성이 있는 App Configuration 저장소가 포함된 리소스 그룹을 선택합니다. 현재 리소스 그룹이 기본적으로 선택됩니다. my-resource-group 리소스 가져올 구성이 포함된 App Configuration 저장소를 선택합니다. my-other-app-config-store 양식의 다음 부분을 작성합니다.
매개 변수 설명 예시 선택 모드 기본 옵션인 일반 키-값에서 가져올지 또는 스냅샷에서 가져올지를 선택합니다. 기본값 키 필터 가져오기의 키 이름에 따라 키-값을 필터링하는 데 사용됩니다. 키가 지정되지 않은 경우 모든 키를 사용할 수 있습니다. test로 시작합니다. 특정 시간에 선택 사항. 선택한 구성 저장소의 특정 시점으로부터 키-값을 가져오려면 이 필드를 입력합니다. 이 필드를 비워 두면 기본적으로 키-값의 현재 시점으로 설정됩니다. 2022/07/28 오전 12:00:00 원본 레이블 하나 이상의 레이블을 선택하여 해당 레이블과 연결된 키-값을 가져옵니다. 선택한 레이블이 없으면 모든 레이블을 사용할 수 있습니다. prod 기능 플래그 제외 이 옵션을 선택하면 기능 플래그를 가져오지 않습니다. 선택 취소 접두사 추가 선택 사항. 지정된 경우 가져온 모든 키 값의 키 이름에 접두사가 추가됩니다. TestApp: 레이블 재정의 선택 사항. 기본적으로 원본 키-값의 원래 레이블은 유지됩니다. 재정의하려면 이 확인란을 선택하고 가져온 키 값에 대한 새 레이블을 입력합니다. 신규 콘텐츠 형식 재정의 선택 사항. 기본적으로 원본 키-값의 원래 콘텐츠 형식은 유지됩니다. 재정의하려면 이 확인란을 선택하고 가져온 키 값에 대한 새 콘텐츠 형식을 입력합니다. 기능 플래그의 콘텐츠 형식은 재정의할 수 없습니다. JSON’(애플리케이션/json)’ 적용을 선택하여 가져오기를 진행합니다.
2021년 1월 28일 오전 12시 현재, App Configuration 저장소에서 키 이름이 test
로 시작하고 레이블 prod
가 지정된 키-값을 가져왔습니다. 키 이름 앞에는 TestApp:
이 접두사로 추가됩니다. 가져온 모든 키-값에는 레이블 new
가 할당되었으며 콘텐츠 형식은 application/json
입니다.
Azure App Service에서 데이터 가져오기
Azure App Service에서 키-값을 가져오려면 아래 단계를 따릅니다.
참고 항목
App Service는 현재 기능 플래그를 지원하지 않습니다. App Service로 가져온 모든 기능 플래그는 자동으로 키-값으로 변환됩니다. App Service 리소스에는 키-값만 포함될 수 있습니다.
Azure 포털에서 다음을 수행합니다.
App Configuration 저장소로 이동하고 작업 메뉴에서 가져오기/내보내기를 선택합니다.
가져오기 라디오 단추는 기본적으로 선택됩니다. 원본 유형에서 App Services를 선택합니다.
데이터를 가져올 App Configuration 저장소를 선택하고 다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 구독 현재 구독이 기본적으로 선택되어 있습니다. my-subscription Resource group 가져올 구성이 있는 App Service가 포함된 리소스 그룹을 선택합니다. my-resource-group 리소스 가져올 구성이 포함된 App Service를 선택합니다. my-app-service 양식의 다음 부분을 작성합니다.
매개 변수 설명 예시 참조할 설정 업데이트 이 옵션을 선택하면 App Service의 앱 설정이 가져온 키 값에 대한 App Configuration 참조로 업데이트됩니다. 이렇게 하면 앞으로 App Configuration에서 앱 설정을 관리할 수 있습니다. App Service는 App Configuration에서 현재 값을 자동으로 가져옵니다. 자세한 내용은 App Service 및 Azure Functions의 App Configuration 참조 사용을 참조하세요. 선택 접두사 추가 선택 사항. 지정된 경우 가져온 모든 키 값의 키 이름에 접두사가 추가됩니다. TestApp: 레이블 추가 선택 사항. 지정된 경우 제공된 레이블이 가져온 모든 키 값에 할당됩니다. prod 콘텐츠 형식 추가 선택 사항. 지정된 경우 제공된 콘텐츠 형식이 가져온 모든 키 값에 추가됩니다. JSON’(애플리케이션/json)’ 적용을 선택하여 가져오기를 진행합니다.
App Service에서 모든 애플리케이션 설정을 키-값으로 가져오고 레이블 prod
와 접두사 TestApp:
을 할당했습니다. 가져온 모든 키-값에는 콘텐츠 형식이 application/json
으로 설정됩니다.
데이터 내보내기
내보내기는 App Configuration에 저장된 구성 데이터를 다른 대상에 기록합니다. 예를 들어 내보내기 함수를 사용하면 App Configuration 저장소의 데이터를 배포 중에 애플리케이션 코드에 포함될 수 있는 파일에 저장할 수 있습니다.
이 가이드에서는 App Configuration 데이터를 내보내는 방법을 보여 줍니다.
구성 파일로 데이터 내보내기
앱 구성 저장소에서 JSON, YAML 또는 Properties 파일로 구성 데이터를 내보내려면 아래 단계를 따릅니다.
Azure Portal에서 다음 단계를 따릅니다.
App Configuration 저장소로 이동한 후 가져오기/내보내기를 선택합니다.
내보내기 라디오 단추를 선택하고 대상 유형 아래에서 구성 파일을 선택합니다.
다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 파일 형식 내보낼 파일 형식(YAML, 속성 또는 JSON)을 선택합니다. JSON 파일 콘텐츠 프로필 콘텐츠 프로필(기본값 또는 KVSet)을 선택합니다. 기본값 파일 콘텐츠 프로필은 기존 프로그래밍 프레임워크 또는 시스템에서 널리 채택된 기존 구성 파일 스키마를 참조하고 JSON, Yaml 또는 Properties 파일 형식을 지원합니다. KVSet 파일 콘텐츠 프로필은 키, 값, 레이블, 콘텐츠 형식 및 태그를 포함하여 App Configuration 키 값의 모든 속성을 포함하는 파일 스키마를 참조합니다. 기본값 선택 모드 기본 옵션인 일반 키-값에서 내보낼지 또는 스냅샷에서 내보낼지를 선택합니다. 기본값 키 필터 내보내기의 키 이름에 따라 키-값을 필터링하는 데 사용됩니다. 키가 지정되지 않은 경우 모든 키를 사용할 수 있습니다. TestApp:으로 시작합니다. 특정 시간에 선택 사항. 선택한 구성 저장소의 특정 시점으로부터 키-값을 내보내려면 이 필드를 입력합니다. 이 필드를 비워 두면 기본적으로 키-값의 현재 시점으로 설정됩니다. 2022/07/28 오전 12:00:00 원본 레이블 레이블을 선택하여 해당 레이블과 연결된 키-값을 내보냅니다. 선택한 레이블이 없으면 모든 레이블을 사용할 수 있습니다. Default
파일 콘텐츠 프로필을 사용하여 내보낼 때는 레이블을 하나만 선택할 수 있습니다. 둘 이상의 레이블이 있는 키-값을 내보내려면KVSet
파일 콘텐츠 프로필을 사용합니다.prod 접두사 제거 선택 사항. 지정된 경우 접두사는 해당 접두사를 포함하는 내보낸 모든 키 값의 키 이름에서 제거됩니다. TestApp: 구분 기호 구분 기호는 키 이름을 분할하고 키-값에서 JSON 또는 YAML 파일에 대한 계층적 구성을 재구성하는 데 사용되는 구분 기호입니다. 속성 파일 및 기능 플래그에 대해서는 무시됩니다. 지원되는 값에는 구분 기호 없음, 마침표(.), 쉼표(,), 세미콜론(;), 하이픈(-), 밑줄(_), 이중 밑줄(__), 슬래시(/), 콜론(:) 등이 있습니다. : 내보내기를 선택하여 내보내기를 완료합니다.
2021년 1월 28일 오전 12시 현재, App Configuration 저장소에서 키 이름이 TestApp:
로 시작하고 레이블 prod
가 지정된 키-값을 JSON 파일로 내보냈습니다. TestApp:
접두사는 키 이름에서 잘렸고, 구분 기호 :
가 키 이름을 분할하고 계층적 JSON 형식을 다시 구성하는 데 사용되었습니다.
App Configuration 저장소로 데이터 내보내기
키-값 및 기능 플래그를 Azure App Configuration 저장소로 내보내려면 아래 단계를 따릅니다.
한 App Configuration 저장소에서 다른 App Configuration 저장소로 값을 내보내거나 한 App Configuration 저장소에서 동일한 App Configuration 저장소로 값을 내보내 해당 값을 복제하고 새 레이블 또는 콘텐츠 형식과 같은 다른 매개 변수를 적용할 수 있습니다.
Azure Portal에서 다음 단계를 따릅니다.
내보낼 데이터가 포함된 App Configuration 저장소로 이동하고 작업 메뉴에서 가져오기/내보내기를 선택합니다.
내보내기 라디오 단추를 선택하고 대상 유형 아래에서 App Configuration을 선택합니다.
다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 선택 모드 기본 옵션인 일반 키-값에서 내보낼지 또는 스냅샷에서 내보낼지를 선택합니다. 기본값 키 필터 내보내기의 키 이름에 따라 키-값을 필터링하는 데 사용됩니다. 키가 지정되지 않은 경우 모든 키를 사용할 수 있습니다. TestApp:으로 시작합니다. 특정 시간에 선택 사항. 선택한 구성 저장소의 특정 시점으로부터 키-값을 내보내려면 이 필드를 입력합니다. 이 필드를 비워 두면 기본적으로 키-값의 현재 시점으로 설정됩니다. 2022/07/28 오전 12:00:00 원본 레이블 하나 이상의 레이블을 선택하여 해당 레이블과 연결된 키-값을 내보냅니다. 선택한 레이블이 없으면 모든 레이블을 사용할 수 있습니다. prod 기능 플래그 제외 이 옵션을 선택하면 기능 플래그를 내보내지 않습니다. 선택 취소 대상 저장소를 선택하고, 다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 구독 현재 구독이 기본적으로 선택되어 있습니다. my-subscription Resource group 구성을 내보내려는 App Configuration 저장소가 포함된 리소스 그룹을 선택합니다. 현재 리소스 그룹이 기본적으로 선택됩니다. my-resource-group 리소스 구성을 내보내려는 App Configuration 저장소를 선택합니다. my-other-app-config-store 양식의 다음 부분을 작성합니다.
매개 변수 설명 예시 접두사 제거 선택 사항. 지정된 경우 접두사는 해당 접두사를 포함하는 내보낸 모든 키 값의 키 이름에서 제거됩니다. TestApp: 레이블 재정의 선택 사항. 기본적으로 원본 키-값의 원래 레이블은 유지됩니다. 재정의하려면 이 확인란을 선택하고 내보낸 키 값에 대한 새 레이블을 입력합니다. 신규 콘텐츠 형식 재정의 선택 사항. 기본적으로 원본 키-값의 원래 콘텐츠 형식은 유지됩니다. 재정의하려면 이 확인란을 선택하고 내보낸 키 값에 대한 새 콘텐츠 형식을 입력합니다. 기능 플래그의 콘텐츠 형식은 재정의할 수 없습니다. JSON’(애플리케이션/json)’ 내보내기를 계속하려면 적용을 선택합니다.
2022년 1월 28일 오전 12시 현재, App Configuration 저장소에서 키 이름이 TestApp:
로 시작하고 레이블 prod
가 지정된 키-값을 다른 App Configuration 저장소로 내보냈습니다. 내보낸 모든 키-값에서 키 접두사 TestApp:
가 잘렸고 레이블 new
및 콘텐츠 형식 application/json
이 할당되었습니다.
Azure App Service로 데이터 내보내기
키-값을 Azure App Service로 내보내려면 아래 단계를 따릅니다.
참고 항목
App Service로 기능 플래그 내보내기는 지원되지 않습니다.
Azure Portal에서 다음 단계를 따릅니다.
App Configuration 저장소로 이동하고 작업 메뉴에서 가져오기/내보내기를 선택합니다.
내보내기 라디오 단추를 선택하고 대상 유형 아래에서 App Services를 선택합니다.
참조로 내보내기 옵션은 기본적으로 선택되어 있습니다. 이 확인란을 선택하면 App Service의 애플리케이션 설정이 내보낸 키 값에 대한 App Configuration 참조로 추가됩니다. 이를 통해 App Configuration에서 설정을 관리할 수 있으며, App Service는 App Configuration에서 현재 값을 자동으로 끌어옵니다. 자세한 내용은 App Service 및 Azure Functions의 App Configuration 참조 사용을 참조하세요. 이 확인란을 선택 취소하면 키와 값이 App Service로 직접 내보내집니다. 애플리케이션이 업데이트를 선택하도록 App Configuration을 변경할 때마다 데이터를 다시 내보내야 합니다.
다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 선택 모드 기본 옵션인 일반 키-값에서 내보낼지 또는 스냅샷에서 내보낼지를 선택합니다. 기본값 키 필터 내보내기의 키 이름에 따라 키-값을 필터링하는 데 사용됩니다. 키가 지정되지 않은 경우 모든 키를 사용할 수 있습니다. TestApp:으로 시작합니다. 특정 시간에 선택 사항. 선택한 구성 저장소의 특정 시점으로부터 키-값을 내보내려면 이 필드를 입력합니다. 이 필드를 비워 두면 기본적으로 키-값의 현재 시점으로 설정됩니다. 2022/07/28 오전 12:00:00 원본 레이블 하나의 레이블을 선택하여 이 레이블과 연결된 키-값을 내보냅니다. prod 대상 저장소를 선택하고, 다음 매개 변수로 양식을 작성합니다.
매개 변수 설명 예시 구독 현재 구독이 기본적으로 선택되어 있습니다. my-subscription Resource group 구성을 내보내려는 App Service가 포함된 리소스 그룹을 선택합니다. my-resource-group 리소스 구성을 내보낼 App Service를 선택합니다. my-app-service 선택적으로 양식의 다음 부분을 작성합니다.
매개 변수 설명 예시 접두사 제거 선택 사항. 지정된 경우 접두사는 해당 접두사를 포함하는 내보낸 모든 키 값의 키 이름에서 제거됩니다. TestApp: 내보내기를 계속하려면 적용을 선택합니다.
2022년 1월 28일 오전 12시 현재, App Configuration 저장소에서 키 이름이 TestApp:
로 시작하고 레이블 prod
가 지정된 키-값을 App Service 리소스의 애플리케이션 설정으로 내보냈습니다. TestApp:
접두사가 내보낸 키 이름에서 잘렸습니다.
키-값을 참조로 내보내는 확인란을 선택한 경우 내보낸 키-값은 App Service 리소스 구성 설정의 “원본” 열에 App Configuration 참조로 표시됩니다.
오류 메시지
App Configuration 키-값을 가져오거나 내보낼 때 다음 오류 메시지가 나타날 수 있습니다.
- 저장소에 대한 공용 액세스가 사용하지 않도록 설정되었거나 저장소의 프라이빗 엔드포인트 구성에 없는 프라이빗 엔드포인트에서 액세스하고 있습니다. App Configuration 저장소에 프라이빗 엔드포인트가 사용하도록 설정된 경우 기본적으로 구성된 가상 네트워크 내에서만 액세스할 수 있습니다. Azure Portal 또는 CLI를 실행하는 컴퓨터가 프라이빗 엔드포인트와 동일한 가상 네트워크에 조인되어 있는지 확인합니다. App Configuration 저장소에 대한 공용 네트워크 액세스를 사용하도록 설정한 경우 캐시를 새로 고칠 수 있도록 5분 이상 기다렸다가 다시 시도하세요.