App Service Environment v3로 마이그레이션

참고 항목

App Service Environment v3로 업그레이드하는 데 도움이 되는 두 가지 자동화된 마이그레이션 기능이 있습니다. 이러한 기능에 대해 자세히 알아보고 적합한 마이그레이션 옵션을 결정하는 데 도움이 되도록 마이그레이션 경로 의사 결정 트리를 참조하세요. App Service Environment v3에 대한 더 빠른 경로에 대한 자동화된 옵션 중 하나를 고려합니다.

현재 App Service Environment v1 또는 v2를 사용하는 경우 워크로드를 App Service Environment v3으로 마이그레이션할 수 있습니다. App Service Environment v3에는 워크로드에 대한 향상된 지원을 제공하고 전체 비용을 줄일 수 있는 장점과 기능적 차이가 있습니다. 환경이 마이그레이션 경로 의사 결정 트리에 설명된 조건을 충족하는 경우 자동화된 마이그레이션 기능을 사용하는 것이 좋습니다.

App Service Environment가 마이그레이션 기능에 대해 지원되지 않는 경우 수동 방법 중 하나를 사용하여 App Service Environment v3으로 마이그레이션해야 합니다.

필수 조건

시나리오: App Service Environment v1 또는 App Service Environment v2에서 실행되는 앱이 있으며 App Service Environment v3에서 실행하려면 해당 앱이 필요합니다.

자동화된 마이그레이션 기능을 사용하지 않는 마이그레이션 방법의 경우 선택한 방법을 사용하여 App Service Environment v3 리소스 및 새 서브넷을 만들어야 합니다.

App Service Environment v1/v2와 App Service Environment v3 간의 네트워킹 변경 에는 새로운(및 인터넷 연결 환경의 경우 추가) IP 주소가 포함됩니다. 이러한 IP를 사용하는 인프라를 업데이트해야 합니다. Azure Load Balancer 포트와 같은 인바운드 종속성 변경 사항을 고려해야 합니다.

단일 서브넷에는 여러 App Service Environment가 있을 수 없습니다. 새 App Service Environment v3 리소스에 기존 서브넷을 사용해야 하는 경우 새 App Service Environment를 만들기 전에 기존 App Service Environment를 삭제해야 합니다. 이 시나리오에서는 환경을 만들고 구성한 후 앱을 백업한 다음 새 환경에서 복원하는 것이 좋습니다. 이 프로세스는 다음을 수행하는 데 걸리는 시간 때문에 애플리케이션 가동 중지 시간을 발생합니다.

  • 이전 환경을 삭제합니다.
  • App Service Environment v3 리소스를 만듭니다.
  • 새 환경에서 작동하도록 인프라 및 연결된 리소스를 구성합니다.
  • 새 환경에 앱을 배포합니다.

앱을 마이그레이션하기 전 검사 목록

  • App Service Environment v3 리소스를 만듭니다.
  • 새 환경과 연결된 IP 주소로 네트워킹 종속성을 업데이트합니다.
  • 가동 중지 시간(해당하는 경우)을 계획합니다.
  • 새 환경에서 앱을 다시 만드는 프로세스를 결정합니다.

환경 크기 조정 및 크기 조정

App Service Environment v3은 격리된 계획과 다르게 가격이 책정되고 크기가 조정되는 격리된 v2 Azure 앱 Service 계획을 사용합니다. 적절한 용량을 보장하기 위해 새로운 환경의 크기를 조정하고 크기를 조정해야 하는 방법을 이해하려면 가격 책정 세부 정보를 검토합니다. App Service Environment v3에 대한 App Service 요금제를 만드는 방법은 이전 버전과 차이가 없습니다.

백업 및 복원 평가

백업 및 복원 기능을 사용하여 새 환경으로 마이그레이션할 때 앱 구성, 파일 콘텐츠 및 데이터베이스를 앱에 연결된 상태로 유지할 수 있습니다.

