Azure App Service에서 실수로 앱을 삭제한 경우 이제 Azure Portal 또는 PowerShell을 사용하여 앱을 복원할 수 있습니다.
중요합니다
이 기능은 무료 및 공유 계층을 사용하여 App Service 계획에서 호스트되는 앱에 대해 지원되지 않습니다.
Azure Portal을 사용하여 삭제된 App Service 앱 복원
Azure App Service에서 앱을 삭제한 경우 다음 단계에 따라 포털에서 앱을 복원할 수 있습니다.
- Azure Portal에서 App Services 로 이동합니다.
- 삭제된 앱 관리를 선택합니다.
- 구독을 선택합니다.
- 드롭다운 목록에서 삭제된 앱을 선택합니다. 지난 30일 동안 삭제된 앱이 목록에 표시됩니다.
- 드롭다운 목록에서 앱을 복원할 위치와 상관 관계가 있는 대상 앱을 선택합니다.
- 삭제된 앱을 대상 앱의 슬롯으로 복원하려면 슬롯 확인란을 선택하고 드롭다운 목록에서 사용 가능한 슬롯을 선택합니다.
- 기본적으로 앱 콘텐츠만 복원됩니다. 앱 구성도 복원하려면 앱 구성 복원을 선택합니다.
PowerShell을 사용하여 삭제된 App Service 앱 복원
Azure App Service에서 앱을 삭제한 경우, Az PowerShell module
의 명령어를 사용하여 복원할 수 있습니다.
참고
- 삭제된 앱은 초기 삭제 후 30일이 지나면 시스템에서 제거됩니다. 제거된 앱은 복구할 수 없습니다.
- 소비 플랜 또는 탄력적 프리미엄 플랜에서 호스트되는 함수 앱에는 삭제 취소 기능이 지원되지 않습니다.
App Service 리소스 공급자 다시 등록
일부 고객은 삭제된 앱 목록을 검색하지 못할 수 있습니다. 이 문제를 해결하려면 다음 명령을 실행합니다.
Register-AzResourceProvider -ProviderNamespace "Microsoft.Web"
삭제된 앱 나열
삭제된 앱 컬렉션에 액세스하려면 Get-AzDeletedWebApp
를 사용하십시오.
삭제된 특정 앱에 대한 세부 정보를 얻으려면 다음을 사용할 수 있습니다.
Get-AzDeletedWebApp -Name <your_deleted_app> -Location <your_deleted_app_location>
자세한 정보에는 다음이 포함됩니다.
- DeletedSiteId: 동일한 이름의 여러 앱이 삭제된 시나리오에 사용되는 앱의 고유 식별자입니다.
- SubscriptionID: 삭제된 리소스를 포함하는 구독입니다.
- 위치: 원래 앱의 위치입니다.
- ResourceGroupName: 원래 리소스 그룹의 이름입니다.
- Name: 원래 앱의 이름
- 슬롯: 슬롯의 이름입니다.
- 삭제 시간: 앱이 삭제된 시간입니다.
삭제된 앱 복원
참고
- 소비 계획 또는 유연한 프리미엄 플랜에서 호스트되는 함수 앱에는
Restore-AzDeletedWebApp
이 지원되지 않습니다. - cmdlet 명령은 삭제된 웹 앱을 복원합니다. 지정된 웹앱
TargetResourceGroupName
,TargetName
및TargetSlot
는 삭제된 웹앱의 내용과 설정으로 덮어씌워집니다. 대상 매개 변수를 지정하지 않으면 삭제된 웹앱의 리소스 그룹, 이름 및 슬롯으로 자동으로 채워집니다. 대상 웹앱이 없으면 지정한 App Service 계획TargetAppServicePlanName
에서 자동으로 만들어집니다. - 기본적으로
Restore-AzDeletedWebApp
앱 구성과 모든 콘텐츠를 모두 복원합니다. 콘텐츠만 복원하려면 이 cmdlet과 함께 플래그를-RestoreContentOnly
사용합니다. - 앱으로 가져오는 사용자 지정 도메인, 바인딩 또는 인증서는 복원되지 않습니다. 앱이 복원된 후 다시 추가해야 합니다.
복원하려는 앱을 식별한 후 다음 예제와 같이 사용하여 Restore-AzDeletedWebApp
복원할 수 있습니다.
전체 cmdlet 참조는 다음에서 찾을 수 있습니다 Restore-AzDeletedWebApp
.
원래 앱 이름으로 복원합니다.
Restore-AzDeletedWebApp -TargetResourceGroupName <my_rg> -Name <my_app> -TargetAppServicePlanName <my_asp>
다른 앱 이름으로 복원합니다.
Restore-AzDeletedWebApp -ResourceGroupName <original_rg> -Name <original_app> -TargetResourceGroupName <target_rg> -TargetName <target_app> -TargetAppServicePlanName <target_asp>
대상 앱에 슬롯을 복원합니다.
Restore-AzDeletedWebApp -TargetResourceGroupName <my_rg> -Name <my_app> -TargetAppServicePlanName <my_asp> -Slot <original_slot>
참고
배포 슬롯은 앱의 일부로 복원되지 않습니다. 스테이징 슬롯을 복원해야 하는 경우 -Slot <slot-name>
플래그를 사용합니다.
cmdlet은 원래 슬롯을 대상 앱의 프로덕션 슬롯으로 복원합니다.
기본적으로 Restore-AzDeletedWebApp
앱 구성과 모든 콘텐츠를 모두 대상 앱에 복원합니다. 콘텐츠만 복원하려면 이 cmdlet과 함께 플래그를 -RestoreContentOnly
사용합니다.
사이트 콘텐츠만 대상 앱으로 복원합니다.
Restore-AzDeletedWebApp -TargetResourceGroupName <my_rg> -Name <my_app> -TargetAppServicePlanName <my_asp> -RestoreContentOnly
-DeletedSiteId
를 사용하여 동일한 이름을 가진 여러 앱이 삭제된 시나리오에서 복원:
Restore-AzDeletedWebApp -ResourceGroupName <original_rg> -Name <original_app> -DeletedId /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Web/locations/location/deletedSites/1234 -TargetAppServicePlanName <my_asp>
명령에 대한 입력은 다음과 같습니다.
- 대상 리소스 그룹: 앱이 복원될 대상 리소스 그룹입니다.
- TargetName: 삭제된 앱을 복원할 대상 앱입니다.
- TargetAppServicePlanName: 앱에 연결된 App Service 계획입니다.
- 이름: 앱의 이름입니다. 전역적으로 고유한 것이 좋습니다.
- ResourceGroupName: 삭제된 앱의 원래 리소스 그룹입니다.
Get-AzDeletedWebApp -Name <your_deleted_app> -Location <your_deleted_app_location>
에서 가져올 수 있습니다. - 슬롯: 삭제된 앱의 슬롯입니다.
- RestoreContentOnly: 기본값으로
Restore-AzDeletedWebApp
은 앱 구성과 콘텐츠를 모두 복원합니다. 콘텐츠만 복원하려면 이 cmdlet에서 플래그를-RestoreContentOnly
사용할 수 있습니다.
참고
앱이 호스트된 후 App Service Environment에서 삭제된 경우에는 해당 App Service Environment가 계속 존재할 경우에만 복원할 수 있습니다.
삭제된 Azure Functions 앱 복원
함수 앱이 전용 App Service 계획에서 호스트된 경우 기본 App Service 스토리지를 사용하는 한 복원할 수 있습니다.
복원하려는 앱 버전의
DeletedSiteId
을 가져오려면Get-AzDeletedWebApp
cmdlet을 사용하십시오.Get-AzDeletedWebApp -ResourceGroupName <RGofDeletedApp> -Name <NameofApp>
전용 플랜에서 새 함수 앱을 만듭니다. 포털에서 앱을 만드는 방법에 대한 지침을 참조하세요. 이 cmdlet을 사용하여 새로 만든 함수 앱으로 복원합니다.
Restore-AzDeletedWebApp -ResourceGroupName <RGofnewapp> -Name <newApp> -deletedId "/subscriptions/xxxx/providers/Microsoft.Web/locations/xxxx/deletedSites/xxxx"
현재는 콘텐츠가 스토리지 계정의 Azure Files에 있기 때문에 cmdlet을 사용하여 Restore-AzDeletedWebApp
소비 계획 또는 탄력적 프리미엄 계획에서 호스트되는 함수 앱을 삭제 취소할 수 없습니다. Azure Files 스토리지 계정을 하드 삭제하지 않았거나 계정이 있고 파일 공유를 삭제하지 않은 경우 다음 단계를 해결 방법으로 사용할 수 있습니다.
사용 플랜 또는 프리미엄 플랜에서 새 함수 앱을 만듭니다. 포털에서 앱을 만드는 방법에 대한 지침을 참조하세요.
이전 앱의 콘텐츠를 포함하는 이전 스토리지 계정을 참조하도록 다음 앱 설정을 지정합니다.
앱 설정 제안 값 AzureWebJobsStorage
삭제된 앱에서 사용하는 스토리지 계정에 대한 연결 문자열 WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
삭제된 앱에서 사용하는 스토리지 계정에 대한 연결 문자열 WEBSITE_CONTENTSHARE
삭제된 앱에서 사용하는 스토리지 계정의 파일 공유