Freigeben über


Versionshinweise zu App Service auf Azure Stack Hub 2022 H1

Diese Versionshinweise beschreiben die Verbesserungen und Korrekturen in Azure-App Service auf Azure Stack Hub 2022 H1 Versionshinweisen und bekannten Problemen. Die bekannten Probleme sind in Probleme unterteilt, die sich direkt auf die Bereitstellung und den Updateprozess beziehen, und in Probleme mit dem Build (nach der Installation).

Wichtig

Aktualisieren Sie Azure Stack Hub bei Bedarf auf eine unterstützte Version, oder stellen Sie das neueste Azure Stack Development Kit bereit, bevor Sie den App Service-Ressourcenanbieter (Resource provider, RP) bereitstellen oder aktualisieren. Lesen Sie auch die RP-Versionshinweise, um weitere Informationen zu neuen Funktionen, Fehlerbehebungen und bekannten Problemen zu erhalten, die ggf. für Ihre Bereitstellung relevant sind.

Unterstützte Mindestversion von Azure Stack Hub App Service-RP-Version
2301 und höher 2302 Installer (Versionshinweise)

Buildreferenz

Der App-Dienst auf Azure Stack Hub 2022 H1-Buildnummer ist 98.0.1.699.

Neuigkeiten

Azure-App Dienst auf Azure Stack Hub 2022 H1 bietet viele neue Funktionen für Azure Stack Hub.

  • Alle Rollen werden jetzt von Windows Server 2022 Datacenter unterstützt.
  • Administratoren können das Plattformimage für die Verwendung durch App Service auf Azure Stack Hub isolieren, indem sie die SKU auf AppService festlegen.
  • Netzwerkentwurfsupdate für alle Vm-Skalierungssätze für Mitarbeiter, die Kunden mit SNAT-Portausschöpfungsproblemen konfrontiert sind.
  • Erhöhte Anzahl ausgehender Adressen für alle Anwendungen. Die aktualisierte Liste der ausgehenden Adressen kann in den Eigenschaften einer Anwendung im Azure Stack Hub-Portal ermittelt werden.
  • Administratoren können ein Drei-Zeichen-Bereitstellungspräfix für die einzelnen Instanzen in jedem bereitgestellten Skalierungssatz für virtuelle Computer festlegen, der beim Verwalten mehrerer Azure Stack Hub-Instanzen nützlich ist.
  • Das Bereitstellungscenter ist jetzt für Mandanten aktiviert, wobei die Bereitstellungsoptionen ersetzt werden. WICHTIG: Operatoren müssen ihre Bereitstellungsquellen neu konfigurieren, da sich die Umleitungs-URLs mit diesem Update geändert haben. Darüber hinaus müssen Mandanten ihre Apps erneut mit ihren Quellcodeverwaltungsanbietern verbinden.
  • Ab diesem Update ist der Buchstabe K jetzt ein reservierter SKU-Brief, wenn Sie eine benutzerdefinierte SKU mit dem Buchstaben K definiert haben, wenden Sie sich an den Support, um diese Situation vor dem Upgrade zu beheben.

Voraussetzungen

Lesen Sie die Dokumentation Vor den ersten Schritten mit App Service in Azure Stack, bevor Sie mit der Bereitstellung beginnen.

Bevor Sie mit dem Upgrade von Azure-App Dienst auf Azure Stack auf 2022 H1 beginnen:

  • Stellen Sie sicher, dass Ihr Azure Stack Hub auf 1.2108.2.127 oder 1.2206.2.52 aktualisiert wird.

  • Stellen Sie sicher, dass alle Rollen im Azure-App Dienstverwaltung im Azure Stack Hub Admin Portal bereit sind.

  • Sichern sie geheime App-Dienstgeheimnisse mithilfe der App-Dienstverwaltung im Azure Stack Hub-Verwaltungsportal.

  • Sichern Sie die App Service- und SQL Server-Masterdatenbanken:

    • AppService_Hosting
    • AppService_Metering
    • Haupt
  • Sichern Sie die Inhaltsdateifreigabe der Mandanten-App.

    Wichtig

    Cloudoperatoren sind für die Verwaltung und den Betrieb des Dateiservers und von SQL Server verantwortlich. Der Ressourcenanbieter verwaltet diese Ressourcen nicht. Der Cloudoperator ist für das Sichern der App Service-Datenbanken und der Mandanten-Inhaltsdateifreigabe verantwortlich.

  • Syndicate the Custom Script Extension Version 1.9.3 from the Marketplace.

