다음을 통해 공유


Azure Stack Hub 2302의 App Service 릴리스 정보

이 릴리스 정보에서는 Azure Stack Hub 2302의 Azure 앱 Service의 향상된 기능과 수정 사항 및 알려진 문제에 대해 설명합니다. 알려진 문제는 배포, 업데이트 프로세스 및 빌드와 관련된 문제(설치 후)와 직접 관련된 문제로 나뉩니다.

Important

필요한 경우 App Service RP(리소스 공급자)를 배포하거나 업데이트하기 전에 Azure Stack Hub를 지원되는 버전으로 업데이트하거나 최신 Azure Stack 개발 키트를 배포합니다. 배포에 영향을 줄 수 있는 새로운 기능, 수정 사항 및 알려진 문제에 대해 알아보려면 RP 릴리스 정보를 읽어야 합니다.

지원되는 최소 Azure Stack Hub 버전 App Service RP 버전
2301 이상 2302 설치 관리자 (릴리스 정보)

빌드 참조

Azure Stack Hub 2302 빌드 번호의 App Service는 98.0.1.703입니다 .

새로운 기능

Azure Stack Hub 2302 릴리스의 Azure 앱 Service는 2022 H1 릴리스를 대체하며 다음 문제에 대한 수정 사항을 포함합니다.

  • Azure Stack Hub 권한 상승 취약성의 CVE-2023-21703 Azure 앱 Service.

  • Azure Stack Hub 관리 포털의 App Service 역할 관리자 사용자 환경에서 Virtual Machine Scale Sets 사용자 환경을 열 수 없습니다.

  • 다른 모든 업데이트는 Azure Stack Hub 2022 H1 업데이트 릴리스 정보에서 Azure 앱 서비스에 설명되어 있습니다.

  • Azure Stack Hub 2022 H1 업데이트의 Azure 앱 서비스를 기준으로 문자 K는 이제 예약된 SKU 문자입니다. 문자 K를 사용하는 사용자 지정 SKU가 정의되어 있는 경우 업그레이드하기 전에 지원팀에 문의하여 이 상황을 해결하는 데 도움을 주세요.

필수 조건

배포를 시작하기 전에 시작하기 전에 설명서를 참조하세요 .

Azure Stack Hub의 Azure 앱 Service를 2302로 업그레이드하기 전에 다음을 수행합니다.

  • Azure Stack Hub가 1.2108.2.127 또는 1.2206.2.52로 업데이트되었는지 확인합니다.

  • Azure Stack Hub 관리 포털의 Azure 앱 Service 관리에서 모든 역할이 준비되었는지 확인합니다.

  • Azure Stack Hub 관리 포털에서 App Service 관리를 사용하여 App Service 비밀을 백업합니다.

  • App Service 및 SQL Server 마스터 데이터베이스를 백업합니다.

    • AppService_Hosting;
    • AppService_Metering;
    • 마스터
  • 테넌트 앱 콘텐츠 파일 공유를 백업합니다.

    Important

    클라우드 운영자는 파일 서버 및 SQL Server의 유지 관리 및 작업을 담당합니다. 리소스 공급자는 이러한 리소스를 관리하지 않습니다. 클라우드 운영자는 App Service 데이터베이스 및 테넌트 콘텐츠 파일 공유를 백업해야 합니다.

  • Marketplace에서 사용자 지정 스크립트 확장 버전 1.9.3 을 신디케이트합니다.

업데이트 전 단계

참고 항목

이전에 Azure Stack Hub 2022 H1의 Azure 앱 서비스를 Azure Stack Hub 스탬프에 배포한 경우 이 릴리스는 두 가지 문제를 해결하는 2022 H1로의 사소한 업그레이드입니다.

Azure Stack Hub 2302의 Azure 앱 서비스는 완료하는 데 몇 시간이 걸리는 중요한 업데이트입니다. 전체 배포가 업데이트되고 모든 역할이 Windows Server 2022 Datacenter OS로 다시 생성됩니다. 따라서 업데이트를 적용하기 전에 최종 고객에게 계획된 업데이트를 알리는 것이 좋습니다.

  • Azure Stack Hub 2022 H1 업데이트의 Azure 앱 서비스를 기준으로 문자 K는 이제 예약된 SKU 문자입니다. 문자 K를 사용하는 사용자 지정 SKU가 정의되어 있는 경우 업그레이드하기 전에 지원팀에 문의하여 이 상황을 해결하는 데 도움을 주세요.

