インタラクティブな Windows ウェブアプリケーション移行アシスタント (WWAMA) を使用して

ASP.NET ウェブアプリケーションを AWS Elastic Beanstalk に移行する

概要

このラボの目的は、Windows ウェブアプリケーション移行アシスタント (WWAMA) を使用して、サンプル ASP.NET ウェブアプリケーションをフルマネージド型の AWS Elastic Beanstalk 環境に移行することです。Windows ウェブアプリケーション移行アシスタントに関する詳細情報は、こちら から入手できます。

期待される結果

サンプル ASP.NET ウェブアプリケーションをフルマネージド型の AWS Elastic Beanstalk 環境に移行します。

前提条件

EC2 インスタンス、キーペア、セキュリティグループ、IAM ユーザー、Elastic Beanstalk 環境を作成するには、AWS アカウントと IAM 権限が必要です。このチュートリアルでは、AWS CloudFormation テンプレートをデプロイします。これにより、EC2 インスタンスにサンプルウェブサイトを自動的にプロビジョニングし、移行のソースウェブアプリケーションにすることができます。 

このチュートリアルについて
時間 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 インスタンスを起動する

CloudFormation を使用して、US-East-1 で EC2 インスタンスを起動します。

CloudFormation スタックを起動します >>

続いて、[次へ] をクリックします。

WWAMA - CFN

既存のキーペアを選択するか、キーペアがない場合はキーペアを作成します。続いて、[次へ] をクリックします。

WWAMA - 2

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

 

WWAMA - 3

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

 

WWAMA - 5

b.IAM ユーザーを作成する

IAM コンソールにログインします >>

左側のナビゲーションメニューで、[ユーザー] 、[ユーザーの追加] の順にクリックします。

[ユーザー名] に「MigrationUser」と入力し、[プログラムによるアクセス] チェックボックスをオンにして、[次へ: アクセス許可] をクリックします。

WWAMA - 6

[既存のポリシーを直接アタッチ] をクリックし、検索バーに「Beanstalk」と入力してポリシーをフィルタリングします。

次の AWS 管理ポリシーのチェックボックスをオンにして、[次へ: タグ] をクリックします。

  • IAMReadOnlyAccess
  • AWSElasticBeanstalkFullAccess

 

WWAMA - 8

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


 

 

WWAMA - 9

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

 

 

WWAMA - 10

3.EC2 コンソールにログインし、WWAMA ツールを実行するように設定します

a.EC2 コンソールに移動してログインする

ここで EC2 にログインします >>

EC2 コンソールにログインしたら、WWAMA インスタンスを選択し、[接続] をクリックします。

WWAMA - launch-instance

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

 

 

WWAMA - RDP_LI

以前に保存した RDP ファイルを使用して EC2 インスタンスにログインし、パスワードを入力します。

 

 

b.EC2 Windows サーバーで PowerShell ターミナルを開く

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

 

WWAMA - 13
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 を右クリックして、アシスタントを抽出します。

WWAMA - 14

d.移行前にサンプルウェブサイトを表示する

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

WWAMA - localhost_LI

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 サーバーで実行されているウェブサイトを検出し、以下の例のように一覧表示します。

 

 

WWAMA - 16

番号 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:
WWAMA - 17

アプリケーションを実行するインスタンスタイプを入力します。「 t2.micro」と入力します。完全なリストについては、「Amazon EC2 インスタンスタイプ」をご覧ください。

Enter the instance type (default t3.medium) : t2.micro

次に、移行アシスタントがアプリケーションを Elastic Beanstalk に移行します。

 

WWAMA - 18

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

 

WWAMA - 19

5.Elastic Beanstalk でホストされているウェブアプリケーションに移動する

サイトが正常に移行されたので、ウェブサイトが稼働していることを確認します。

a.ウェブブラウザーでのアクセス

PowerShell スクリプトの出力から URL を取得できます。

URL をウェブブラウザーに入力すると、Elastic Beanstalk で実行されているウェブアプリケーションが表示されます。

 

WWAMA - 20
WWAMA - 21

b.Elastic Beanstalk コンソールでのアクセス

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

 

WWAMA - 22

6.リソースをクリーンアップする

この最後のステップでは、すべてのリソースをクリーンアップして削除します。

a.Elastic Beanstalk アプリケーションを削除する

Elastic Beanstalk コンソールに移動し、右側の [アクション] メニューをクリックします。次に、[環境の終了] を選択します。

 

 

WWAMA - 22

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」をご覧ください。

このチュートリアルは役に立ちましたか?

ありがとうございます
このチュートリアルで良かった点をお聞かせください。
閉じる
ご期待に添えず申し訳ありません
古い説明、わかりにくい説明、間違った説明はございませんでしたか? このチュートリアルの改善のために、ぜひフィードバックをお寄せください。
閉じる