App Service Environment の計画メンテナンスのアップグレード設定

Azure App Service は定期的に更新され、新機能、新しいランタイム バージョン、パフォーマンスの向上、バグ修正が提供されます。 これは計画メンテナンスとも呼ばれます。 アップグレードは自動的に行われます。 アップグレードは Azure の安全なデプロイ プラクティスに従って、複数のリージョンで段階的に適用されます。 App Service Environment は、App Service アプリを大規模かつ安全に実行するために完全に分離された専用の環境を提供する、Azure App Service の機能です。 App Service Environment は分離された性質を持つため、アップグレード プロセスに影響を与える機会がユーザーに与えられています。

App Service Environment がない場合は、App Service Environment v3 の作成方法に関するページを参照してください。

注意

この記事では、App Service Isolated v2 プランで使用される App Service Environment v3 の機能、利点、およびユースケースについて説明します。

App Service Environment v3 では、計画メンテナンスを適用するタイミングと方法の設定を指定できます。 アップグレードは、自動的または手動で適用できます。 設定を自動に設定した場合でも、タイミングに影響を与えるオプションがいくつかあります。

自動アップグレードの設定

自動アップグレードの設定を使用した場合、インスタンスがデプロイされているリージョンでアップグレードが利用可能になると、プラットフォームによって App Service Environment インスタンスがアップグレードされます。 次のいずれかのオプションを選択できます。

  • None (なし) が既定のオプションです。 このオプションでは、そのリージョンのアップグレード プロセス中にアップグレードが自動的に適用されます。
  • Early (早期) では、アップグレードが自動的に適用されますが、アップグレードするリージョンの最初のインスタンスの 1 つとして優先順位が付けられます。
  • Late (遅延) では、アップグレードが自動的に適用されますが、そのインスタンスはアップグレードするリージョンの最後のものの 1 つになります。

小規模なリージョンでは、Early と Late のアップグレード設定は互いに非常に近い場合もあります。

手動アップグレードの設定

手動アップグレードの設定では、アップグレードが利用可能になったときに通知を受け取るオプションが提供されます。 利用可能になったことは Azure portal にも表示されます。 アップグレードが利用可能になると、アップグレード プロセスを開始するまで 15 日間が与えられます。 15 日以内にアップグレードを開始しなかった場合、アップグレードはリージョン内の残りの自動アップグレードで処理されます。

通常、アップグレードはアプリの可用性には影響しません。 アップグレードによってインスタンスが追加され、アップグレード中に同じ容量が確実に使用できるようになります。 修正プログラムが適用され、再起動されたインスタンスはローテーションで再び追加されます。再起動の影響を受けやすいワークロードがある場合は、業務時間外にメンテナンスを開始することを計画する必要があります。 完全なアップグレード プロセスは通常 18 時間以内に完了しますが、それよりも時間がかかる場合もあります。 アップグレードが開始されると、そのアップグレードは完了するまで実行され、通常の業務時間中に一時停止されることはありません。

Note

まれなことですが、アップグレードの利用可能性が、予定されているアップグレードを置き換えるセキュリティ修正プログラムや、インスタンスに適用される前に予定されているアップグレード内で見つかった機能低下による影響を受ける場合があります。 このようなまれなケースでは、使用可能なアップグレードは削除され、自動アップグレードに移行します。

通知を構成する

アップグレードが利用可能になると、Azure Monitor の [サービス正常性] ダッシュボードに計画メンテナンス イベントが追加されます。 Azure portal で過去の通知を表示するには、[ホーム] > [モニター] > [サービス正常性] > [計画メンテナンス] に移動します。 関連するイベントを簡単に見つけるには、[サービス] ボックスを選択し、App Service の種類のみをオンにします。 サブスクリプションとリージョンでフィルター処理することもできます。

Azure portal の [サービス正常性] ダッシュボードのスクリーンショット。

Azure Monitor でイベントが生成されたときに、メール アドレスや SMS の電話番号にメッセージを送信するようにアラートを構成できます。 カスタムの Azure 関数またはロジック アプリのトリガーを設定することもできます。これにより、リソースに対して自動的にアクションを実行できます。 このアクションは、アップグレードされる 1 つのリージョンの App Service Environment から、別のリージョンの App Service Environment に、トラフィックを自動的に転送させる場合もあります。 その後、アップグレードが完了すると、トラフィックを自動的に通常の状態に戻すことができます。

