移行に関する考慮事項を評価する

完了

このユニットでは、Azure に ASP.NET を移行する利点について学習します。

移行の利点を調査する

アプリケーションを Azure でホストされる環境に移行する利点は、アプリケーションのパフォーマンスとセキュリティの重要な側面が中心になります。 これらの面については、オンプレミス環境の場合と同等、またはそれを超えるものを実現できます。 そうでない場合、移行に関連するコストとワークロードが見合っていないと思えるかもしれません。

パフォーマンスに関する考慮事項を評価する

アプリケーションのパフォーマンスは、顧客満足に関する重要な考慮事項です。 アプリケーションの需要サイクルには、山と谷が発生する可能性があります。 休日のショッピングやマーケティング キャンペーンにより、アプリケーションとそれらをホストするサーバーの需要が増加する可能性があります。

オンプレミス環境では、需要の増加はシステムが過負荷になる可能性があることを意味します。 需要の増加に対応するには、サーバー ハードウェアの追加と、それに伴う管理の増強が必要になることがあります。 管理には、顧客がシステムを使い続けられるようにするための、ハードウェアの追加、ソフトウェアのインストールと構成、必要なトラフィック ルーティングの設定が含まれます。 需要が減少すると、サーバー ハードウェアがサイクルの次のピークまで使用されないままになります。

スケーリング オプションを評価する

Azure には、Web アプリと SQL データベースのためのスケーリング オプションが用意されています。 必要なときにはスケーリングによって需要を満たし、需要が減ったら元に戻すことができます。 これらのスケーリング オプションを使用すると、既存のコードを変更したり、アプリケーションを再デプロイしたりする必要もありません。 2 つの主なスケーリング オプションは次のとおりです。

  • スケール アップする: CPU、メモリ、ディスク領域を増やし、専用 VM、カスタム ドメインと証明書、ステージング スロット、自動スケーリングなどの機能を追加します。 スケールアップするには、アプリが属している App Service プランの価格レベルを変更します。

  • スケールアウト: アプリを実行する VM インスタンスの数を増やします。 価格レベルに応じて、30 個までのインスタンスにスケールアウトすることができます。

Note

App Service により、Azure SQL Database などの関連リソースが自動的にスケーリングされることはありません。 App Service プランでは、これらのリソースは管理されません。 ただし、これらの他のリソースについても、スケーリングを簡単に構成できます。

Azure SQL Database と Azure SQL Managed Instance を使用すると、最小限のダウンタイムで、データベースにリソースを動的に追加できます。 リソースを追加することにより、データベースが現在のリソースの制限に達したときに迅速に対応し、受信したワークロードを管理するための能力を高めることができます。 また、Azure SQL Database を使用すると、必要がなくなったときにリソースをスケールダウンしてコストを削減することもできます。 Azure SQL Database の単一データベースは、手動の動的スケーラビリティをサポートしていますが、自動スケーリングはサポートしていません。 自動操作を増やすには、エラスティック プールの使用を検討してください。これにより、データベースが個々のデータベースのニーズに基づいてプール内のリソースを共有できます。

アプリとデータのセキュリティに関する考慮事項を評価する

アプリケーションと関連データをセキュリティで保護することは、重要な考慮事項です。 Web アプリでパブリックにアクセス可能なインターフェイスが提供されている場合でも、承認されていないユーザーが Web アプリのデータベースや管理ページにアクセスすることは望ましくありません。 考慮すべき重要な質問を次に示します。

  • アプリの特定の領域にアクセスする必要があるのは誰か?

  • 厳密なセキュリティが必要な領域はどこか?

  • セキュリティで保護された領域ではユーザーをどのような方法で認証するか?

現在の環境のセキュリティ構成を評価し、その評価を使用して、ホストされた環境のセキュリティ ニーズを詳しく計画します。 ファイアウォールのハードウェアなど、オンプレミス環境の一部の側面は、Azure では若干異なります。 たとえば、Azure での仮想ネットワークは、アプリとサービスのためのファイアウォールとして機能します。

