Microsoft-azure-scalability
Microsoft Azure-スケーラビリティ
スケーリングとは、変更されたワークロードの量またはWebアプリケーションへのトラフィックに対するシステムの適応性です。 Azureサービスの優れた機能の1つは、アプリケーション使用の要求に応じて自動スケーリングする機能です。
基本的に、アプリケーションのリソースの増減はスケーリングと呼ばれます。 インスタンスは、Webアプリがデプロイされるたびに作成されます。 インスタンスを作成するということは、そのアプリケーションにサーバーを割り当てることを意味します。 インスタンスを増やすとは、そのアプリケーションに割り当てられたサーバーを追加することを意味します。 スケーリングは、*スケールアウト*と呼ばれるより多くのインスタンスを作成することにより行われます。 スケーリングを実現する別の方法は、より大きなロールインスタンスをプロビジョニングすることです。これは「スケールアップ」とも呼ばれます。
Azureでは、従来のホスティングに比べてスケーリングの構成が簡単です。 プライマリサーバーを停止する必要はありません。 また、リソースを追加する際の物理的な制約もなくなります。
スケーリング機能は、Azureで選択したアプリサービスプランによって異なります。 Azureには5つのAppサービスプランがあります-
Maximum Instances | Auto-scaling Supported | |
---|---|---|
Free | 1 | No |
Shared | 1 | No |
Basic | 3 | No |
Standard | 10 | Yes |
Premium | 50 | Yes |
無料の共有サービスプランでは、1つのインスタンスしか使用できないため、アプリケーションをスケーリングできません。 基本計画では、アプリケーションを手動でスケーリングできます。 これは、メトリックを手動でチェックして、さらにインスタンスが必要かどうかを確認する必要があり、Azure管理ポータルからインスタンスを増減できることを意味します。 標準およびプレミアムプランでは、いくつかのパラメーターに基づいて自動スケーリングを選択できます。
さまざまなプランで利用可能なすべてのオプションを確認するには-
- ステップ1 *-管理ポータルでWebアプリに移動し、トップメニューから[スケール]を選択します。 無料サービスプランでは、1つのインスタンスのみが作成されています。
- ステップ2 *-共有プランでは、1つのインスタンスを作成できますが、自動スケーリングのオプションはありません。
- ステップ3 *-基本的なサービスプランでは、最大3つのインスタンスを作成できますが、自動スケーリングのオプションがあります。 つまり、必要なときにインスタンスを手動で増やすことができます。 さらに、インスタンスのサイズを選択できます。
- ステップ4 *-標準のサービスプランでは、以下に基づいて自動スケーリングを選択できます-
- CPUパーセンテージ*-指定した期間の平均CPUパーセンテージに応じて、インスタンスを増やすことを選択できます。 次の図では、平均CPU使用率が60%から80%に達した場合にインスタンスを最大3個まで増やすことを選択したことがわかります。
スケジュール-特定の曜日または特定の時間に実行する必要があるインスタンスの数を設定できます。 さらに、インスタンスを増やす必要がある日付を指定できます。
ここでは、このアプリケーションのプレミアムオプションについては説明しません。 サービスプランのサブスクリプションに基づいて異なるオプションが表示される場合があります。 しかし、概念は同じままです。
考慮事項
- サービスプランは、作成後でも変更できます。
- すべてのインスタンスは同じサービスプランからのものです。 同じアプリケーションに対して、共有のインスタンスと標準のインスタンスを使用することはできません。 したがって、同じアプリケーションの異なるサービスプランのインスタンスを混在させて一致させることはできません。
- 自動スケーリングを選択した場合でも、Azureを最大限に活用するために、アプリケーションのメトリックとパフォーマンスをチェックする必要があります。 これにより、コストを削減できるだけでなく、アプリケーションのパフォーマンスを最適化できます。