Freigeben über


App Service zu Azure Stack Hub 2022 H1– Versionshinweisen

In diesen Versionshinweisen werden die Verbesserungen und Korrekturen in Azure App Service zu Azure Stack Hub 2022 H1-Versionshinweisen und alle bekannten Probleme beschrieben. 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 Azure Stack Hub-Mindestversion App Service-RP-Version
2301 und höher Installationsprogramm 2302 (Versionshinweise)

Buildreferenz

Die App Service in Azure Stack Hub 2022 H1-Buildnummer lautet 98.0.1.699

Neuigkeiten

Azure App Service in 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 in Azure Stack Hub isolieren, indem sie die SKU auf AppService festlegen.
  • Netzwerkentwurfsupdate für alle Worker-Virtual Machine Scale Sets, um Kunden zu adressieren, die mit Problemen mit der SNAT-Porterschöpfung 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 dreistelliges Bereitstellungspräfix für die einzelnen Instanzen in jeder bereitgestellten VM-Skalierungsgruppe festlegen, die bei der Verwaltung mehrerer Azure Stack Hub-Instanzen nützlich ist.
  • Das Bereitstellungscenter ist jetzt für Mandanten aktiviert und ersetzt die Benutzeroberfläche Bereitstellungsoptionen. WICHTIG: Operatoren müssen ihre Bereitstellungsquellen neu konfigurieren , da sich die Umleitungs-URLs mit diesem Update geändert haben. Außerdem 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 Service in Azure Stack auf 2022 H1 beginnen:

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

  • Stellen Sie sicher, dass alle Rollen in der Azure App Service Verwaltung im Azure Stack Hub-Admin-Portal bereit sind.

  • Sichern sie App Service Geheimnisse mithilfe der App Service-Verwaltung im Azure Stack Hub-Admin-Portal.

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

    • AppService_Hosting
    • AppService_Metering
    • Master
  • 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.

  • Syndizieren Sie die benutzerdefinierte Skripterweiterung Version 1.9.3 aus dem Marketplace.

Updates

Azure App Service in Azure Stack Update 2022 H1 enthält die folgenden Verbesserungen und Korrekturen:

  • Updates für App Service-Mandanten, Admin, Functions-Portale und Kudu-Tools. Mit Azure Stack-Portal-SDK-Version konsistent.

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

  • Updates für den Kerndienst zur Verbesserung der Zuverlässigkeit und der Fehlermeldungen, die eine einfachere Diagnose von häufigen Problemen ermöglichen.

  • Updates für folgende Anwendungsframeworks und Tools:

    • Kumulatives Update 2022-09 für .NET Framework 3.5 und 4.8 für Microsoft Server-Betriebssystemversion 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
    • Tomcat
      • 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 wurde auf 97.40427.5713 aktualisiert.
  • Updates des zugrunde liegenden Betriebssystems aller Rollen:

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

In diesem Release behobene Probleme

  • Sauber Automatisch SiteDataRecord- und TraceMessages-Tabellen innerhalb der datenbank(n) des App Service Ressourcenanbieters auf.
  • Das private Zertifikat wird jetzt an Standorten mit Bereitstellungsslots angezeigt.
  • Verbesserte Zuverlässigkeit des Upgradeprozesses, indem sichergestellt wird, dass alle Rollen bereit sind.

Schritte vor dem Update

Azure App Service in Azure Stack Hub 2022 H1 ist ein wichtiges Update und kann daher mehrere Stunden dauern, da die gesamte Bereitstellung aktualisiert und alle Rollen mit dem Windows Server 2022 Datacenter-Betriebssystem neu erstellt werden. Daher wird empfohlen, Endkunden vor der Anwendung des Updates über das geplante Update zu informieren.

  • Ab Azure App Service in Azure Stack Hub 2022 H1 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.

Ü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 eigenständige Datenbanken konvertiert hat, kann das Upgrade fehlschlagen, wenn Anmeldungen nicht erfolgreich zu eigenständigen Benutzern migriert wurden.

