次の方法で共有


App Service on Azure Stack Hub 2022 H1 リリース ノート

これらのリリース ノートでは、Azure アプリ Service on Azure Stack Hub 2022 H1 のリリース ノートと既知の問題に関する機能強化と修正について説明します。 既知の問題は、デプロイおよび更新プロセスに直接関係する問題と、ビルド (インストール後) に関する問題に分けられています。

重要

App Service リソースプロバイダー (RP) をデプロイまたは更新する前に、必要に応じて Azure Stack Hub をサポートされているバージョンに更新します (または最新の Azure Stack Development Kit をデプロイします)。 RP のリリース ノートを参照し、新しい機能、修正、およびデプロイに影響を与える可能性のある既知の問題について確認してください。

サポートされている Azure Stack Hub の最小バージョン App Service RP バージョン
2301 以降 2302 Installer (リリースノート)

ビルドのリファレンス

App Service on Azure Stack Hub 2022 H1 ビルド番号は 98.0.1.699 です

新機能

Azure アプリ Service on Azure Stack Hub 2022 H1 は、Azure Stack Hub に多くの新機能をもたらします。

  • すべての役割は、Windows Server 2022 Datacenter を利用するようになりました。
  • 管理者は、SKU を AppService に設定することで、App Service on Azure Stack Hub で使用するプラットフォーム イメージを分離できます。
  • SNAT ポート枯渇の問題に直面したお客様に対処する、すべてのワーカー仮想マシン スケール セットのネットワーク設計の更新。
  • すべてのアプリケーションの送信アドレスの数が増えました。 送信アドレスの更新された一覧は、Azure Stack Hub ポータルのアプリケーションのプロパティで検出できます。
  • 管理者は、デプロイされる各仮想マシン スケール セット内の個々のインスタンスに 3 文字のデプロイ プレフィックスを設定できます。複数の Azure Stack Hub インスタンスを管理する場合に便利です。
  • テナントに対して展開センターが有効になり、展開オプション エクスペリエンスが置き換わりました。 重要: オペレーターは、この更新プログラムでリダイレクト URL が変更されたので展開ソースを構成する必要があります。さらに、テナントはアプリをソース管理プロバイダーに再接続する必要があります。
  • この更新プログラムの時点で、文字 K は予約済み SKU レターになりました。文字 K を使用してカスタム SKU が定義されている場合は、アップグレード前にこの状況の解決を支援するためにサポートにお問い合わせください。

前提条件

デプロイを開始する前に、前提条件に関するドキュメントをご覧ください。

Azure アプリ Service on Azure Stack から 2022 H1 へのアップグレードを開始する前に、次の手順を実行します。

  • Azure Stack Hub1.2108.2.127 または 1.2206.2.52 に更新されていることを確認します。

  • Azure Stack Hub 管理ポータルの Azure アプリ サービス管理ですべてのロールが準備ができていることを確認します。

  • Azure Stack Hub 管理ポータルの App Service 管理を使用して App Service シークレットをバックアップします。

  • App Service と SQL Server マスター データベースをバックアップします。

    • AppService_Hosting
    • AppService_Metering
    • マスター
  • テナント アプリのコンテンツ ファイル共有をバックアップします。

    重要

    ファイル サーバーと SQL Server の保守と操作を担当するのは、クラウド オペレーターです。 リソース プロバイダーは、これらのリソースの管理は行いません。 クラウドオ ペレーターが、App Service データベースとテナント コンテンツ ファイル共有のバックアップを行います。

  • Custom スクリプト拡張機能バージョン 1.9.3 を Marketplace から配信します。

更新プログラム

