リソースセンターのご利用開始にあたって、 / 10 分間チュートリアル / ...
インタラクティブな Windows ウェブアプリケーション移行アシスタント (WWAMA) を使用して
ASP.NET ウェブアプリケーションを AWS Elastic Beanstalk に移行する
概要
このラボの目的は、Windows ウェブアプリケーション移行アシスタント (WWAMA) を使用して、サンプル ASP.NET ウェブアプリケーションをフルマネージド型の AWS Elastic Beanstalk 環境に移行することです。Windows ウェブアプリケーション移行アシスタントに関する詳細情報は、こちら から入手できます。
期待される結果
サンプル ASP.NET ウェブアプリケーションをフルマネージド型の AWS Elastic Beanstalk 環境に移行します。
前提条件
このチュートリアルについて | |
---|---|
時間 | 15 分 |
料金 | 無料利用枠の対象 |
ユースケース | Windows アプリケーションの移行 |
製品 | AWS Elastic Beanstalk |
対象者 | 開発者 |
レベル | 初心者 |
最終更新日 | 2020 年 3 月 30 日 |
1.AWS へのサインアップ
このチュートリアルで使用される CloudFormation テンプレートは、t2.micro EC2 インスタンスを起動します。t2.micro インスタンスタイプは無料利用枠の一部です。別のインスタンスタイプが選択された場合、EC2 のコストが発生します。EC2 のコストは、EC2 の料金ページで見積もることができます。
AWS アカウントをお持ちですか? サインイン
2.セットアップと設定
CloudFormation を使用して、サンプルウェブサイトをホストする EC2 インスタンスを起動します。次に、必要な IAM アクセス許可を設定します。
a.CloudFormation を介して EC2 インスタンスを起動する
既存のキーペアを選択するか、キーペアがない場合はキーペアを作成します。続いて、[次へ] をクリックします。

[スタックオプションの設定] 画面で、[次へ] をクリックします。[確認] 画面の下部で、[スタックの作成] をクリックします。

スタックが作成されると、ステータスが「CREATE_COMPLETE」に変更されます。

b.IAM ユーザーを作成する
左側のナビゲーションメニューで、[ユーザー] 、[ユーザーの追加] の順にクリックします。
[ユーザー名] に「MigrationUser」と入力し、[プログラムによるアクセス] チェックボックスをオンにして、[次へ: アクセス許可] をクリックします。

[既存のポリシーを直接アタッチ] をクリックし、検索バーに「Beanstalk」と入力してポリシーをフィルタリングします。
次の AWS 管理ポリシーのチェックボックスをオンにして、[次へ: タグ] をクリックします。
- IAMReadOnlyAccess
- AWSElasticBeanstalkFullAccess

[次へ: 確認] をクリックしてから、[ユーザーの作成] をクリックします。

ユーザーが作成され、画面が表示されたら [CSV をダウンロード] をクリックします。

3.EC2 コンソールにログインし、WWAMA ツールを実行するように設定します
a.EC2 コンソールに移動してログインする
EC2 コンソールにログインしたら、WWAMA インスタンスを選択し、[接続] をクリックします。

[リモートデスクトップのダウンロード] ファイルをクリックして、RDP ファイルを保存します。 次に、[パスワードの取得] をクリックして、キーペアファイルをアップロードし、Widows Server のパスワードを取得します。パスワードはプレーンテキストで表示されます。次のステップで必要になるので、コピーしておいてください。

b.EC2 Windows サーバーで PowerShell ターミナルを開く
管理者として PowerShell ターミナルを開き、右下のサンプルに示されているコマンドを実行して AWS 認証情報を設定します。ACCESS_KEY と SECRET_ACCESS_KEY を、MigrationUser の作成中に以前にダウンロードした .CSV の値に置き換えます。

PS C:\> Import-Module AWSPowerShell
PS C:\> Set-AWSCredential -AccessKey ACCESS_KEY -SecretKey SECRET_ACCESS_KEY -StoreAs default
c.移行アシスタントファイルを抽出する
移行アシスタントは、CloudFormation テンプレートによって C:\ ドライブに事前にダウンロードされています。ファイルは wwama.zip です
wwama.zip を右クリックして、アシスタントを抽出します。

d.移行前にサンプルウェブサイトを表示する
EC2 Windows Server インスタンスでウェブブラウザを開き、http://localhost/ に移動します。移行アシスタントが移行するサンプルウェブサイトが表示されます。