アップグレード通知のアラートを構成するには、ダッシュボードの上部にある [サービス正常性アラートの追加] を選択します。 Azure Monitor アラートの詳細情報を確認してください。 この操作方法に関する記事では、サービス正常性イベントのアラートを構成する方法について説明します。 最後に、この攻略ガイドに従って、アラートに基づいてトリガーされるアクション グループを作成する方法を学習できます。

テスト通知を送信する

自動化と通知ロジックを構築するときは、このアップグレードが 1 か月以上先になる可能性があるため、実際のアップグレードを利用できるようになる前にテストする必要があります。Azure portal には、特殊なテスト アップグレードが利用可能な場合の通知を送信する機能があります。この通知を使用して、自動化ロジックを検証できます。 メッセージは実際の通知に似ていますが、タイトルの先頭に "[Test]" が付き、説明が異なります。 アップグレード設定を [手動] に構成した後、テスト通知を送信できます。

テスト通知を送信するには、App Service Environment の [構成] ページに移動し、[テスト通知の送信] リンクを選択します。 テスト通知は、15 分ごとにバッチで送信されます。

App Service Environment のテスト通知を送信するための構成ペインのスクリーンショット。

Azure portal を使用してアップグレードの設定を構成する

  1. Azure portal から、App Service Environment の [構成] ページに移動します。
  2. アップグレードの設定を選択します。 App Service Environment でアップグレードの設定を選択して更新するための構成ペインのスクリーンショット。
  3. ページの最上部で [保存] を選択します。

Azure CLI を使用してアップグレードの設定を構成する

アップグレードの推奨されるエクスペリエンスは、Azure portal を使用することです。 Azure CLI を使用してアップグレードを構成および実行するよう決定した場合、ここに示す手順に順番に従ってください。 コマンドは、Azure CLI のインストール後にローカルで実行することも、Azure Cloud Shell を使用することもできます。

名前とリソース グループのプレースホルダーを、構成する App Service Environment の値に置き換えます。 現在のアップグレード設定を確認するには:

ASE_NAME=<Your-App-Service-Environment-name>
ASE_RG=<Your-Resource-Group>
az resource show --name $ASE_NAME -g $ASE_RG --resource-type "Microsoft.Web/hostingEnvironments" --query properties.upgradePreference

アップグレード設定を [手動] に更新するには:

ASE_NAME=<Your-App-Service-Environment-name>
ASE_RG=<Your-Resource-Group>
az resource update --name $ASE_NAME -g $ASE_RG --resource-type "Microsoft.Web/hostingEnvironments" --set properties.upgradePreference=Manual

Azure portal を使用して App Service Environment をアップグレードする

アップグレードが利用可能になると、Azure portal にバナーが表示されます。 アップグレードを開始するには、次の手順を実行します。

  1. Azure portal から、App Service Environment の [構成] ページに移動します。
  2. [今すぐアップグレード] ボタンを選択します。 App Service Environment のアップグレードを開始するための構成ペインのスクリーンショット。
  3. 確認バナーが表示されます。 [アップグレードの開始] を選んでアップグレード プロセスを開始します。 構成されている場合、アップグレード中に通知が送信されます。 詳細については、「通知の構成」を参照してください。

Azure CLI を使用して App Service Environment をアップグレードする

以下のコマンドを実行して、App Service Environment ID を取得し、これを環境変数として保存します。 名前とリソース グループのプレースホルダーを、移行する App Service Environment の値に置き換えます。

ASE_NAME=<Your-App-Service-Environment-name>
ASE_RG=<Your-Resource-Group>
ASE_ID=$(az appservice ase show --name $ASE_NAME --resource-group $ASE_RG --query id --output tsv)

次のコマンドを実行して、テスト アップグレード通知を送信します。

az rest --method POST --uri "${ASE_ID}/testUpgradeAvailableNotification?api-version=2022-03-01"

次のコマンドを実行して、アップグレード プロセスを開始します。

az rest --method POST --uri "${ASE_ID}/upgrade?api-version=2022-03-01"

次のステップ