QuickStart: ASP.NET アプリケーションを Elastic Beanstalk にデプロイする - AWS Elastic Beanstalk

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

QuickStart: ASP.NET アプリケーションを Elastic Beanstalk にデプロイする

この QuickStart チュートリアルでは、ASP.NET アプリケーションを作成して AWS Elastic Beanstalk 環境にデプロイするプロセスについて説明します。

注記

この QuickStart チュートリアルはデモンストレーションを目的としています。このチュートリアルで作成したアプリケーションを本番トラフィックに使用しないでください。

AWS アカウント

まだ AWS 顧客でない場合は、 AWS アカウントを作成する必要があります。サインアップすると、Elastic Beanstalk やその他の必要な AWS サービスにアクセスできます。

AWS アカウントを既にお持ちの場合は、 に移動できます前提条件

にサインアップする AWS アカウント

がない場合は AWS アカウント、次の手順を実行して作成します。

にサインアップするには AWS アカウント
  1. https://portal.aws.amazon.com/billing/サインアップ を開きます。

  2. オンラインの手順に従います。

    サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。

    にサインアップすると AWS アカウント、 AWS アカウントのルートユーザー が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、ユーザーに管理アクセスを割り当て、ルートユーザーのみを使用してルートユーザーアクセスが必要なタスクを実行してください。

AWS は、サインアッププロセスが完了した後に確認 E メールを送信します。/ に移動し、マイアカウント を選択すると、いつでも現在のアカウントアクティビティを表示https://aws.amazon.comし、アカウントを管理できます。

管理アクセスを持つユーザーを作成する

にサインアップしたら AWS アカウント、 のセキュリティを確保し AWS アカウントのルートユーザー、 を有効にして管理ユーザーを作成し AWS IAM Identity Center、日常的なタスクにルートユーザーを使用しないようにします。

のセキュリティ保護 AWS アカウントのルートユーザー
  1. ルートユーザーを選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者AWS Management Consoleとして にサインインします。次のページでパスワードを入力します。

    ルートユーザーを使用してサインインする方法については、AWS サインイン ユーザーガイドルートユーザーとしてサインインするを参照してください。

  2. ルートユーザーの多要素認証 (MFA) を有効にします。

    手順については、「 ユーザーガイド」の AWS アカウント 「ルートユーザー (コンソール) の仮想MFAデバイスの有効化」を参照してください。 IAM

管理アクセスを持つユーザーを作成する
  1. IAM Identity Center を有効にします。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「AWS IAM Identity Centerの有効化」を参照してください。

  2. IAM Identity Center で、ユーザーに管理アクセスを許可します。

    を ID ソース IAM アイデンティティセンターディレクトリ として使用する方法のチュートリアルについては、 AWS IAM Identity Center ユーザーガイド「デフォルトを使用してユーザーアクセスを設定する IAM アイデンティティセンターディレクトリ」を参照してください。

管理アクセス権を持つユーザーとしてサインインする
  • IAM Identity Center ユーザーでサインインするには、IAMIdentity Center ユーザーの作成時に E メールアドレスにURL送信されたサインインを使用します。

    IAM Identity Center ユーザーを使用してサインインする方法については、AWS サインイン 「 ユーザーガイド」の AWS 「 アクセスポータルにサインインする」を参照してください。

追加のユーザーにアクセス権を割り当てる
  1. IAM Identity Center で、最小権限のアクセス許可を適用するベストプラクティスに従うアクセス許可セットを作成します。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「権限設定を作成する」を参照してください。

  2. グループにユーザーを割り当て、そのグループにシングルサインオンアクセス権を割り当てます。

    手順については、「AWS IAM Identity Center ユーザーガイド」の「グループの参加」を参照してください。

前提条件

この QuickStart チュートリアルでは、「Hello World」アプリケーションを作成し、Visual Studio と を使用して Elastic Beanstalk 環境にデプロイする方法について説明します AWS Toolkit for Visual Studio。

注記

AWS 2024 年 10 月 1 日以降に作成された アカウントは、新しい環境を正常に作成するためのオプションを一時的に設定する必要があります。新しいアカウントと同様に、アカウントがまだ環境 を持っていないリージョンでのみ、既存のアカウントは同じアクションを実行する必要があります。詳細については、「テンプレートの起動」を参照してください。