알려진 업데이트 문제를 검토하고 규정된 작업을 수행합니다.

배포 후 단계

Important

App Service 리소스 공급자에 SQL Always On 인스턴스를 제공한 경우 appservice_hosting 및 appservice_metering 데이터베이스를 가용성 그룹에 추가하고 데이터베이스를 동기화하여 데이터베이스 장애 조치(failover) 시 서비스 손실을 방지해야 합니다.

알려진 문제(업데이트)

  • appservice_hosting 및 appservice_metering 데이터베이스를 포함된 데이터베이스로 변환한 경우 로그인이 포함된 사용자로 성공적으로 마이그레이션되지 않은 경우 업그레이드가 실패할 수 있습니다.

    배포 후 appservice_hosting 및 appservice_metering 데이터베이스를 포함된 데이터베이스로 변환하고 데이터베이스 로그인을 포함된 사용자로 마이그레이션하지 않은 경우 업그레이드 오류가 발생할 수 있습니다.

    Azure Stack Hub의 Azure 앱 서비스를 2020 Q3으로 업그레이드하기 전에 SQL Server 호스팅 appservice_hosting 및 appservice_metering 대해 다음 스크립트를 실행해야 합니다. 이 스크립트는 비 파괴적이며 가동 중지 시간을 발생시키지 않습니다.

    이 스크립트는 다음 조건에서 실행해야 합니다.

    • 시스템 관리자 권한이 있는 사용자(예: SQL SA 계정).
    • SQL Always On을 사용하는 경우 양식의 모든 App Service 로그인이 포함된 SQL 인스턴스에서 스크립트를 실행해야 합니다.
      • appservice_hosting_FileServer
      • appservice_hosting_HostingAdmin
      • appservice_hosting_LoadBalancer
      • appservice_hosting_Operations
      • appservice_hosting_Publisher
      • appservice_hosting_SecurePublisher
      • appservice_hosting_WebWorkerManager
      • appservice_metering_Common
      • appservice_metering_Operations
      • 모든 WebWorker 로그인 - ip 주소 WebWorker_< 양식>
          USE appservice_hosting
          IF EXISTS(SELECT * FROM sys.databases WHERE Name=DB_NAME() AND containment = 1)
          BEGIN
          DECLARE @username sysname ;  
          DECLARE user_cursor CURSOR  
          FOR
              SELECT dp.name
              FROM sys.database_principals AS dp  
              JOIN sys.server_principals AS sp
                  ON dp.sid = sp.sid  
                  WHERE dp.authentication_type = 1 AND dp.name NOT IN ('dbo','sys','guest','INFORMATION_SCHEMA');
              OPEN user_cursor  
              FETCH NEXT FROM user_cursor INTO @username  
                  WHILE @@FETCH_STATUS = 0  
                  BEGIN  
                      EXECUTE sp_migrate_user_to_contained
                      @username = @username,  
                      @rename = N'copy_login_name',  
                      @disablelogin = N'do_not_disable_login';  
                  FETCH NEXT FROM user_cursor INTO @username  
              END  
              CLOSE user_cursor ;  
              DEALLOCATE user_cursor ;
              END
          GO
    
          USE appservice_metering
          IF EXISTS(SELECT * FROM sys.databases WHERE Name=DB_NAME() AND containment = 1)
          BEGIN
          DECLARE @username sysname ;  
          DECLARE user_cursor CURSOR  
          FOR
              SELECT dp.name
              FROM sys.database_principals AS dp  
              JOIN sys.server_principals AS sp
                  ON dp.sid = sp.sid  
                  WHERE dp.authentication_type = 1 AND dp.name NOT IN ('dbo','sys','guest','INFORMATION_SCHEMA');
              OPEN user_cursor  
              FETCH NEXT FROM user_cursor INTO @username  
                  WHILE @@FETCH_STATUS = 0  
                  BEGIN  
                      EXECUTE sp_migrate_user_to_contained
                      @username = @username,  
                      @rename = N'copy_login_name',  
                      @disablelogin = N'do_not_disable_login';  
                  FETCH NEXT FROM user_cursor INTO @username  
              END  
              CLOSE user_cursor ;  
              DEALLOCATE user_cursor ;
              END
          GO
    
  • 테넌트 애플리케이션은 업그레이드 후 애플리케이션에 인증서를 바인딩할 수 없습니다.

    이 문제의 원인은 Windows Server 2022로 업그레이드한 후 프런트 엔드에서 누락된 기능 때문입니다. 운영자는 이 절차를 따라 문제를 해결해야 합니다.

    1. Azure Stack Hub 관리 포털에서 네트워크 보안 그룹으로 이동하고 ControllersNSG 네트워크 보안 그룹을 봅니다.

    2. 기본적으로 원격 데스크톱은 모든 App Service 인프라 역할에 사용할 수 없습니다. Inbound_Rdp_3389 규칙 작업을 수정하여 액세스를 허용합니다.

    3. App Service 리소스 공급자 배포가 포함된 리소스 그룹으로 이동합니다. 기본적으로 이름은 AppService입니다.<지역> 및 CN0-VM연결합니다.

    4. CN0-VM 원격 데스크톱 세션으로 돌아갑니다.

    5. 관리자 PowerShell 세션에서 다음을 실행합니다.

      Important

      이 스크립트를 실행하는 동안 프런트 엔드 확장 집합의 각 인스턴스에 대해 일시 중지가 발생합니다. 기능이 설치 중임을 나타내는 메시지가 있으면 해당 인스턴스가 다시 부팅됩니다. 스크립트에서 일시 중지를 사용하여 프런트 엔드 가용성을 유지합니다. 운영자는 테넌트 애플리케이션이 트래픽을 수신하고 가동 중지 시간이 발생하지 않도록 항상 하나 이상의 프런트 엔드 인스턴스가 "준비"되었는지 확인해야 합니다.

      $c = Get-AppServiceConfig -Type Credential -CredentialName FrontEndCredential
      $spwd = ConvertTo-SecureString -String $c.Password -AsPlainText -Force
      $cred = New-Object System.Management.Automation.PsCredential ($c.UserName, $spwd)
      
      Get-AppServiceServer -ServerType LoadBalancer | ForEach-Object {
          $lb = $_
          $session = New-PSSession -ComputerName $lb.Name -Credential $cred
      
          Invoke-Command -Session $session {
            $f = Get-WindowsFeature -Name Web-CertProvider
            if (-not $f.Installed) {
                Write-Host Install feature on $env:COMPUTERNAME
                Install-WindowsFeature -Name Web-CertProvider
      
                Shutdown /t 5 /r /f 
            }
         }
      }
      
      Remove-PSSession -Session $session
      
      Read-Host -Prompt "If installing the feature, the machine will reboot. Wait until there's enough frontend availability, then press ENTER to continue"
      
    6. Azure Stack 관리 포털에서 ControllersNSG 네트워크 보안 그룹으로 다시 이동합니다.

    7. 액세스를 거부하도록 Inbound_Rdp_3389 규칙을 수정합니다.