4.移行アシスタントを実行します
a.MigrateIISWebsiteToElasticBeanstalk.ps1 スクリプトを起動する
前に開いた PowerShell ターミナルで、移行スクリプトを起動します。
アシスタントは、認証情報ファイルの場所を指定するよう要求してきます。Enter キーを押してスキップします。
AWS プロファイル名を求められたら、「default」と入力します。
PS C:\> .\MigrateIISWebsiteToElasticBeanstalk.ps1
b.AWS リージョンを選択する
Elastic Beanstalk 環境を実行する AWS リージョンを入力します。例: us-east-1。Elastic Beanstalk を利用できる AWS リージョンのリストについては、AWS 全般のリファレンスの「AWS Elastic Beanstalk エンドポイントとクォータ」を参照してください。
Enter the AWS Region (default us-east-1):
c.移行するウェブアプリケーションを選択する
次に、アシスタントは IIS サーバーで実行されているウェブサイトを検出し、以下の例のように一覧表示します。

番号 2 を入力して、サンプルサイトを移行します。
Enter the number of the website to migrate: (default 1):
d.接続文字列を更新する
次に、アシスタントは、上で選択した接続文字列を更新するように求めてきます。このアプリケーションには接続文字列がないため、Enter キーを押します。
次のメッセージが表示されます。
「移行アシスタントは接続文字列を見つけられませんでした」。
Enter the number of the connection string you would like to update, or press ENTER:
e.Elastic Beanstalk アプリケーションをセットアップする
次に、新しい Elastic Beanstalk アプリケーションに名前を付けます。
Windows Server のバージョンを選択するように求められたら、「6」と入力して Enter キーを押します。
Enter a unique name for your new Elastic Beanstalk application:

アプリケーションを実行するインスタンスタイプを入力します。「 t2.micro」と入力します。完全なリストについては、「Amazon EC2 インスタンスタイプ」をご覧ください。
Enter the instance type (default t3.medium) : t2.micro
次に、移行アシスタントがアプリケーションを Elastic Beanstalk に移行します。

移行が完了すると、CLI に成功のメッセージが表示されます。

5.Elastic Beanstalk でホストされているウェブアプリケーションに移動する
サイトが正常に移行されたので、ウェブサイトが稼働していることを確認します。
a.ウェブブラウザーでのアクセス
PowerShell スクリプトの出力から URL を取得できます。
URL をウェブブラウザーに入力すると、Elastic Beanstalk で実行されているウェブアプリケーションが表示されます。


b.Elastic Beanstalk コンソールでのアクセス
Elastic Beanstalk 環境は、AWS コンソールからも表示できます。アプリケーションをデプロイしたのと同じリージョンのコンソールが表示されていることを確認します。左側のメニューを使用して、アプリケーションで何ができるかを探ってみてください。

6.リソースをクリーンアップする
この最後のステップでは、すべてのリソースをクリーンアップして削除します。
a.Elastic Beanstalk アプリケーションを削除する
Elastic Beanstalk コンソールに移動し、右側の [アクション] メニューをクリックします。次に、[環境の終了] を選択します。

b.CloudFormation スタックを削除する
CloudFormation コンソールに移動し、ラボの開始時に作成した CloudFormation スタックの WWAMAStack を削除します。
おめでとうございます
Windows ウェブアプリケーション移行アシスタント (WWAMA) を使用して、サンプル ASP.NET ウェブアプリケーションをフルマネージド型の Elastic Beanstalk 環境に正常に移行しました。
AWS Elastic Beanstalk は、Java、.NET、PHP、Node.js、Python、Ruby、Go および Docker を使用して開発されたウェブアプリケーションやサービスを、Apache、Nginx、Passenger、IIS など使い慣れたサーバーでデプロイおよびスケーリングするための、使いやすいサービスです。
お客様はコードをアップロードするだけで、Elastic Beanstalk が、キャパシティのプロビジョニング、ロードバランシング、Auto Scaling からアプリケーションのヘルスモニタリングまで、デプロイを自動的に処理します。同時に、お客様のアプリケーションが稼動している AWS リソースの完全な制御を維持でき、いつでも基盤となるリソースにアクセスすることができます。
詳細については、「AWS Elastic Beanstalk」をご覧ください。