다음을 통해 공유


삭제된 App Service 앱 복원

Azure App Service에서 실수로 앱을 삭제한 경우 이제 Azure Portal 또는 PowerShell을 사용하여 앱을 복원할 수 있습니다.

중요합니다

이 기능은 무료 및 공유 계층을 사용하여 App Service 계획에서 호스트되는 앱에 대해 지원되지 않습니다.

Azure Portal을 사용하여 삭제된 App Service 앱 복원

Azure App Service에서 앱을 삭제한 경우 다음 단계에 따라 포털에서 앱을 복원할 수 있습니다.

  1. Azure Portal에서 App Services 로 이동합니다.
  2. 삭제된 앱 관리를 선택합니다.
  3. 구독을 선택합니다.
  4. 드롭다운 목록에서 삭제된 앱을 선택합니다. 지난 30일 동안 삭제된 앱이 목록에 표시됩니다.
  5. 드롭다운 목록에서 앱을 복원할 위치와 상관 관계가 있는 대상 앱을 선택합니다.
  6. 삭제된 앱을 대상 앱의 슬롯으로 복원하려면 슬롯 확인란을 선택하고 드롭다운 목록에서 사용 가능한 슬롯을 선택합니다.
  7. 기본적으로 앱 콘텐츠만 복원됩니다. 앱 구성도 복원하려면 앱 구성 복원을 선택합니다.

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, TargetNameTargetSlot는 삭제된 웹앱의 내용과 설정으로 덮어씌워집니다. 대상 매개 변수를 지정하지 않으면 삭제된 웹앱의 리소스 그룹, 이름 및 슬롯으로 자동으로 채워집니다. 대상 웹앱이 없으면 지정한 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 스토리지를 사용하는 한 복원할 수 있습니다.

  1. 복원하려는 앱 버전의 DeletedSiteId을 가져오려면 Get-AzDeletedWebApp cmdlet을 사용하십시오.

    Get-AzDeletedWebApp -ResourceGroupName <RGofDeletedApp> -Name <NameofApp> 
    
  2. 전용 플랜에서 새 함수 앱을 만듭니다. 포털에서 앱을 만드는 방법에 대한 지침을 참조하세요. 이 cmdlet을 사용하여 새로 만든 함수 앱으로 복원합니다.

    Restore-AzDeletedWebApp -ResourceGroupName <RGofnewapp> -Name <newApp> -deletedId "/subscriptions/xxxx/providers/Microsoft.Web/locations/xxxx/deletedSites/xxxx"
    

현재는 콘텐츠가 스토리지 계정의 Azure Files에 있기 때문에 cmdlet을 사용하여 Restore-AzDeletedWebApp 소비 계획 또는 탄력적 프리미엄 계획에서 호스트되는 함수 앱을 삭제 취소할 수 없습니다. Azure Files 스토리지 계정을 하드 삭제하지 않았거나 계정이 있고 파일 공유를 삭제하지 않은 경우 다음 단계를 해결 방법으로 사용할 수 있습니다.

  1. 사용 플랜 또는 프리미엄 플랜에서 새 함수 앱을 만듭니다. 포털에서 앱을 만드는 방법에 대한 지침을 참조하세요.

  2. 이전 앱의 콘텐츠를 포함하는 이전 스토리지 계정을 참조하도록 다음 앱 설정을 지정합니다.

    앱 설정 제안 값
    AzureWebJobsStorage 삭제된 앱에서 사용하는 스토리지 계정에 대한 연결 문자열
    WEBSITE_CONTENTAZUREFILECONNECTIONSTRING 삭제된 앱에서 사용하는 스토리지 계정에 대한 연결 문자열
    WEBSITE_CONTENTSHARE 삭제된 앱에서 사용하는 스토리지 계정의 파일 공유