App Service Environment v3로 복원하려면 앱에 대한 사용자 지정 백업을 구성해야 합니다. 자동 백업은 다른 App Service Environment 버전에서는 복원을 지원하지 않습니다. 사용자 지정 백업에 대한 자세한 내용은 자동 백업과 사용자 지정 백업을 참조 하세요. Screenshot that shows options for configuring custom backups for an App Service app.

사용자 지정 백업을 선택하고 App Service Environment v3 리소스에서 App Service로 복원할 수 있습니다. 앱을 복원하기 전에 복원할 App Service 계획을 만들어야 합니다. 복원 프로세스 중에 만든 프로덕션 슬롯, 기존 슬롯 또는 새 슬롯으로 백업을 복원하도록 선택할 수 있습니다.

Screenshot that shows how to use a backup to restore an App Service app in App Service Environment v3.

이점 제한 사항
빠른 - 앱당 5~10분밖에 걸리지 않습니다. 지원은 특정 데이터베이스 유형으로 제한됩니다.
동시에 여러 앱을 복원할 수 있습니다. (각 앱에 대해 개별적으로 복원을 구성해야 합니다.) 이전 환경, 새 환경 및 지원 리소스(예: 앱, 데이터베이스, 스토리지 계정 및 컨테이너)는 모두 동일한 구독에 있어야 합니다.
앱 내 MySQL 데이터베이스는 구성 없이 자동으로 백업됩니다. 백업은 최대 10GB의 앱 및 데이터베이스 콘텐츠일 수 있습니다. 해당 콘텐츠의 최대 4GB는 데이터베이스 백업일 수 있습니다. 백업 크기가 이 제한을 초과하면 오류가 발생합니다.
이전 상태의 스냅샷 앱을 복원할 수 있습니다. 방화벽 사용 스토리지 계정을 백업 대상으로 사용하는 것은 지원되지 않습니다.
Azure Traffic Manager 및 Azure 애플리케이션 Gateway통합하여 이전 환경과 새 환경에 트래픽을 분산할 수 있습니다. 백업 및 복원을 위해 프라이빗 엔드포인트가 있는 스토리지 계정을 사용하는 것은 지원되지 않습니다.
복원을 시작하기 전에 새 환경에서 복원할 빈 웹앱을 만들어 프로세스 속도를 높일 수 있습니다. 사용자 지정 백업만 지원됩니다.

App Service Environment v3에 앱 복제

앱 복제는 Windows 앱을 App Service Environment v3에 가져오는 데 사용할 수 있는 또 다른 기능입니다. 앱 복제에 대한 제한 사항은 App Service 백업 기능의 제한 사항과 동일합니다. 자세한 내용은 Azure 앱 Service에서 앱 백업을 참조하세요.

참고 항목

앱 복제는 Windows의 App Service 계획에 대해서만 지원됩니다.

Windows에서 App Service를 사용하고 마이그레이션 기능을 사용하여 마이그레이션할 수 없는 사용자에게 이 솔루션을 권장합니다. 앱을 복제하기 전에 새 App Service Environment v3 리소스를 설정해야 합니다. 앱 복제를 완료하려면 최대 30분이 걸릴 수 있습니다.

PowerShell을 사용하여 앱을 복제하려면 지침을 참조 하세요.