アプリケーションで必要になる可能性のあるシークレットを格納するための Azure Key Vault など、他の領域は新しいものです。 典型的な例として、SQL の接続文字列は、アプリケーションの構成ファイルではなく、Azure Key Vault に格納されます。 これにより、データベースの資格情報の周囲に新しいセキュリティ層が追加されます。

ネットワーク要件を調査する

Azure の仮想ネットワークや DNS などのサービスを使用することにより、オンプレミスのネットワーク環境を模倣できます。 これらのオプションを理解すると、アプリケーションをホストする、セキュリティで保護された運用ネットワーク環境を構成するのに役立ちます。

Azure のネットワーク オプションを調べる

ファイアウォールと同様の方法で動作する Azure の仮想ネットワークを使用することにより、アプリとデータのさまざまな側面をセキュリティで保護することができます。 仮想ネットワークは簡単なプロセスで設定でき、アプリケーションのネットワーク セキュリティを制御できるようになります。 次のことを実行できます。

  • クラスレス ドメイン間ルーティング (CIDR) の表記を使用して、サブネットを構成します。

  • 境界ネットワークを作成して、トラフィックのドメインを分離します。

  • ネットワーク ポートを使用して、アクセスを制御します。

Azure 仮想ネットワークを使用すると、アプリケーション同士およびアプリケーションとインターネットやオンプレミス ネットワークとの間の通信を、セキュリティで保護することができます。 既定により、アプリからインターネットへの送信通信は許可されますが、受信接続は、必要なアプリケーション ポートを明示的に開くまで拒否されます。

Azure リソース間の通信は、次の方法で実現されます。

  • 仮想ネットワーク: VM と他のリソースを仮想ネットワークにデプロイすると、これらのリソース間の直接通信が提供されます。

  • サービス エンドポイント: サービス エンドポイントを使用すると、重要な Azure サービスのリソースを仮想ネットワークだけに容易に固定できます。

  • 仮想ネットワーク ピアリング: 仮想ネットワーク ピアリングを使用すると、仮想ネットワークを相互に接続でき、それにより、どちらの仮想ネットワーク内のリソースも相互に通信できるようになります。

オンプレミス ネットワークとの通信は、以下の方法で実現されます。

  • ポイント対サイト VPN 接続: 仮想ネットワークと、ネットワーク内の単一のコンピューターとの間で確立されます。 仮想ネットワークとの接続を確立する各コンピューターで、接続を構成する必要があります。

  • サイト間 VPN 接続: オンプレミスの VPN デバイスと、仮想ネットワークにデプロイされた Azure VPN Gateway との間で確立されます。 この接続の種類を使用すると、承認した任意のオンプレミス リソースが仮想ネットワークにアクセスできます。

  • ExpressRoute 接続: ExpressRoute パートナーを通じて、ネットワークと Azure の間で確立されます。 この接続はプライベート接続です。 トラフィックはインターネットを経由しません。

セキュリティについて Microsoft Entra ID を調べる

Microsoft Entra ID は、従業員のサインインおよびリソースへのアクセスを支援する、クラウドベースの ID およびアクセス管理サービスです。 次のものへのアクセスが提供されます。

  • 外部リソース (Microsoft 365、Azure portal、他の多くの SaaS アプリケーションなど)。

  • 内部リソース (社内ネットワーク上のアプリケーションや、ユーザーの組織によって開発されたクラウド アプリなど)。

Microsoft Entra ID による認証とアクセス制御について調べる

Microsoft Entra 認証を使用すると、ユーザー名とパスワードを検証できますが、さらに多くのことができます。 セキュリティを強化し、ヘルプデスク サポートの必要性を減らすため、Microsoft Entra 認証には次のコンポーネントが含まれています。

  • セルフサービス パスワード リセット: ユーザーは、任意のデバイスの Web ブラウザーを使用して、自分のパスワードを更新または変更できます。

  • Microsoft Entra 多要素認証:ユーザーは、サインイン時の認証の追加形式 (電話やモバイル アプリの通知など) を選択できます。

  • ハイブリッド統合: ユーザーがセルフサービス パスワード リセットを使用して自分のパスワードを更新またはリセットしたら、そのパスワードをオンプレミスの Active Directory 環境に書き戻すこともできます。 また、ハイブリッド統合は、オンプレミスの環境にパスワード保護ポリシーを適用するためにも使用されます。

  • パスワードレス認証: このオプションには、Windows Hello for Business での生体認証や、FIDO2 セキュリティ キーなどの方法を使用して提供された資格情報の入力が含まれます。