Updates

Azure-App Dienst auf Azure Stack Update 2022 H1 umfasst die folgenden Verbesserungen und Korrekturen:

  • Updates für App Service-Mandanten, Admin, Functions-Portale und Kudu-Tools. Konsistent mit der Version des Azure Stack Portal SDK.

  • Aktualisierung der Azure Functions-Runtime auf v1.0.13154.

  • Updates für den Hauptdienst, die die Zuverlässigkeit und die Fehlermeldungen verbessern, da sie die Diagnose von häufigen Problemen erleichtern.

  • Updates für folgende Anwendungsframeworks und Tools:

    • Kumulatives Update 2022-09 für .NET Framework 3.5 und 4.8 für Microsoft Server-Betriebssystem, Version 21H2 für x64 (KB5017028).
    • ASP.NET Core
      • 3.1.18
      • 3.1.23
      • 6.0.2
      • 6.0.3
    • Eclipse Temurin OpenJDK 8
      • 8u302
      • 8u312
      • 8u322
    • Microsoft OpenJDK 11
      • 11.0.12.7.1
      • 11.0.13.8
      • 11.0.14.1
      • 17.0.1.12
      • 17.0.2.8
    • MSBuild
      • 16.7.0
      • 17.1.0
    • MSDeploy 3.5.100608.567
    • NodeJS
      • 14.18.1
      • 16.9.1
      • 16.13.0
    • npm
      • 6.14.15
      • 7.21.1
      • 8.1.0
    • Kater
      • 8.5.69
      • 8.5.72
      • 8.5.78
      • 9.0.52
      • 9.0.54
      • 9.0.62
      • 10.0.12
      • 10.0.20
    • Kudu auf 97.40427.5713 aktualisiert.
  • Updates des zugrunde liegenden Betriebssystems aller Rollen:

  • Kumulative Updates für Windows Server werden jetzt als Teil der Bereitstellung und des Upgrades auf Controllerrollen angewendet.

In diesem Release behobene Probleme

  • Automatisches Bereinigen von SiteDataRecord- und TraceMessages-Tabellen in der Datenbank(n) des App-Dienstressourcenanbieters.
  • Privates Zertifikat wird jetzt auf Websites mit Bereitstellungsplätzen angezeigt.
  • Verbesserte Zuverlässigkeit des Upgradeprozesses, indem überprüft wird, ob alle Rollen bereit sind.

Schritte vor dem Update

Azure-App Dienst auf Azure Stack Hub 2022 H1 ist ein erhebliches Update und kann daher mehrere Stunden dauern, bis die gesamte Bereitstellung aktualisiert wird und alle Rollen mit dem Windows Server 2022 Datacenter-Betriebssystem neu erstellt werden. Daher empfehlen wir, Endbenutzer über geplante Updates vor der Anwendung des Updates zu informieren.

  • Ab Azure-App Dienst auf Azure Stack Hub 2022 H1 Update ist der Buchstabe K jetzt ein reservierter SKU-Brief, wenn Sie über eine benutzerdefinierte SKU verfügen, die mit dem Buchstaben K definiert ist, wenden Sie sich an den Support, um diese Situation vor dem Upgrade zu beheben.

Überprüfen Sie die bekannten Probleme bei Updates, und ergreifen Sie alle vorgeschriebenen Maßnahmen.

Schritte nach der Bereitstellung

Wichtig

Wenn Sie den App Service-Ressourcenanbieter mit einer SQL Always On-Instanz bereitgestellt haben, MÜSSEN Sie die Datenbanken „appservice_hosting“ und „appservice_metering“ einer Verfügbarkeitsgruppe hinzufügen und die Datenbanken synchronisieren, damit es im Falle eines Datenbankfailovers nicht zu Dienstausfällen kommt.

Bekannte Probleme (Update)

  • In Situationen, in denen ein Kunde die appservice_hosting und appservice_metering Datenbanken in enthaltene Datenbank konvertiert hat, schlägt das Upgrade möglicherweise fehl, wenn Anmeldungen nicht erfolgreich zu enthaltenen Benutzern migriert wurden.