Azure Portal을 사용하여 앱을 복제하려면 다음을 수행합니다.

  1. Azure Portal에서 기존 App Service 계획으로 이동합니다. 개발 도구에서 복제를 선택합니다.

  2. 새 App Service Environment v3 리소스에 대한 세부 정보를 사용하여 필수 필드를 채웁니다.

    1. 리소스 그룹의 경우 기존 리소스 그룹을 선택하거나 새 리소스 그룹을 만듭니다.
    2. 이름대해 앱에 이름을 지정합니다. 이 이름은 이전 앱과 동일할 수 있지만 새 환경에 대한 사이트의 기본 URL은 다릅니다. 새 URL을 가리키도록 사용자 지정 DNS 또는 연결된 리소스를 업데이트해야 합니다.
    3. 지역의 경우 App Service Environment v3 이름을 사용합니다.
    4. 배포 원본을 복제하려면 배포 원본 검사 복제를 선택합니다.
    5. Windows 플랜의 경우 이미 만든 경우 새 환경에서 기존 App Service 계획을 사용하거나 새 계획을 만들 수 있습니다. 새 App Service Environment v3 리소스에서 사용 가능한 App Service 계획이 드롭다운 목록에 표시됩니다.
    6. Sku 및 크기의 경우 새 App Service 계획을 만드는 경우 격리된 v2 옵션 중 하나를 사용하여 필요에 따라 메모리 및 CPU를 수정합니다. App Service Environment v3는 격리된 계획에 비해 해당 인스턴스 크기당 메모리 및 CPU가 더 많은 격리 v2 계획을 사용합니다. 자세한 내용은 App Service Environment v3 가격 책정 세부 정보를 참조 하세요.

Screenshot that shows options for cloning an app to App Service Environment v3 by using the portal.

이점 제한 사항
PowerShell을 사용하여 복제를 자동화할 수 있습니다. Windows의 App Service 계획에 대해서만 지원됩니다.
동시에 여러 앱을 복제할 수 있습니다. (개별적으로 또는 스크립트를 통해 각 앱에 대해 복제를 구성해야 합니다.) 지원은 특정 데이터베이스 유형으로 제한됩니다.
Azure Traffic Manager 및 Azure 애플리케이션 Gateway통합하여 이전 환경과 새 환경에 트래픽을 분산할 수 있습니다. 이전 환경, 새 환경 및 지원 리소스(예: 앱, 데이터베이스, 스토리지 계정 및 컨테이너)는 모두 동일한 구독에 있어야 합니다.

App Service Environment v3에서 수동으로 앱 만들기

마이그레이션 기능이 앱을 지원하지 않거나 더 수동 경로를 사용하려는 경우 기존 App Service Environment에 사용한 것과 동일한 프로세스를 따라 앱을 배포할 수 있습니다.

기존 앱, App Service 계획 및 기타 지원되는 리소스의 ARM 템플릿(Azure Resource Manager 템플릿)을 내보내고 새 환경에 배포할 수 있습니다. 앱에 대한 템플릿을 내보내려면 App Service 계획으로 이동합니다. 자동화에서 템플릿 내보내기를 선택합니다.

Screenshot of the option to export a template on the left pane of the Azure portal.

여러 리소스에 대한 템플릿을 리소스 그룹에서 직접 내보낼 수도 있습니다. 리소스 그룹으로 이동하여 템플릿에 사용할 리소스를 선택한 다음 템플릿 내보내기를 선택합니다.

Screenshot of the option for exporting a template for resources from a resource group.

App Service Environment v3에 앱을 다운로드하려면 ARM 템플릿에 대한 다음과 같은 초기 변경 내용이 필요합니다.

  • App Service 계획의 매개 변수를 격리된 v2 계획으로 업데이트 sku 합니다.

    "type": "Microsoft.Web/serverfarms",
    "apiVersion": "2021-02-01",
    "name": "[parameters('serverfarm_name')]",
    "location": "East US",
    "sku": {
        "name": "I1v2",
        "tier": "IsolatedV2",
        "size": "I1v2",
        "family": "Iv2",
        "capacity": 1
    },
    
  • App Service Environment v3와 연결된 계획에 앱이 배포될 App Service 계획(serverfarm) 매개 변수를 업데이트합니다.

  • 호스팅 환경 프로필(hostingEnvironmentProfile) 매개 변수를 새 App Service Environment v3 리소스 ID로 업데이트합니다.

  • ARM 템플릿 내보내기는 리소스 공급자가 리소스에 대해 노출하는 모든 속성을 포함합니다. 이전 앱의 do기본 가리키는 속성과 같이 필수가 아닌 속성을 모두 제거합니다. 예를 들어 리소스를 sites 다음 샘플로 간소화할 수 있습니다.

    "type": "Microsoft.Web/sites",
    "apiVersion": "2021-02-01",
    "name": "[parameters('site_name')]",
    "location": "East US",
    "dependsOn": [
        "[resourceId('Microsoft.Web/serverfarms', parameters('serverfarm_name'))]"
    ],
    "properties": {
        "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', parameters('serverfarm_name'))]",
        "siteConfig": {
            "linuxFxVersion": "NODE|14-lts"
         },
        "hostingEnvironmentProfile": {
            "id": "[parameters('hostingEnvironments_externalid')]"
        }
    }
    