Microsoft Entra ID は、Azure 上のすべてのリソースへのアクセス制御に使用できます。 シングル サインオン機能は、ユーザーが複数のサインオン資格情報を記憶する必要がないことも意味します。

コストに関する考慮事項を調べる

コストは、移行が適切な選択であるかどうかを判断するのに役立つ重要な要素です。 オンプレミスのアプリケーションとデータベースのホストに関連するコストが既にわかっている場合があります。 クラウドでホストされる環境で発生する可能性があるコストを評価しやすいように、Azure にはコスト分析ツールが用意されています。

Azure 料金計算ツール

Azure 料金計算ツールを使用すると、Azure で使用する予定のリソースのコストを判断できます。 このツールでは、利用可能なさまざまなカテゴリから選択でき、その中に Azure リソースもあります。 その後、そのサービスの月間の推定コストが表示される、特定の構成を選択できます。

たとえば、Azure VM の使用コストを評価したい場合は、[仮想マシン] カテゴリを選択してから、構成オプションを確認します。 リージョン、OS、価格レベル、サイズなどのオプションを変更すると、グラフが更新されて選択したオプションが反映されます。

Screenshot of the pricing calculator depicting cost of VM with configured parameters.

App Service のコストを確認する

料金計算ツールで App Service カテゴリを選択すると、Azure で ASP.NET アプリケーションをホストするコストを判断できます。

Screenshot of the Azure App Service category option.

[レベル] ドロップダウン メニューから価格レベル オプションを調整すると、コスト モデルが変更されます。 CPU コアの特定の構成とメモリ オプションを選択することで、コンピューティング構成が変更されます。 オンプレミス環境に一致するレベルを選択し、そのコンピューティング環境での月間ホスティング コストを確認することができます。

アプリのスケーリングに関連するコストを把握するには、インスタンスの数のカウンターを増やすことができます。

Screenshot of the instance counter set to 3.

このペインでオプションの変更を続けて、Azure App Service に関連する月額料金を評価します。

最新の Azure Dv4 仮想マシン (VM) ハードウェアを利用して優れたパフォーマンスとスケーラビリティを提供する更新された Premium v3 (Pv3) オファリングを、お客様も利用できます。 Premium v2 と Premium v3 のコストの比較で、App Service の毎月のコストの比較を示します。

Diagram of a comparison of Premium v2 and Premium v3 depicting cost of $147 USD for v2 and $113 USD for v3 for monthly.

Azure SQL Database のコストを確認する

料金計算ツール ページで [データベース] カテゴリを選択することにより、SQL Server のコストを評価できます。 これにより、Azure で使用可能なデータベース オプションが示されます。 [Azure SQL Database] を選択すると、料金計算ツール ページの見積もりパネルが開きます。 このパネルを使用して、必要に応じてパラメーターを変更し、毎月課金されるコストを確認することができます。

この見積もり機能には、コストに影響するさまざまなオプションがあります。 最初のオプションは、インスタンスの構成に関するものです。

Screenshot of SQL instance options in pricing calculator depicting the region for hosting, the type (single or elastic pool), and the service tier among the options available.

また、コンピューティング リソース オプションを選択して、価格モデルを調整する必要もあります。 たとえば、次のコンピューティング オプションのスクリーンショットで示されているように、ハイブリッド モデルを使用してライセンス コストを削減することができます。

Screenshot of the Azure Hybrid benefit selected, depicting a reduction in cost.

それ以外のオプションとしては、ストレージ アカウントのオプションと、Azure SQL Database ホストの一部として含めることができるすべてのサポートに関するものがあります。