Azure アプリ Service on Azure Stack Update 2022 H1 には、次の機能強化と修正が含まれています。

  • App Service のテナント ポータル、管理ポータル、Functions ポータル、Kudu ツールの更新。 Azure Stack Portal SDK バージョンと一貫性があります。

  • Azure Functions ランタイムv1.0.13154 に更新されました。

  • 信頼性を高めるためのコア サービスと、一般的な問題を簡単に診断できるようにするエラー メッセージの更新。

  • 次のアプリケーション フレームワークとツールの更新:

    • 2022-09 x64 用 Microsoft サーバー オペレーティング システム バージョン 21H2 用 .NET Framework 3.5 および 4.8 の累積的な更新プログラム (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
    • 雄猫
      • 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 を 97.40427.5713 に更新しました。
  • すべてのロールの基になっているオペレーティング システムの更新プログラム:

  • Windows Server の累積的な更新プログラムが、展開とアップグレードの一環としてコントローラーの役割に適用されるようになりました

このリリースで修正された問題

  • App Service リソース プロバイダー データベース内の SiteDataRecord テーブルと TraceMessages テーブルを自動的にクリーンアップします。
  • プライベート証明書が、デプロイ スロットを持つサイトに表示されるようになりました。
  • すべてのロールの準備ができているかどうかを確認することで、アップグレード プロセスの信頼性が向上しました。

更新前の手順

Azure アプリ Service on Azure Stack Hub 2022 H1 は重要な更新プログラムであり、デプロイ全体が更新され、すべてのロールが Windows Server 2022 Datacenter OS で再作成されるため、完了までに数時間かかることがあります。 そのため、更新プログラムを適用する前に、予定されている更新プログラムをエンド ユーザーに通知することをお勧めします。

  • Azure アプリ Service on Azure Stack Hub 2022 H1 Update の時点で、文字 K は予約済み SKU レターになりました。文字 K を使用してカスタム SKU が定義されている場合は、アップグレード前にサポートにお問い合わせください。

更新の既知の問題を確認し、規定されている措置を講じます。

デプロイ後の手順

重要

SQL Always On インスタンスを使用して App Service リソース プロバイダーを提供している場合は、データベースのフェールオーバーが発生したときにサービスが失われないように、appservice_hosting と appservice_metering データベースを可用性グループに追加し、それらのデータベースを同期する必要があります。

既知の問題 (更新プログラム)

  • お客様がappservice_hostingデータベースとappservice_metering データベースを包含データベースに変換した場合、ログインが包含ユーザーに正常に移行されていない場合、アップグレードが失敗する可能性があります。

デプロイ後にappservice_hostingデータベースとappservice_metering データベースを包含データベースに変換し、包含ユーザーにデータベース ログインを正常に移行していないお客様は、アップグレードエラーが発生する可能性があります。

お客様は、Azure App Service on Azure Stack Hub インストールを 2020 Q3 にアップグレードする前に、appservice_hosting と appservice_metering をホストしている SQL Server に対して次のスクリプトを実行する必要があります。 このスクリプトは非破壊的であり、ダウンタイムが発生することはありません。

このスクリプトは、次の条件で実行する必要があります。

  • システム管理者特権を持つユーザー (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 管理ポータルで、Network セキュリティ グループに移動しControllersNSG ネットワーク セキュリティ グループを表示します。

    2. 既定では、リモート デスクトップはすべての App Service インフラストラクチャ ロールで無効になっています。 Inbound_Rdp_2289 ルール アクションを変更して、Allow アクセスします。

    3. App Service リソース プロバイダーのデプロイを含むリソース グループに移動します。既定では、名前は AppService.<リージョンに接続し>CN0-VM接続します。

    4. CN0-VMリモート デスクトップ セッションに戻ります。

    5. 管理者 PowerShell セッションで、次のコマンドを実行します。

      重要

      このスクリプトの実行中に、フロントエンド スケール セット内の各インスタンスに対して一時停止が発生します。 機能がインストールされていることを示すメッセージが表示された場合は、そのインスタンスが再起動されます。スクリプトの一時停止を使用して、フロントエンドの可用性を維持します。 オペレーターは、テナント アプリケーションがトラフィックを受信でき、ダウンタイムが発生しないように、少なくとも 1 つのフロントエンド インスタンスが常に "準備完了" であることを確認する必要があります。

      $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 規則を変更します。

既知の問題 (インストール後)

  • App Service が既存の仮想ネットワークにデプロイされ、ファイル サーバーがプライベート ネットワークでしか使用できない場合、worker はファイル サーバーに到達することができません。Azure App Service on Azure Stack のデプロイ ドキュメントで説明されているとおりです。

    ファイル サーバーに接続するために既存の仮想ネットワークと内部 IP アドレスへデプロイする場合は、送信セキュリティ規則を追加して、worker サブネットとファイル サーバー間の SMB トラフィックを有効にする必要があります。 管理者ポータルで WorkersNsg に移動し、次のプロパティを持つ送信セキュリティ規則を追加します。

    • ソース:Any
    • 送信元ポート範囲: *
    • 送信先: IP アドレス
    • 宛先 IP アドレス範囲:ファイル サーバーの IP の範囲
    • 送信先ポート範囲:445
    • プロトコル:TCP
    • アクション:Allow
    • 優先順位:700
    • 名前:Outbound_Allow_SMB445
  • ワーカーがファイル サーバーと通信するときの待機時間を削除するために、Active Directory を使用してファイル サーバーをセキュリティで保護する場合 (たとえば、クイック スタート テンプレートを使用して HA ファイル サーバーと SQL Server を展開した場合など) に、Active Directory コントローラーへの送信 LDAP および Kerberos トラフィックを許可する次の規則を Worker NSG に追加することをお勧めします。

    管理者ポータルで WorkersNsg に移動し、次のプロパティを持つ送信セキュリティ規則を追加します。

    • ソース:Any
    • 送信元ポート範囲: *
    • 送信先: 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 管理ポータルで、Network セキュリティ グループに移動しControllersNSG ネットワーク セキュリティ グループを表示します。

    2. 既定では、リモート デスクトップはすべての App Service インフラストラクチャ ロールで無効になっています。 Inbound_Rdp_2289 ルール アクションを変更して、Allow アクセスします。

    3. App Service リソース プロバイダーのデプロイを含むリソース グループに移動します。既定では、名前は AppService.<リージョンに接続し>CN0-VM接続します。

    4. CN0-VMリモート デスクトップ セッションに戻ります。

    5. 管理者 PowerShell セッションで、次のコマンドを実行します。

      重要

      このスクリプトの実行中に、フロントエンド スケール セット内の各インスタンスに対して一時停止が発生します。 機能がインストールされていることを示すメッセージが表示された場合は、そのインスタンスが再起動されます。スクリプトの一時停止を使用して、フロントエンドの可用性を維持します。 オペレーターは、テナント アプリケーションがトラフィックを受信でき、ダウンタイムが発生しないように、少なくとも 1 つのフロントエンド インスタンスが常に "準備完了" であることを確認する必要があります。

      $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 App Service on Azure Stack を運用するクラウド管理者に関する既知の問題

  • 切断された環境では、カスタム ドメインはサポートされていません。

    App Service は、パブリック DNS エンドポイントに対してドメイン所有権の検証を実行します。 その結果、切断されたシナリオではカスタム ドメインはサポートされません。

  • Web アプリと Function Apps の仮想ネットワーク統合はサポートされていません。

    Web アプリと Function アプリに仮想ネットワーク統合を追加する機能は、Azure Stack Hub ポータルに表示され、テナントが構成を試みると、内部サーバー エラーが発生します。 この機能は、Azure アプリ Service on Azure Stack Hub ではサポートされていません。

次のステップ