Visual Studio

Visual Studio をダウンロードしてインストールするには、Visual Studio ダウンロードページの手順に従ってください。この例では、Visual Studio 2022 を使用しています。Visual Studio のインストール中に、以下の特定の項目を選択します。

  • Workloads タブ — ASPNET「」と「ウェブ開発」を選択します。

  • 個別コンポーネントタブ — を選択します。NET Framework 4.8 開発ツール。NET フレームワークプロジェクトおよび項目テンプレート

AWS Toolkit for Visual Studio

ダウンロードしてセットアップするには、 AWS Toolkit for Visual Studio 「 ユーザーガイド」の「開始方法」トピックの手順 AWS Toolkit for Visual Studio に従います。

ステップ 1: . ASPNETアプリケーションを作成する

次に、Elastic Beanstalk 環境にデプロイするアプリケーションを作成します。「Hello WorldASP」ウェブNETアプリケーションを作成します。

ASP.NET アプリケーションを作成するには
  1. Visual Studio を起動します。ファイルメニューで、新しい を選択し、次にプロジェクト を選択します。

  2. 新しいプロジェクトの作成ダイアログボックスが表示されます。ASP.NET ウェブアプリケーション () を選択します。NET フレームワーク) を選択し、次へ を選択します。

  3. 新しいプロジェクトを設定するダイアログで、プロジェクト名 eb-aspnet に を入力します。フレームワークドロップダウンメニューから を選択します。NET Framework 4.8 で、 の作成 を選択します。

    プロジェクトディレクトリを書き留めます。この例では、プロジェクトディレクトリは ですC:\Users\Administrator\source\repos\eb-aspnet\eb-aspnet

  4. 新しい を作成するASP。NET ウェブアプリケーションダイアログが表示されます。空のテンプレートを選択します。次に、 の作成を選択します。

    この時点で、Visual Studio を使用して空の ASP.NET ウェブアプリケーションプロジェクトを作成しました。次に、ASP.NET ウェブアプリケーションのエントリポイントとして機能するウェブフォームを作成します。

  5. プロジェクトメニューから、新しいアイテムの追加 を選択します。新しいアイテムの追加ページで、ウェブフォームを選択し、名前を付けますDefault.aspx。次に、 の追加を選択します。

  6. 以下を に追加します。 Default.aspx:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="eb_aspnet.Default" %> <!DOCTYPE html> <html xmlns="https://www.w3.org/1999/xhtml"> <head runat="server"> <title>Hello Elastic Beanstalk!</title> </head> <body> <form id="body" runat="server"> <div> Hello Elastic Beanstalk! This is an ASP.NET on Windows Server application. </div> </form> </body> </html>

ステップ 2: アプリケーションをローカルで実行する

Visual Studio で、デバッグメニューからデバッグの開始を選択してアプリケーションをローカルで実行します。ページには「Hello Elastic Beanstalk!」と表示されます。これは、Windows Server アプリケーションの ASPですNET。「」

ステップ 3: NETを使用して . ASPアプリケーションをデプロイする AWS Toolkit for Visual Studio

以下の手順に従って Elastic Beanstalk 環境を作成し、新しいアプリケーションをデプロイします。

環境を作成して ASPNETアプリケーションをデプロイするには
  1. Solution Explorer で、アプリケーションを右クリックし、 に発行 AWS Elastic Beanstalkを選択します。

  2. 新しい Elastic Beanstalk アプリケーションと環境の名前を選択します。

  3. この時点以降は、Elastic Beanstalk が提供するデフォルトを続行するか、任意のオプションと設定を好みに変更することができます。

  4. レビューページで、 をデプロイ を選択します。これにより、ASP.NET ウェブアプリケーションがパッケージ化され、Elastic Beanstalk にデプロイされます。

    Elastic Beanstalk が環境を作成するのに約 5 分かかります。Elastic Beanstalk デプロイ機能は、新しくデプロイされたコードで利用できるようになるまで、環境を監視します。Env:<environment name タブには、環境のステータスが表示されます。

ステップ 4: Elastic Beanstalk でアプリケーションを実行する

