Amazon EC2 で Windows 環境の構築 その1 リモートデスクトップで接続

Amazon EC2 で Windows サーバーを構築する場合、GUI だけで操作することができます。Amazon EC2 のインスタンスでの設定は、ブラウザーで AWS管理コンソール(AWS Managemant Console) を使っておこないます。日本語版がまだできていないので英語が苦手な人は少し苦労すると思いますが、改良されて操作性はよくなっているので頑張れば問題なく設定できると思います。

Amazon EC2 で Windows 環境の構築 その2 日本語化、AMI の作成

1. ブラウザーで AWS 管理コンソール へアクセスします。Amazon Web Servicesに未ログインの場合は、認証画面が表示されます。AWS に登録した e-mail address と password を入力して、Sign in using secure server ボタンをクリックします。
ec201.png

2. AWS 管理コンソールが表示されます。多くのメニューがあり、AWS では多くのサービスが提供されていることがよくわかります。「EC2」タブをクリックします。
ec201a.png

以下の図のような EC2 のダッシュボードが表示されます。EC2 を開始するため、「Launch Instance」ボタンをクリックします。
ec202.png

3. インスタンス要求(Request Instances)ウィザードが開始します。Quick Start は、Amazon が用意したマシンイメージ(AMI)で、Windows Server については、以下の図のように 4 種類が登録されています。Windows Server 2008 Base のみが 32 ビット に対応しており、Windows Server 2008 R2 は 64ビットのみの対応です。32 ビットを選択した場合は、small インスタンスと medium インスタンスと micro インスタンスのみが利用でき、64 ビットのものを選択した場合は、すべてのインスタンスを利用できます。拡張性を重視する場合は、64 ビットを選択しますが、small や micro の場合はメモリが少ないのでコスト重視でメモリの消費量を少しでも減少させたい場合は 32 ビットを選択します。
ec203.png

4. 下のような画面が表示されるので、以下の項目を設定後、「Continue」ボタンをクリックします。

  • Number of Instance: インスタンス数
  • Availability Zone: 最初は既定のままでかまいませんが、同一地域(Region)内であっても異なるゾーン(Zone) のインスタンス間のデータ転送については$0.01 / GB イン/アウトの費用が発生します。
  • Instance Type: 32 ビットの場合は、micro、small、 High-CPU medium のインスタンスが選択できます。
  • Launch Instance: オンデマンド インスタンスを起動します。
  • Request Spot Instance: スポット インスタンスを要求します。スポット インスタンスは、価格を重視する場合に使用しますが、スポット価格が上昇し入力した最大価格を超えるとインスタンスが停止されてしまう可能性があります。事前に AWS 管理コンソールのSpotRequest の Pricing History の画面でスポット価格を調べておきます。
  • Launch Instances Into Your Virtual Cloud: IPsecVPN 接続を使用して、EC2 のコンピュータリソースをイントラネットで利用することができます。高負荷なバッチ処理とか一時的なシステムに利用するとコストを下げることができます。

ec204.png

5. 下のような画面が表示され以下の項目の設定ができますが最初はデフォルトのままでも問題はありません。設定が終われば、「Continue」ボタンをクリックします。

  • Kernel ID: 特定のカーネル ID を選択できます。
  • RAM DISK ID: 特定の RAM DISK ID を選択できます。
  • Monitoring: Monitoring と Auto Scaling を使用すれば、状況に応じて能力を自動的に拡大縮小することができます。1インスタンス1時間当たり 0.015$ の費用が必要です。
  • User Data: ユーザーデータを入力します。インスタンスから AWS API を使ってアクセスすることができるので、処理を自動化するときには便利です。

ec205.png

6. キーペアを作成します。「1. キーペアの名前」の項目に適当な名前を入力し、「Create & Download your Key Payr」ボタンをクリックします。キーペアが作成され秘密鍵のダウンロードが開始されますが、後でパスワードを取得する際に使用するので必ず保存しておきましょう。キーペアは1度作成すると次回からは「Chose from your existing Key pairs」を選択すると、そのキーを使用することができます。
ec206.png

7. ここでは、インスタンスにキーバリューペアのタグをつけることができます。インスタンスを複数利用するようになると、番号だけではわかりにくいので、各インスタンスにわかりやすい名前をつけておくと便利です。起動後につけることも変更することも可能です。
ec206a.png

8. 次がファイアウォールの設定画面です。既定で、Getting Started の場合は、 RDP、MS SQL Server、HTTP の3つのポートが、Basic の場合は RDP のポートが接続許可(Define allowed Connection)に設定されています。Windows の場合は、リモートデスクトップで設定をおこなうので RDP のポートは少なくとも開いておく必要があります。「1. Name your Security Groop」 に適当な名前を、「2. Describe your Security Group」 にグループの説明を入力し、「3. Define allowed Connections」に開放が必要なポートを設定して、「Continue」ボタンをクリックします。

