App Service on Azure Stack Hub Update 3 のリリース ノート

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

重要

Azure App Service 1.3 をデプロイする前に、Azure Stack Hub 統合システムに 1807 更新プログラムを適用するか、最新の Azure Stack Development Kit (ASDK) をデプロイします。

ビルドのリファレンス

App Service on Azure Stack Hub Update 3 のビルド番号は 74.0.13698.31 です。

前提条件

デプロイを開始する前に、App Service on Azure Stack Hub の前提条件に関するページを参照してください。

Azure App Service on Azure Stack Hub を 1.3 にアップグレードする前に、Azure Stack Hub 管理者ポータルの Azure App Service の管理で確実にすべてのロールの準備ができているようにします。

App Service のロールの状態

新機能と修正

Azure App Service on Azure Stack Hub Update 3 には、次の機能強化と修正が含まれています。

  • Azure App Service リソース プロバイダー データベースで SQL Server Always On の使用がサポートされます。

  • さまざまな Azure AD リージョンを対象にできるように、Create-AADIdentityApp ヘルパー スクリプトに新しい環境パラメーターを追加しました。

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

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

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

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

    • ASP.NET Core 2.1.2 を追加
    • NodeJS 10.0.0 を追加
    • Zulu OpenJDK 8.30.0.1 を追加
    • Tomcat 8.5.31 と 9.0.8 を追加
    • 次の PHP バージョンを追加
      • 5.6.36
      • 7.0.30
      • 7.1.17
      • 7.2.5
    • Wincache 2.0.0.8 を追加
    • Git for Windows を v 2.17.1.2 に更新
    • Kudu を 74.10611.3437 に更新
  • すべてのロールの基になっているオペレーティング システムの更新プログラム:

更新後の手順 (省略可)

既存の Azure App Service on Azure Stack Hub デプロイに関して包含データベースへの移行を検討している場合は、Azure App Service on Azure Stack Hub 1.3 への更新が完了した後で、以下の手順を実行してください。

重要

この手順の所要時間は 5 分から 10 分程度です。 この手順には、既存のデータベース ログイン セッションを中止する作業が伴います。 Azure App Service on Azure Stack Hub の移行とその後の検証に伴うダウンタイムを考慮してください。

  1. AppService データベース (appservice_hosting and appservice_metering) を可用性グループに追加します。

  2. 包含データベースを有効にします。

    
        sp_configure 'contained database authentication', 1;
        GO
        RECONFIGURE;
            GO
    
  3. データベースを部分的包含に変換します。 この手順では、アクティブなセッションをすべて中止する必要があるため、ダウンタイムが伴います。

        /******** [appservice_metering] Migration Start********/
            USE [master];
    
            -- kill all active sessions
            DECLARE @kill varchar(8000) = '';  
            SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
            FROM sys.dm_exec_sessions
            WHERE database_id  = db_id('appservice_metering')
    
            EXEC(@kill);
    
            USE [master]  
            GO  
            ALTER DATABASE [appservice_metering] SET CONTAINMENT = PARTIAL  
            GO  
    
        /********[appservice_metering] Migration End********/
    
        /********[appservice_hosting] Migration Start********/
    
            -- kill all active sessions
            USE [master];
    
            DECLARE @kill varchar(8000) = '';  
            SELECT @kill = @kill + 'kill ' + CONVERT(varchar(5), session_id) + ';'  
            FROM sys.dm_exec_sessions
            WHERE database_id  = db_id('appservice_hosting')
    
            EXEC(@kill);
    
            -- Convert database to contained
            USE [master]  
            GO  
            ALTER DATABASE [appservice_hosting] SET CONTAINMENT = PARTIAL  
            GO  
    
            /********[appservice_hosting] Migration End********/
    
  4. 包含データベース ユーザーにログインを移行します。

        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
    

検証

  1. SQL Server で包含が有効になっているかどうかを確認します。

        sp_configure  @configname='contained database authentication'
    
  2. 既存の包含の動作を確認します。

        SELECT containment FROM sys.databases WHERE NAME LIKE (SELECT DB_NAME())
    

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

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

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

  • ソース:Any
  • 送信元ポート範囲: *
  • 変換先:IP アドレス
  • 宛先 IP アドレス範囲:ファイル サーバーの IP の範囲
  • 送信先ポート範囲:445
  • プロトコル:TCP
  • アクション:Allow
  • 優先順位:700
  • 名前:Outbound_Allow_SMB445

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

Azure Stack Hub 1807 リリース ノート内のドキュメントを参照してください。

次のステップ