環境を作成するプロセスが完了すると、Env:<environment name タブに、アプリケーションを起動URLするドメインなど、環境とアプリケーションに関する情報が表示されます。このタブURLでこれを選択するか、ウェブブラウザにコピーして貼り付けます。

お疲れ様でした。Elastic Beanstalk で ASP.NET アプリケーションをデプロイしました。

ステップ 5:クリーンアップ

アプリケーションの使用が終了したら、 で環境を終了できます AWS Toolkit for Visual Studio。

環境を終了するには
  1. [AWS Explorer] でElastic Beanstalk ノードとアプリケーションノードを展開します。アプリケーション環境を右クリックして、[環境の終了] を選択します。

  2. プロンプトが表示されたら、[はい] を選択して、環境を終了することを確認します。Elastic Beanstalk が 環境で実行されている AWS リソースを終了するには数分かかります。

AWS アプリケーションの リソース

1 つのインスタンスアプリケーションを作成しました。1 つのEC2インスタンスで簡単なサンプルアプリケーションとして機能するため、ロードバランシングや自動スケーリングは必要ありません。単一インスタンスアプリケーションの場合、Elastic Beanstalk は次の AWS リソースを作成します。

  • EC2 インスタンス – 選択したプラットフォームでウェブアプリケーションを実行するように設定された Amazon EC2 仮想マシン。

    各プラットフォームは、それぞれ特定の言語バージョン、フレームワーク、ウェブコンテナ、またはそれらの組み合わせをサポートするための、さまざまなソフトウェア、設定ファイル、スクリプトを実行します。ほとんどのプラットフォームでは、ウェブアプリケーションの前にウェブトラフィックを処理するリバースプロキシとして Apache または nginx のいずれかを使用します。そのプロキシがリクエストをアプリケーションに転送し、静的アセットを提供して、アクセスログとエラーログを生成します。

  • インスタンスセキュリティグループ – ポート 80 で受信トラフィックを許可するように設定された Amazon EC2 セキュリティグループ。このリソースにより、ロードバランサーからのHTTPトラフィックがウェブアプリケーションを実行しているEC2インスタンスに到達できるようになります。デフォルトでは、トラフィックは他のポート上で許可されません。

  • Amazon S3 バケット – Elastic Beanstalk の使用時に作成されるソースコード、ログ、その他のアーティファクトの保存場所。

  • Amazon CloudWatch アラーム – 環境内のインスタンスの負荷をモニタリングし、負荷が高すぎるか低すぎるとトリガーされる 2 つの CloudWatch アラーム。アラームがトリガーされると、Auto Scaling グループはレスポンスとしてスケールアップまたはダウンを行います。

  • AWS CloudFormation スタック — Elastic Beanstalk は AWS CloudFormation を使用して環境内のリソースを起動し、設定変更を伝達します。リソースは、AWS CloudFormation コンソールに表示できるテンプレートで定義されます。

  • ドメイン名 - 形式でウェブアプリにルーティングするドメイン名 subdomain.region.elasticbeanstalk.com

Elastic Beanstalk は、これらのリソースをすべて管理します。環境を終了すると、Elastic Beanstalk は含まれているすべてのリソースを終了します。

次のステップ

アプリケーションを実行する環境を手に入れた後、アプリケーションの新しいバージョンや、異なるアプリケーションをいつでもデプロイできるようになります。新しいアプリケーションバージョンのデプロイは、EC2インスタンスのプロビジョニングや再起動を必要としないため、非常に高速です。Elastic Beanstalk コンソールを使用して新しい環境を調べることもできます。詳細な手順については、このガイドの開始方法の章の「環境を探索する」を参照してください。

その他のチュートリアルを試す

異なるサンプルアプリケーションで他のチュートリアルを試したい場合は、「」を参照してくださいQuickStart の 。NET Windows 上の Core

サンプルアプリケーションをデプロイし、 の開発とローカルでの実行を開始する準備ができたら、「」を参照してくださいASP。NET 開発NET環境のセットアップ

Elastic Beanstalk コンソールを使用してデプロイする

Elastic Beanstalk コンソールを使用してサンプルアプリケーションを起動することもできます。詳細な手順については、このガイドの開始方法の章の「アプリケーション例を作成する」を参照してください。