※ここで注意をしないといけないのは、短時間の運用であれば、Source Network を All Internet のままでもかまいませんが、長時間運用する場合は、RDP や MS SQL Server のような管理者用のポートに世界中の PC から接続できるのは危険だということです。自分の PC のグローバル IP アドレスを調べて(わからない場合はここにアクセス)、例えばIP アドレスが139.33.22.112 であれば、Source Network の change をクリックして、139.33.22.112/32 というように入力してしてやれば、自分と同じグローバル IP アドレスの PC からの接続だけがファイアウォールを通過できます。通常、家庭で使っているインターネット回線では、グローバル IP アドレスが変更されるので、その度に、IP アドレスを変更しなければいけないという問題はあります。しかし、ブロードバンドルータの電源は切らないという人であれば、IP アドレスが変更される頻度は少ないので変更の都度修正してもそれほどの手間でないし、使用している時間以外は電源を切りたいという人であれば、割り当てされる IP アドレスを観察していると先頭部分が同じもので分類できるので工夫して Source Network を指定します。例えば、139.33.22 までがいつも同じであれば、139.33.22.0/24 と指定(アドレスの指定については Wikipedia の Classless Inter-Domain Routing を参照)すれば、接続できる PC は劇的に減少します。
ec207.png

9. 確認画面が表示されます。もし修正が必要であれば、それぞれの Edit XXXX をクリックするとそれぞれの設定画面に戻ることができます。確認ができれば、「Launch」ボタンをクリックすれば、インスタンスが起動します。
ec208.png

10. インスタンスの起動が開始すると以下の画面が表示されます。「Close ボタンをクリックします」
ec209.png

11. ダッシュボードに戻ると、MyResource で該当のリソースの数が増加しており、1 Running Instance ということでインスタンスが開始したことが表示されます。
ec210.png

12. 左サイドバーの Instances をクリックすると以下のようにインスタンスの一覧が表示されます。
ec211.png

13. リモートデスクトップで起動したインスタンスに接続する場合、IP アドレス(url)とパスワードが必要になります。該当のインスタンスをクリックをクリックすると、インスタンスの情報が表示され、上部の「instance Actions」が有効になります。IP アドレスについては、Public DNS: の項目がそうで、下の図の場合は、url が ec2-75-101-234-73.compute-1.amazonaws.com、グローバル IP アドレスが 75.101.234.73 となります。Administrator のパスワードは、「instance Actions」をクリックすると、下の図のようにメニューが表示されるので、Get Windows Admin Password を選択します。
ec212.png

14. 起動後すぐに操作をおこなうと、下の図のようにもう少ししてからというメッセージがでます。
ec213.png

15. 少し時間をおいて操作をおこなうと下の図のような画面が表示されます。ここで、7.でダウンロードした秘密鍵を使用します。秘密鍵をテキストエディタで開くと以下のように、最初の行に、-----BEGIN RSA PRIVATE KEY-----、最後の行に、-----END RSA PRIVATE KEY-----、があってその間に乱雑なテキストが含まれています。-----BEGIN RSA PRIVATE KEY-----から-----END RSA PRIVATE KEY-----までのすべてをコピーして、Private Key: の欄に貼り付けます。Decrypt Password ボタンが有効になるのでクリックします。

-----BEGIN RSA PRIVATE KEY-----
k7++Cs3Y3s+cI1HtoV3Qq+ynu...
................................................
-----END RSA PRIVATE KEY-----

ec214.png

15. パスワードの復号ができると下の図のような画面が表示されます。パスワードは、Decrypted Password の項目がそうで、下の図の場合は、VuqJ47;$*c ということになります。
ec215.png

16. IP アドレス(url)とパスワードが取得できたので、リモートデスクトップで起動したインスタンスに接続します。リモートデスクトップの起動は、「スタート」→「すべてのプログラム」→「アクセサリ」の順でクリックすると以下の図のように「リモートデスクトップ接続」が表示されるので、それをクリックして起動します。
ec216.png

17. リモートデスクトップが起動すると、接続先をきいてくるので、13.でメモをした url 又は IP アドレス を入力します。
ec217.png

18. 資格情報については、ユーザー名は Administrator パスワードは 15.で取得したパスワードを入力します。
ec218.png

19.証明書が認証機関からのものでないという注意のメッセージが出ますが問題はないので「はい」ボタンをクリックします。
ec219.png

20. 以上で起動したインスタンスにリモートデスクトップで接続することができ、ここからは、手元にあるパソコンと同じように操作することができます。パスワード及び動作環境を自分の好みに変更します。日本語化、AMI(Amazon Machine Image) の作成については、Amazon EC2 で Windows 環境の構築 その2 にメモしました。
ec220.png