알려진 문제(설치 후)

  • Azure Stack의 Azure 앱 Service 배포 설명서에서 설명한 대로 App Service가 기존 가상 네트워크에 배포되고 파일 서버를 프라이빗 네트워크에서만 사용할 수 있는 경우 작업자는 파일 서버에 연결할 수 없습니다.

    기존 가상 네트워크 및 내부 IP 주소에 배포하여 파일 서버에 연결하도록 선택한 경우 아웃바운드 보안 규칙을 추가하여 작업자 서브넷과 파일 서버 간에 SMB 트래픽을 사용하도록 설정해야 합니다. 관리 포털에서 WorkerNsg로 이동하여 다음 속성을 사용하여 아웃바운드 보안 규칙을 추가합니다.

    • 원본: 모두
    • 원본 포트 범위: *
    • 대상: IP 주소
    • 대상 IP 주소 범위: 파일 서버의 IP 범위
    • 대상 포트 범위: 445
    • 프로토콜: TCP
    • 작업: 허용
    • 우선 순위: 700
    • 이름: Outbound_Allow_SMB445
  • 작업자가 파일 서버와 통신할 때 대기 시간을 제거하려면 Active Directory를 사용하여 파일 서버를 보호하는 경우 아웃바운드 LDAP 및 Kerberos 트래픽을 Active Directory 컨트롤러에 허용하도록 작업자 NSG에 다음 규칙을 추가하는 것이 좋습니다. 예를 들어 빠른 시작 템플릿을 사용하여 HA 파일 서버 및 SQL Server를 배포한 경우입니다.

    관리 포털에서 WorkerNsg로 이동하여 다음 속성을 사용하여 아웃바운드 보안 규칙을 추가합니다.

    • 원본: 모두
    • 원본 포트 범위: *
    • 대상: IP 주소
    • 대상 IP 주소 범위: AD 서버의 IP 범위(예: 빠른 시작 템플릿 10.0.0.100, 10.0.0.101 사용)
    • 대상 포트 범위: 389,88
    • 프로토콜: 모두
    • 작업: 허용
    • 우선 순위: 710
    • 이름: Outbound_Allow_LDAP_and_Kerberos_to_Domain_Controllers
  • 테넌트 애플리케이션은 업그레이드 후 애플리케이션에 인증서를 바인딩할 수 없습니다.

    이 문제의 원인은 Windows Server 2022로 업그레이드한 후 프런트 엔드에 누락된 기능 때문입니다. 운영자는 이 절차를 따라 문제를 해결해야 합니다.

    1. Azure Stack Hub 관리 포털에서 네트워크 보안 그룹으로 이동하고 ControllersNSG 네트워크 보안 그룹을 봅니다.

    2. 기본적으로 원격 데스크톱은 모든 App Service 인프라 역할에 사용할 수 없습니다. Inbound_Rdp_3389 규칙 작업을 수정하여 액세스를 허용합니다.

    3. App Service 리소스 공급자 배포가 포함된 리소스 그룹으로 이동합니다. 기본적으로 이름은 AppService입니다.<지역> 및 CN0-VM연결합니다.

    4. CN0-VM 원격 데스크톱 세션으로 돌아갑니다.

    5. 관리자 PowerShell 세션에서 다음을 실행합니다.

      Important

      이 스크립트를 실행하는 동안 프런트 엔드 확장 집합의 각 인스턴스에 대해 일시 중지가 발생합니다. 기능이 설치 중임을 나타내는 메시지가 있으면 해당 인스턴스가 다시 부팅됩니다. 스크립트에서 일시 중지를 사용하여 프런트 엔드 가용성을 유지합니다. 운영자는 테넌트 애플리케이션이 트래픽을 수신하고 가동 중지 시간이 발생하지 않도록 항상 하나 이상의 프런트 엔드 인스턴스가 "준비"되었는지 확인해야 합니다.

      $c = Get-AppServiceConfig -Type Credential -CredentialName FrontEndCredential
      $spwd = ConvertTo-SecureString -String $c.Password -AsPlainText -Force
      $cred = New-Object System.Management.Automation.PsCredential ($c.UserName, $spwd)
      
      Get-AppServiceServer -ServerType LoadBalancer | ForEach-Object {
          $lb = $_
          $session = New-PSSession -ComputerName $lb.Name -Credential $cred
      
          Invoke-Command -Session $session {
            $f = Get-WindowsFeature -Name Web-CertProvider
            if (-not $f.Installed) {
                Write-Host Install feature on $env:COMPUTERNAME
                Install-WindowsFeature -Name Web-CertProvider
      
                Read-Host -Prompt "If installing the feature, the machine will reboot. Wait until there's enough frontend availability, then press ENTER to continue"
                Shutdown /t 5 /r /f 
            }
         }
      }
      
      Remove-PSSession -Session $session      
      
    6. Azure Stack 관리 포털에서 ControllersNSG 네트워크 보안 그룹으로 다시 이동합니다.

    7. 액세스를 거부하도록 Inbound_Rdp_3389 규칙을 수정합니다.

Azure Stack에서 Azure 앱 Service를 운영하는 Cloud Admins의 알려진 문제

  • 연결이 끊긴 환경에서는 사용자 지정 도메인이 지원되지 않습니다.

    App Service는 공용 DNS 엔드포인트에 대해 도메인 소유권 확인을 수행합니다. 따라서 연결이 끊긴 시나리오에서는 사용자 지정 도메인이 지원되지 않습니다.

  • 웹 및 함수 앱에 대한 Virtual Network 통합은 지원되지 않습니다.

    웹 및 함수 앱에 가상 네트워크 통합을 추가하는 기능은 Azure Stack Hub 포털에 표시되며 테넌트가 구성을 시도하면 내부 서버 오류가 발생합니다. 이 기능은 Azure Stack Hub의 Azure 앱 서비스에서 지원되지 않습니다.

다음 단계

  • Azure 앱 Service에 대한 개요는 Azure Stack의 Azure 앱 Service 개요를 참조하세요.
  • Azure Stack에서 App Service 배포를 준비하는 방법에 대한 자세한 내용은 Azure Stack 에서 App Service를 시작하기 전에 참조하세요.