Kunden, die die Appservice_hosting- und appservice_metering datenbanken in enthaltene Datenbanken nach der Bereitstellung konvertiert haben und die Datenbankanmeldungen nicht erfolgreich in enthaltene Benutzer migriert haben, treten möglicherweise Upgradefehler auf.

Kunden müssen das folgende Skript für den SQL-Server ausführen, der appservice_hosting und appservice_metering hostet, bevor sie die Azure App Service in Azure Stack Hub-Installation auf 2020 Q3 aktualisieren können. Dieses Skript ist nicht destruktiv und führt nicht zu Ausfallzeiten.

Dieses Skript muss unter den folgenden Bedingungen ausgeführt werden:

  • Es muss von einem Benutzer mit der Berechtigung „Systemadministrator“ ausgeführt werden, z. B. dem SQL-Konto „SA“.

  • Wenn Sie SQL Always On verwenden, stellen Sie sicher, dass das Skript von der SQL-Instanz ausgeführt wird, die alle App Service-Anmeldungen im folgenden Format enthält:

    • 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
    • Alle WebWorker-Anmeldungen in der Form WebWorker_<Instanz-IP-Adresse>
        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
  • Mandantenanwendungen können nach dem Upgrade keine Zertifikate an Anwendungen binden.

    Die Ursache dieses Problems liegt an einem fehlenden Feature auf Front-Ends nach dem Upgrade auf Windows Server 2022. Operatoren müssen dieses Verfahren befolgen, um das Problem zu beheben.

    1. Navigieren Sie im Azure Stack Hub-Verwaltungsportal zu Netzwerksicherheitsgruppen , und zeigen Sie die ControllerNSG-Netzwerksicherheitsgruppe an.

    2. Standardmäßig ist der Remotedesktop für alle App Service-Infrastrukturrollen deaktiviert. Ändern Sie die Inbound_Rdp_2289 Regelaktion so, dass der Zugriff zugelassen wird .

    3. Navigieren Sie zu der Ressourcengruppe, die die Bereitstellung des App-Dienstressourcenanbieters enthält, standardmäßig lautet der Name "AppService".<Region> und Herstellen einer Verbindung mit CN0-VM.

    4. Kehren Sie zur Remotedesktopsitzung der CN0-VM zurück.

    5. Führen Sie in einer PowerShell-Administratorsitzung Folgendes aus:

      Wichtig

      Während der Ausführung dieses Skripts wird für jede Instanz im Front-End-Scaleset eine Pause angezeigt. Wenn eine Meldung angezeigt wird, dass das Feature installiert wird, wird diese Instanz neu gestartet, verwenden Sie die Pause im Skript, um die Verfügbarkeit von Front-End zu gewährleisten. Operatoren müssen sicherstellen, dass mindestens eine Front-End-Instanz jederzeit "Bereit" ist, um sicherzustellen, dass Mandantenanwendungen Datenverkehr erhalten können und keine Ausfallzeiten auftreten.

      $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. Navigieren Sie im Azure Stack-Verwaltungsportal zurück zur ControllerNSG-Netzwerksicherheitsgruppe .

    7. Ändern Sie die Inbound_Rdp_3389 Regel, um den Zugriff zu verweigern.