Bei Kunden, die die appservice_hosting und appservice_metering Datenbanken nach der Bereitstellung in eigenständige Datenbanken konvertiert und die Datenbankanmeldungen nicht erfolgreich zu eigenständigen Benutzern 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 für dieses Problem ist ein fehlendes 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 Netzwerksicherheitsgruppe ControllerNSG an.

    2. Standardmäßig ist Remotedesktop für alle App Service Infrastrukturrollen deaktiviert. Ändern Sie die aktion Inbound_Rdp_2289 regel in Zugriff zulassen .

    3. Navigieren Sie zu der Ressourcengruppe, die die App Service Ressourcenanbieterbereitstellung enthält. Standardmäßig lautet der Name AppService.<Und> stellen Sie eine Verbindung mit CN0-VM her.

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

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

      Wichtig

      Während der Ausführung dieses Skripts gibt es eine Pause für jede instance in der Front-End-Skalierungsgruppe. Wenn eine Meldung angezeigt wird, die angibt, dass das Feature installiert wird, dass instance neu gestartet wird, verwenden Sie die Pause im Skript, um die Front-End-Verfügbarkeit aufrechtzuerhalten. Operatoren müssen sicherstellen, dass mindestens ein Front-End-instance jederzeit bereit ist, um sicherzustellen, dass Mandantenanwendungen Datenverkehr empfangen können und keine Ausfallzeiten auftreten können.

      $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 Netzwerksicherheitsgruppe ControllersNSG .

    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 bei der Kommunikation von Workern mit dem Dateiserver zu entfernen, empfehlen wir außerdem, der Worker-NSG die folgende Regel hinzuzufügen, um ausgehenden LDAP- und Kerberos-Datenverkehr an Ihre Active Directory-Controller zuzulassen, wenn Sie den Dateiserver mithilfe von Active Directory schützen, z. B. wenn Sie die Schnellstartvorlage verwendet haben, um einen Hochverfügbarkeitsdateiserver bereitzustellen und SQL Server.

    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: Any
    • Aktion: Allow
    • 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 für dieses Problem ist ein fehlendes 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 Netzwerksicherheitsgruppe ControllerNSG an.

    2. Standardmäßig ist Remotedesktop für alle App Service Infrastrukturrollen deaktiviert. Ändern Sie die aktion Inbound_Rdp_2289 regel in Zugriff zulassen .

    3. Navigieren Sie zu der Ressourcengruppe, die die App Service Ressourcenanbieterbereitstellung enthält. Standardmäßig lautet der Name AppService.<Und> stellen Sie eine Verbindung mit CN0-VM her.

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

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

      Wichtig

      Während der Ausführung dieses Skripts gibt es eine Pause für jede instance in der Front-End-Skalierungsgruppe. Wenn eine Meldung angezeigt wird, die angibt, dass das Feature installiert wird, dass instance neu gestartet wird, verwenden Sie die Pause im Skript, um die Front-End-Verfügbarkeit aufrechtzuerhalten. Operatoren müssen sicherstellen, dass mindestens ein Front-End-instance jederzeit bereit ist, um sicherzustellen, dass Mandantenanwendungen Datenverkehr empfangen können und keine Ausfallzeiten auftreten können.

      $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 Netzwerksicherheitsgruppe ControllersNSG .

    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 nicht verbundenen Umgebungen nicht unterstützt.

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

  • Virtual Network Integration für Web- und Funktions-Apps wird nicht unterstützt.

    Die Möglichkeit, die Integration virtueller Netzwerke zu Web- und Funktions-Apps hinzuzufügen, wird im Azure Stack Hub-Portal angezeigt. Wenn ein Mandant versucht, zu konfigurieren, wird ein interner Serverfehler angezeigt. Dieses Feature wird in Azure App Service in Azure Stack Hub nicht unterstützt.

Nächste Schritte