앱을 구성한 방법에 따라 다른 변경이 필요할 수 있습니다. 예를 들어 이전 환경과 새 환경에 대해 시스템 할당 관리 ID와 동일한 애플리케이션 이름을 사용하는 경우 충돌이 발생할 수 있습니다. 이 충돌을 해결하고 가동 중지 시간을 방지하려면 사용자 할당 관리 ID를 사용할 수 있습니다.

Azure Portal, Azure CLI 또는 PowerShell을 사용하여 ARM 템플릿을 배포할 수 있습니다.

수동으로 마이그레이션

현재 위치 마이그레이션 기능은 App Service Environment v3으로의 마이그레이션을 자동화하고 모든 앱을 새 환경으로 전송합니다. 이 마이그레이션 중에는 약 1시간의 가동 중지 시간이 있습니다. 앱에 가동 중지 시간이 없는 경우 새 환경이 다른 서브넷에 만들어지므로 가동 중지 시간 0 마이그레이션 옵션인 병렬 마이그레이션 기능을 사용하는 것이 좋습니다. 또한 병렬 마이그레이션 기능을 사용하지 않도록 선택하는 경우 수동 옵션 중 하나를 사용하여 App Service Environment v3에서 앱을 다시 만들 수 있습니다.

Application Gateway를 사용하여 이전 환경과 새 환경 간에 트래픽을 분산할 수 있습니다. ILB(내부 부하 분산 장치) App Service Environment를 사용하는 경우 환경 간에 트래픽을 분산하는 추가 백 엔드 풀이 있는 Azure 애플리케이션 Gateway 인스턴스를 만듭니다. ILB App Service Environment 및 인터넷 연결 App Service Environment에 대한 자세한 내용은 Application Gateway 통합을 참조하세요.

Azure Front Door, Azure Content Delivery Network 및 Azure Traffic Manager같은 서비스를 사용하여 환경 간에 트래픽을 분산할 수도 있습니다. 이러한 서비스를 사용하면 제어된 방식으로 새 환경을 테스트할 수 있으며 사용자 고유의 속도로 새 환경으로 이동할 수 있습니다.

마이그레이션 및 새 환경을 사용한 테스트가 완료되면 이전 App Service Environment, 해당 환경의 앱 및 더 이상 필요하지 않은 지원 리소스를 삭제합니다. 삭제하지 않는 모든 리소스에 대한 요금이 계속 청구됩니다.

