次の方法で共有


App Service on Azure Stack Hub 2302 リリース ノート

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

重要

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 2302 のビルド番号は 98.0.1.703 です

新機能

Azure アプリ Service on Azure Stack Hub 2302 リリースでは、2022 H1 リリースが置き換えられ次の問題の修正プログラムが含まれています。

  • CVE-2023-21703 Azure アプリ Service on Azure Stack Hub の特権昇格の脆弱性

  • Azure Stack Hub 管理ポータルの App Service ロール管理者ユーザー エクスペリエンスから仮想マシン スケール セットのユーザー エクスペリエンスを開くことができません。

  • その他のすべての更新プログラムについては、Azure Stack Hub 2022 H1 更新プログラムのリリース ノートAzure アプリ サービスに記載されています。

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

前提条件

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

Azure Stack Hub 上の Azure アプリ Service の 2302 へのアップグレードを開始する前に、次の手順を実行します。

  • 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 から配信します。

更新前の手順

Note

Azure アプリ Service on Azure Stack Hub 2022 H1 を Azure Stack Hub スタンプにデプロイしたことがある場合、このリリースは 2022 H1 へのマイナー アップグレードであり、2 つの問題に対処します。

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

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

更新に関する問題を確認し所定のアクションを実行します。

デプロイ後の手順

重要

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

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

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

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

    Azure アプリ Service on Azure Stack Hub のインストールを 2020 年第 3 四半期にアップグレードする前に、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 管理ポータルで、Network セキュリティ グループに移動しControllersNSG ネットワーク セキュリティ グループを表示します。

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

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

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

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

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

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

    管理者ポータルで 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 インフラストラクチャ ロールで無効になっています。 Allow アクセスにInbound_Rdp_3389ルール アクションを変更します。

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

Azure App Service on Azure Stack を運用するクラウド管理者に関する既知の問題

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

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

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

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

次のステップ