AutoScale:AutoScaleルールとリッチなログ管理のスケジュール設定
この夏に新しいAutoScaleをWindows Azureに導入したので、Webサイト、クラウドサービス、Mobile Services、仮想マシンを自動的にスケール管理できます。
AutoScaleにより、アプリケーションが動的にスケール変更されるため(手動による介入が不要)、パフォーマンスとコストの理想的なバランスを達成することができます。構成が完了すると、AutoScaleは定期的にアプリケーション内の負荷に応じて実行されているインスタンスの数を調整します。
時間管理ルールを使用して積極的にクラウドサービスインスタンス数を調整する機能など、今回さらに多くのAutoScale機能を導入しています。
AutoScaleルールのスケジュール化
クラウドサービスのSCALEタブをクリックすると、スケジュールルールに基づいて、異なるスケーリングルールを構成/制御できる追加機能が確認できます。
デフォルトでは、スケジュールされていない時間のスケール設定を編集します。つまり、スケール設定は時間/日に関わらず常に同じになるということです。SCALE BY METRICセクションのNONEを選択すると、手動で拡張することができ、以前使用していたインスタンス数スライダーが表示されます。
もしくは、CPUのアクティビティやQueueの深さに反応させることで動的にAutoScaleすることも可能です。以下のスクリーンショットは、Web層ロールのCPUに基づいてAutoScaleを構成する方法で、CPU集計に応じて1から3のインスタンス間でスケール変更することを示しています。
今回のリリースで、1日の時間帯によって異なるスケールが設定できるようにもなりました。これを行うには、上記の“set up schedule times”ボタンをクリックします。そうすると、新しいダイアログが表示されます。
今回のリリースで、昼と夜で異なる繰り返しスケジュールが設定できるようになりました。1つ目の昼の時間帯は、1日の始まりから1日の終わりまで実行されます(上記では午前8時から午後8時間で設定)。2つ目の夜の時間帯は、1日の終わりから1日の始まりまで実行されます。どちらもTimeのオプションを使用して1日の始まりと終わりとタイムゾーンを定義しています。もし夏時間があれば夏時間を適用します。今後、その他のタイプの時間ベーススケジュールも追加していく予定です。
昼/夜のスケジュールを設定してScaleページに戻ると、ドロップダウンスケジュールに作成した2つのスケジュールが紐付けられています。
これで、一覧から各スケジュールを選択し、その中でそれに限定されたスケーリングルールが編集できます。
例えば、Day Time Scheduleを選択して、クラウドサービスロール上のINSTANCE COUNTを5に設定し、Night Timeを選択して、INSTANCE COUNTを3に設定します。これにより、Windows Azureは、日中だと5インスタンスまでサービスをスケールアップし、夜になると3インスタンスにサイクルを下げるようにします。
Scheduled AutoscaleルールとMetric Based AutoScaleルールを組み合わせることもできます。
CPUまたはQueueトグルを選択して、昼と夜で異なるAutoScaleルールが適用されるように設定することができます。例えば、CPUのアクティビティに基づいて、Instance Rangeを日中は5から10まで、夜は3から6までに設定できます。
今回のリリースでは、クラウドサービス上でScheduled AutoScaleのみサポートしていますが、すべてのタイプのリソース(Webサイト、Mobile Services、VM)でも間もなく利用できるようになります。