Bekannte Probleme (nach der Installation)

  • Worker können den Dateiserver nicht erreichen, wenn App Service in einem bestehenden virtuellen Netzwerk bereitgestellt wird und der Dateiserver nur im privaten Netzwerk verfügbar ist. Dies ist in der Bereitstellungsdokumentation zu Azure App Service in Azure Stack dargestellt.

    Wenn Sie sich für die Bereitstellung in einem bestehenden virtuellen Netzwerk und eine interne IP-Adresse für die Verbindung mit Ihrem Dateiserver entschieden haben, müssen Sie eine Sicherheitsregel für ausgehenden Datenverkehr hinzufügen, die den SMB-Verkehr zwischen dem Workersubnetz und dem Dateiserver ermöglicht. Wechseln Sie im Verwaltungsportal zu WorkersNsg, und fügen Sie eine Sicherheitsregel für ausgehenden Datenverkehr mit den folgenden Eigenschaften hinzu:

    • Quelle: Any
    • Quellportbereich: *
    • Ziel: IP-Adressen
    • IP-Zieladressbereich: Bereich der IPs für Ihren Dateiserver
    • Zielportbereich: 445
    • Protokoll: TCP
    • Aktion: Allow
    • Priorität: 700
    • Name: Outbound_Allow_SMB445
  • Um die Latenz zu entfernen, wenn Mitarbeiter mit dem Dateiserver kommunizieren, empfehlen wir außerdem, der Worker-NSG die folgende Regel hinzuzufügen, um ausgehenden LDAP- und Kerberos-Datenverkehr zu Ihren Active Directory-Controllern zuzulassen, wenn Sie den Dateiserver mithilfe von Active Directory sichern, z. B. wenn Sie die Schnellstartvorlage zum Bereitstellen eines HA-Dateiservers und SQL Server verwendet haben.

    Wechseln Sie im Verwaltungsportal zu WorkersNsg, und fügen Sie eine Sicherheitsregel für ausgehenden Datenverkehr mit den folgenden Eigenschaften hinzu:

    • Quelle: Any
    • Quellportbereich: *
    • Ziel: IP-Adressen
    • Ziel-IP-Adressbereich: IP-Adressbereich für Ihre AD-Server, z. B. mit der Schnellstartvorlage 10.0.0.100, 10.0.0.101
    • Zielportbereich: 389,88
    • Protokoll: Beliebig
    • Aktion: Zulassen
    • Priorität: 710
    • Name: Outbound_Allow_LDAP_and_Kerberos_to_Domain_Controllers
  • Mandantenanwendungen können nach dem Upgrade keine Zertifikate an Anwendungen binden.

    Die Ursache dieses Problems liegt an einem fehlenden Feature auf Front-Ends nach dem Upgrade auf Windows Server 2022. Operatoren müssen dieses Verfahren befolgen, um das Problem zu beheben.

    1. Navigieren Sie im Azure Stack Hub-Verwaltungsportal zu Netzwerksicherheitsgruppen , und zeigen Sie die ControllerNSG-Netzwerksicherheitsgruppe an.

    2. Standardmäßig ist der Remotedesktop für alle App Service-Infrastrukturrollen deaktiviert. Ändern Sie die Inbound_Rdp_2289 Regelaktion so, dass der Zugriff zugelassen wird .

    3. Navigieren Sie zu der Ressourcengruppe, die die Bereitstellung des App-Dienstressourcenanbieters enthält, standardmäßig lautet der Name "AppService".<Region> und Herstellen einer Verbindung mit CN0-VM.

    4. Kehren Sie zur Remotedesktopsitzung der CN0-VM zurück.

    5. Führen Sie in einer PowerShell-Administratorsitzung Folgendes aus:

      Wichtig

      Während der Ausführung dieses Skripts wird für jede Instanz im Front-End-Scaleset eine Pause angezeigt. Wenn eine Meldung angezeigt wird, dass das Feature installiert wird, wird diese Instanz neu gestartet, verwenden Sie die Pause im Skript, um die Verfügbarkeit von Front-End zu gewährleisten. Operatoren müssen sicherstellen, dass mindestens eine Front-End-Instanz jederzeit "Bereit" ist, um sicherzustellen, dass Mandantenanwendungen Datenverkehr erhalten können und keine Ausfallzeiten auftreten.

      $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. Navigieren Sie im Azure Stack-Verwaltungsportal zurück zur ControllerNSG-Netzwerksicherheitsgruppe .

    7. Ändern Sie die Inbound_Rdp_3389 Regel, um den Zugriff zu verweigern.

Bekannte Probleme von Cloudadministratoren, die Azure App Service in Azure Stack betreiben

  • Benutzerdefinierte Domänen werden in getrennten Umgebungen nicht unterstützt.

    Der App-Dienst führt die Überprüfung des Domänenbesitzes für öffentliche DNS-Endpunkte durch. Daher werden benutzerdefinierte Domänen in getrennten Szenarien nicht unterstützt.

  • Die Integration des virtuellen Netzwerks für Web- und Funktions-Apps wird nicht unterstützt.

    Die Möglichkeit, eine virtuelle Netzwerkintegration zu Web- und Funktions-Apps hinzuzufügen, wird im Azure Stack Hub-Portal angezeigt, und wenn ein Mandant versucht, die Konfiguration zu konfigurieren, wird ein interner Serverfehler angezeigt. Dieses Feature wird in Azure-App Dienst auf Azure Stack Hub nicht unterstützt.

Nächste Schritte