次の方法で共有


Application Gateway v2 の自動スケーリングをスケジュールする

概要

毎日のトラフィック パターンが予測可能であり、Application Gateway に必要な容量の信頼性の高い見積もりがあるユーザーは、トラフィックの需要により適切に整合する最小容量を事前にスケジュールするオプションに関心がある可能性があります。

自動スケーリングは一般的に利用されていますが、Application Gateway では現在、事前にスケジュールされた容量の調整がネイティブにサポートされていない点に注意することが重要です。

目標は、Azure Automation を使用して、ピーク時でも非ピーク時でもトラフィックの需要を満たすように Application Gateway の最小自動スケーリング容量を調整する Runbook を実行するためのスケジュールを作成することです。

スケジュールされた自動スケーリングを設定する

スケジュールされた自動スケーリングを実装するには:

  1. Application Gateway と同じテナント内に Azure Automation アカウント リソースを作成します。
  2. Azure Automation アカウントのシステム割り当てマネージド ID をメモします。
  3. Application Gateway リソースの最小自動スケーリング容量を増やしたり、減らしたりするための PowerShell Runbook を作成します。
  4. Runbook を実装する必要がある期間のスケジュールを作成します。
  5. Runbook をそれに対応するスケジュールに関連付けます。
  6. 手順 2 でメモしたシステム割り当てマネージド ID を Application Gateway および Application Gateway VNET リソースに関連付けます。

自動化の構成

要件は、営業時間中には最小カウントを 4 に増やし、営業時間外には最小カウントを 2 に減らすことであるとします。

次の 2 つの Runbook が作成されます。

  • IncreaseMin - 自動スケーリング構成の最小カウントを 4 に設定します。
  • DecreaseMin - 自動スケーリング構成の最小カウントを 2 に設定します。

容量を調整するには、次の PowerShell Runbook を使用します。

# Get the context of the managed identity 
$context = (Connect-AzAccount -Identity).Context 
# Import the Az module 
Import-Module Az 
# Adjust the min count of your Application Gateway 
$gw = Get-AzApplicationGateway -Name “<AppGwName>” -ResourceGroupName “<ResourceGroupName>”
$gw = Set-AzApplicationGatewayAutoscaleConfiguration -ApplicationGateway $gw -MinCapacity <NumberOfRequiredInstances>
$gw = Set-AzApplicationGateway -ApplicationGateway $gw 

次に、次の 2 つのスケジュールを作成します。

  • WeekdayMorning – IncreaseMin Runbook を月曜日から金曜日の午前 5:00 (PST) に実行する
  • WeekdayEvening – DecreaseMin Runbook を月曜日から金曜日の午後 9:00 (PST) に実行する

よく寄せられる質問

  • タイムリーなジョブ実行に関する SLA はどのようなものですか?

    Azure Automation には、ジョブのタイムリーな開始に関する 99.9% の SLA があります。

  • ジョブが実行中に中断された場合はどうなりますか?

    • ジョブが中断される前に既に AppGW に要求を送信している場合は、その要求が処理されます。
    • ジョブが Application Gateway に要求を送信する前に中断された場合は、次のセクションで説明されるシナリオのいずれかになります。
  • ジョブ タスクが実行されない場合はどうなりますか?

    実行されないジョブ 影響
    IncreaseMin ネイティブな自動スケーリングにフォールバックします。 カウントを調整する必要がないため、DecreaseMin の次の実行は操作なしになります。
    DecreaseMin これらの時間数に対してプロビジョニングされた (意図しない) 容量に関する顧客への追加コスト。 カウントを調整する必要がないため、IncreaseMin の次の実行は操作なしになります。
  • 自動スケーリング構成は 1 日に複数回変更できますか?

    自動スケーリング構成を頻繁に調整することは推奨されません。 最適なバランスを取るために、ピーク時と非ピーク時の使用パターンに合わせ、更新プログラムを 1 日に 2 回スケジュールすることを検討してください。

Note

デプロイのスケジュールされたマネージド自動スケーリングを設定する方法について質問があるか、またはサポートが必要な場合は、agschedule-autoscale@microsoft.com に電子メールを送信してください。 Runbook のセットアップ中に何らかの問題が発生する場合は、「Runbook の問題のトラブルシューティング」を参照してください。 「メトリック アラートを使用して Azure Automation Runbook を監視する」に従って、Runbook 関連のアラートを設定できます。

次のステップ