Azure App Service プランを実装する
Azure App Service では、アプリケーションは Azure App Service プランで実行されます。 App Service プランでは、Web アプリを実行するための一連のコンピューティング リソースが定義されます。 これらのコンピューティング リソースは従来の Web ホスティングのサーバー ファームに似ています。 1 つまたは複数のアプリケーションを同じコンピューティング リソース、または同じ App Service プランで実行するように構成することができます。
App Service プランについて知っておくべきこと
仮想マシンで App Service プランを実装して使用する方法を詳しく見てみましょう。
リージョンで App Service プランを作成すると、指定されたリージョンのプラン用に一連のコンピューティング リソースが作成されます。 プランに配置するすべてのアプリケーションは、プランで定義済みのコンピューティング リソースで実行されます。
各 App Service プランでは以下の 3 つが定義されます。
- リージョン: 米国西部、インド中部、北ヨーロッパなどの、App Service プランのリージョン。
- VM インスタンスの数: プランに割り当てる仮想マシン インスタンスの数。
- VM インスタンスのサイズ: プラン内の仮想マシン インスタンスのサイズ (小、中、大など)。
プランに、増加する負荷を処理するための十分なリソースがある限り、既存のプランに新しいアプリケーションを追加し続けることができます。
App Service プランでアプリケーションを実行およびスケーリングする方法
Azure App Service プランは、App Service アプリケーションのスケール ユニットです。 お使いの Azure App Service プランの価格レベルに応じて、アプリケーションは異なる方法で実行およびスケーリングされます。 お使いのプランが 5 つの仮想マシン インスタンスを実行するように構成されている場合は、そのプランのすべてのアプリケーションが 5 つのインスタンスのすべてで実行されます。 お使いのプランが自動スケーリング用に構成されている場合は、プラン内のすべてのアプリケーションが自動スケーリング設定に基づいて一緒にスケールアウトされます。
Azure App Service プランの価格レベルでのアプリケーションの実行とスケーリングのしくみの概要を次に示します。
Free または Shared レベル:
- アプリケーションは、共有仮想マシン インスタンスで CPU 分を受け取ることによって実行されます。
- アプリケーションはスケールアウトできません。
Basic、Standard、Premium、または Isolated レベル:
- アプリケーションは、App Service プランで構成されているすべての仮想マシン インスタンスで実行されます。
- 同じプラン内の複数のアプリケーションが同じ仮想マシン インスタンスを共有します。
- アプリケーション用の複数のデプロイ スロットをお持ちの場合は、すべてのデプロイ スロットが同じ仮想マシン インスタンスで実行されます。
- 診断ログを有効にするか、バックアップを実行するか、Web ジョブを実行すると、これらのタスクは同じ仮想マシン インスタンス上で CPU サイクルとメモリを使用します。
App Service プランを使用する際の考慮事項
Azure App Service プランを使用してアプリケーションを実行およびスケーリングする方法については、次の考慮事項を確認します。 ホテルの Web サイトの実行とスケーリングに適用される可能性のある条件について考えます。
コスト削減を検討する。 App Service プランが割り当てるコンピューティング リソースに対して支払いを行うため、複数のアプリケーションを同じ App Service プランに配置すると、コストを節約できる可能性があります。
1 つのプランで複数のアプリケーションを検討する。 複数のアプリケーションをサポートする 1 つのプランを作成して、共有仮想マシン インスタンスの構成と保守を容易にします。 アプリケーションは同じ仮想マシン インスタンスを共有するため、プランのリソースと容量を慎重に管理する必要があります。
プランの容量を考慮する。 既存のプランに新しいアプリケーションを追加する前に、新しいアプリケーションのリソース要件を決定し、プランの残りの容量を特定します。
重要
App Service プランのオーバーロードは、新規および既存のアプリケーションのダウンタイムを引き起こすおそれがあります。
アプリケーションの分離を検討する。 次の場合にはアプリを新しい App Service プランに分離します。
- アプリケーションがリソースを大量に消費する。
- 既存のプランの他のアプリケーションとは別に、そのアプリケーションをスケーリングする必要がある。
- アプリケーションに別の地理的リージョン内のリソースが必要である。