자주 묻는 질문

  • 수동 옵션 중 하나를 사용하여 App Service Environment v3으로 마이그레이션해야 하는지 어떻게 할까요? 알고 있나요?
    적합한 마이그레이션 옵션을 결정하는 데 도움이 되도록 마이그레이션 경로 의사 결정 트리를 참조 하세요. 환경이 마이그레이션 경로 의사 결정 트리설명된 조건을 충족하는 경우 App Service Environment v3에 대한 더 빠른 경로를 위해 자동화된 마이그레이션 기능 중 하나를 사용하는 것이 좋습니다. 앱을 새 환경으로 천천히 이동하고 전체 프로세스 전체에서 유효성을 검사해야 하는 경우 수동 마이그레이션을 사용하는 것이 좋습니다.

  • 마이그레이션하는 동안 가동 중지 시간이 발생되나요?
    가동 중지 시간은 마이그레이션 프로세스에 따라 달라집니다. 마이그레이션하는 동안 트래픽을 가리킬 수 있는 다른 App Service Environment가 있거나 다른 서브넷을 사용하여 새 환경을 만들 수 있는 경우 가동 중지 시간이 발생하지 않습니다. 동일한 서브넷을 사용해야 하는 경우 이전 환경을 삭제하고, App Service Environment v3 리소스를 만들고, 새 App Service 계획을 만들고, 앱을 다시 만들고, 새 IP 주소를 사용하는 모든 리소스를 업데이트하는 동안 가동 중지 시간이 있습니다.

  • 앱이 App Service Environment v3에서 실행되도록 앱을 변경해야 하나요?
    아니요. App Service Environment v1 및 v2에서 실행되는 앱은 App Service Environment v3에서 실행하기 위해 수정할 필요가 없습니다. IP SSL을 사용하는 경우 마이그레이션하기 전에 IP SSL 바인딩을 제거해야 합니다.

  • 내 앱 서비스 환경에 사용자 지정 도메인 접미사가 있는 경우 어떻게 해야 할까요?
    마이그레이션 기능은 이 마이그레이션 시나리오를 지원합니다. 마이그레이션 기능을 사용하지 않으려면 수동 메서드를 사용하여 마이그레이션할 수 있습니다. App Service Environment v3 리소스를 만들 때 또는 언제든지 사용자 지정 do기본 접미사를 구성할 수 있습니다.

  • 내 App Service Environment v2 리소스가 영역이 고정된 경우 어떻게 해야 합니까?
    영역 고정은 App Service Environment v3에서 지원되는 기능이 아닙니다. App Service Environment v3 리소스를 만들 때 영역 중복을 사용하도록 선택할 수 있습니다.

  • 내 App Service Environment의 어떤 속성이 변경될까요?
    App Service Environment v3와 이전 버전 간의 기능 차이점을 검토합니다. ILB App Service Environment의 경우 동일한 ILB IP 주소를 유지합니다. 인터넷 연결 App Service Environment의 경우 공용 IP 주소 및 아웃바운드 IP 주소가 변경됩니다.

    인터넷 연결 App Service Environment의 경우 이전에는 인바운드 및 아웃바운드 모두에 대한 단일 IP가 있었습니다. 앱 서비스 환경 v3의 경우에는 별개입니다. 더 상세한 정보는 앱 서비스 환경 v3 네트워킹을 참고하세요.

  • App Service Environment v2에서 v3으로 앱을 이동하기 위한 백업 및 복원이 지원됩니까? 백업 및 복원 기능은 복원에 사용자 지정 백업을 사용하는 한 App Service Environment 버전 간에 앱 복원을 지원합니다. 자동 백업은 다른 App Service Environment 버전에서는 복원을 지원하지 않습니다.

  • 2024년 8월 31일 이후에 App Service Environment v1 및 v2 리소스는 어떻게 됩니까?
    2024년 8월 31일 이후에 App Service Environment v3으로 마이그레이션하지 않은 경우 App Service Environment v1 및 v2 리소스 및 배포된 앱을 더 이상 사용할 수 없습니다.

    App Service Environment v1 및 v2는 Azure Cloud Services(클래식) 아키텍처에서 실행되는 App Service 배율 단위에서 호스트됩니다. 이 아키텍처는 2024년 8월 31일에 사용 중지되므로 App Service Environment v1 및 v2는 해당 날짜 이후에 사용할 수 없습니다. App Service Environment v3으로 마이그레이션하여 앱을 계속 실행하거나 기본 필요한 리소스 또는 데이터를 저장하거나 백업합니다.

다음 단계