2014/08/02

Windows EC2で速度を計測するまでの設定

Windowsとか全然分からないのですが、機会があったのでWindows EC2でiperfを使って速度計測してみました。

このブログは、本当にWindowsとかWIndows Server触った事ない、MSの製品の設計思考を知らない人が操作したログなので知っている人からすればそんなの(ryという感じです。

ローカルのMacにipefを入れる
brew install iperf
なんて簡単!

Windows EC2を起動する

まずWindows EC2を起動します。起動するAMIはMicrosoft Windows Server 2012 R2 Base で良いでしょう。
起動方法はこちらにあるのでここは省略します。Security Groupで5001を開けておいてください。



Windows EC2に接続する

Mac OS からログインするときはRemote Desktop Connectionだとエラーで何故かログイン出来ないので、CoRDをダウンロードします。ホスト名とUsername, passwordを設定すればログインが可能です。
Mac OS 10.9.4だとこのアプリでWindows OSにログイン出来なかった
(参考記事: http://ameblo.jp/nekocat2/entry-11494736515.html

 ←この人だとエラーでRDP出来ない

Windows EC2の設定をする
ログイン後、まずiperfをダウンロードしたいので、IEの設定を変更します。左側の四角いアイコン(多分スタートボタンだと思います)をクリックします。



クリックすると、このようなタイルみたいなのが出てくるので、Internet Explorerをクリックします。ちなにこのページから最初のデスクトップ画面に戻りたいときは右上にあるDesktopをクリックすれば戻れました。



クリックすると、IEが立ち上がるので、右上にある車輪マーク?をクリックします。



クリックするとメニューが出てくるのでInternet Optionsを選択します。



ポップアップが出てくるので、Securityタブを選択し、Internetアイコンを選択した後、Custom Levelをクリックします。

Settingsの所で、Downloads > File Download をDisable から Enableにします。その後OKをクリックします。

Warningのポップアップが出てくるので、Yesをクリックした後、Internet Optionsの画面に戻るので、Applyをクリックした後、OKをクリックします。

その後Windows EC2内のファイヤーウォールの設定をします。
まず最初のスタートページに戻り、今度はControl Panelをクリックします。その後に設定項目が出るので、System and Security > Windows Firewallを選択します(もし見つからなかったら、WF.mscというキーワードで検索してみてください)。
その後Advanced Settingsをクリックして設定画面を開きます。


Windows Firewall with Advanced Securityという画面が出てくるので、左側メニューにあるInbound Rulesを選択し、上のメニューバーからAction > New Rules....をクリックします。


New Inbound Rule Wizardが出てくるので、Portを選択後、Next を押して、TCPを選択し、Specific local ports; にて5001を入力します。


次の画面で、Allow the connectionを選択します。
その後、適応する箇所について聞かれるので、Doamin/Private/Public 全部を選びます。全部じゃなくてPublicだけでもいいのですが、何となく。
最後は設定に名前を付けてFinish, 保存します。
追加されました。


Windows EC2にアプリ設定をする

次はiperfのダウンロードと、Javaのダウロードをして設定します。

iperf
スタートページからIEに戻ってこちらのリンクにアクセスします。
https://code.google.com/p/xjperf/
このページのDownloads からFeatured jperf iperfをダウンロードします(2014/8/2時点ではjperf-2.0.2.zipでした。
https://code.google.com/p/xjperf/downloads/list
ダウンロード後、zip解凍します。

Java
次にJavaをダウンロードします。
http://www.java.com/ja/
上記ページにアクセスして、あなたとJavaという文言に何とも言えない気持ちになりました。

ダウンロードするとThis PC > Downloadsに、JavaSetup7u65というファイルがダウンロードされるので、ダブルクリックしてインストールします。ウィザードが立ちあがりますが、基本はディフォルトでよいでしょう。

Javaインストール後、Pathの設定をする必要があります。これをしないとiperfを起動してもjavawがないと怒られます(ちなみにjavawを見た時、w->ワラの方がと思ってしまいました。javaワラ)
参考リンク: http://wp2.trojanbear.net/708.html

スタートページからControl Panelに移動し、System and Security > System からbasic information about your computerの画面に遷移します。



以下のChange settingsをクリックします(随分分かり辛い場所にあると思いません??)


System Properties画面が立ちがあるので、AdvancedタブにあるEnvironment Variablesをクリックします。

Environment Variables画面が出てくるので、TEMPをハイライトし、その下に出てくるSystem variablesにあるPathを選択し、Editします。

Pathの値の末尾に、Javaがインストールされたパスを書きます。多分こんな感じになるでしょう。
;C:\Program Files (x86)\Java\jre7\bin

これで設定は終わりです。

計測

iperfを立ち上げます。クリックするとSecurity Warningが出ますがRunさせます。
起動させたら、Serverを選択し、Run iperfします。

手元にあるPCから接続をします。
コマンドは
iperf -c Windows EC2の固定IP
です。このような感じになると思います。


aya-2:~ komuro$ iperf -c 54.210.217.54
------------------------------------------------------------
Client connecting to 54.210.217.54, TCP port 5001
TCP window size:  129 KByte (default)
------------------------------------------------------------
[  4] local 192.168.11.3 port 51824 connected with 54.210.217.54 port 5001
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-14.3 sec  15.2 MBytes  8.93 Mbits/sec

今回Windows EC2をUS-East-1に立てたので、東京リージョンよりは1/3ぐらいの速度かなぁと思いました。
後この検証している時、子どもが横でYoutube見ていたのでそれも影響しそうです。
朝3時に家族が寝ている時に同じ環境で検証したときは以下のような結果でした。
aya-2:~ komuro$ iperf -c 54.210.217.54
------------------------------------------------------------
Client connecting to 54.210.217.54, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.11.3 port 61719 connected with 54.210.217.54 port 5001
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.1 sec 20.6 MBytes 17.2 Mbits/sec
ここまでやって思った事は毎度ですけど、サーバにGUIはどうしても慣れないなぁという事でした。サーバと思わないで全く違うものだと思って使えばいいのかもしれません。

何はともあれWindows Serverの勉強になりました!

今回参考になったページ