AWS Windows Server 2016でのJMeter環境構築

この記事では、AWS ec2のWindows Server 2016に、JMeter3.2の環境構築をしました。リモートデストクップクライアントは、Microsoft Remote Desktop for Mac Beta version 8.2.31を利用しています。

この記事の発展として、CentOSでのスレーブと組み合わせた分散環境の構築について「[AWS Windows Server 2016でのJMeter環境構築（分散環境編）] (http://qiita.com/toast-uz/items/dcbd4c039b76640f8a08)」で解説しています。

# 1. Windows Serverの環境構築

## 1.1. Windows Serverのインスタンス作成

AMIのクイックスタートから、Microsoft Windows Server 2016 Base、インスタンスタイプt2.mediumを選択します。

セキュリティグループを以下に設定します。

|タイプ|プロトコル|ポート範囲|送信元|
|:-----|:-----|:-----|-----|
|すべてのトラフィック|すべて|すべて|172.31.0.0/16|
|RDP|TCP|3389|マイIP|

タグとして、Name: ec2-JMmasterを追加します。

キーペアを作成するか既存のものがあれば選択して、インスンスを作成します。

## 1.2. リモートデスクトップ接続

ec2マネジメントコンソールから、先ほど作成したec2-JMmasterを選択して、上にある「接続」ボタンを押下します。ダイアログボックスにおいて「パスワードの取得」を選択して、キーペアの中身をコピーして、バスワードを表示させます。

リモートテスクトップクライアントに表示された内容を設定します。

サーバーをシャットダウンするとパブリックIPアドレスが変わるため、リモートデスクトップクライアントのPC nameを再設定する必要がありますので、注意してください。

これで、リモートデスクトップからWindows Serverにログインできます。

自動的に初期設定された後、他のPCから検索されてよいか？と出ますので、とりあえずNOとしておきます。

## 1.3. Windowsの日本語化

コントロールパネルからAdd a languageを選択します。日本語を追加して、Optionsをクリックして、Download and install language packをクリックし、インストールします。

インストール完了後、再度Optionsをクリックして、Make this the primary languageをクリックし、ログオフします。

再度リモートデスクトップからログオンすると、日本語環境になっています。

コントロールパネルから、時計、言語、および地域を選択して、タイムゾーンを日本に変更します。また、地域をクリックして、ダイアログボックスの場所タブで日本を、管理タブでシステムロケールを日本に変更します。（再起動が必要です）

次に、キーボードを日本語配列にしたいのですが、macのリモートデスクトップで日本語配列キーボードを使うのは難関のようです。いろいろググって試すものの、私の環境ではうまくいきませんでした。

## 1.4. IEのセキュリティ設定の解除

デフォルトでは、IEセキュリティ強化の構成がオンになっており、あちこちブラウズして必要なソフトをダウンロードするにあたって、頻繁にアラートが表示されますので、これをオフにしておきます。

「サーバー マネージャ」で、「ローカル サーバー」「プロパティ」セクションで、オプション「IE セキュリティ強化の構成」の設定を「オフ」に切り替えます。

# 2. JMeterのインストール

## 2.1 Javaランタイムのインストール

Javaのランタイムをインストールします。この記事では、Version 8 Update 131（リリース日 2017年4月18日）でした。

## 2.2 JMeter本体のインストール

Download Apache JMeterのページから最新版v3.2をダウンロードして、展開します。出来上がったapache-jMeter-3.2フォルダを、Program Filesに移動して、bin配下のjmeter（Windowsバッチファイル）のショートカットを、デスクトップに配置してくと便利です。

バッチファイルにより、JMeterが無事に起動することを確認します。

![スクリーンショット 2017-05-05 13.57.57.png](https://qiita-image-store.s3.amazonaws.com/0/156600/516b32cd-cd9e-e22f-9b1d-525a7c919360.png)

## 2.3 JMeter pluginsのインストール

Download JMeter-Plugins.org から、plugins-managerをダウンロードして、JMeterのlib/extに配置します。再度JMeterを起動すると、オプションメニューでPlugins Managerを選択できるようになります。

ここでは、Plugins Managerから、3 Basic Graphsを選択して、イントスールしておきましょう。

# 3. JMeterの実行

# 3.1 テスト計画の作成

ツリーメニューの中から、テスト計画を右クリックして、スレッドグループを選択します。

![スクリーンショット 2017-05-05 14.11.06.png](https://qiita-image-store.s3.amazonaws.com/0/156600/1759c052-bab3-548a-473d-015c6bd8e556.png)

スレッド数1000、Ramp-Up期間10、ループ回数10を設定します。
なお、スレッド数をかなり大きくすると、テストが正常に終了しないようです。

![スクリーンショット 2017-05-05 15.11.40.png](https://qiita-image-store.s3.amazonaws.com/0/156600/f1b8554a-fe7b-41da-31bc-31d714dd68d8.png)

テスト計画を再度右クリックして、リスナーからjp@gc - Transactions per Secondを選択します。

![スクリーンショット 2017-05-05 14.15.17.png](https://qiita-image-store.s3.amazonaws.com/0/156600/2d9b7442-1bd2-b526-f0e8-7dd3e3b6029e.png)

スレッドグループを右クリックして、サンプラーからHTTPリクエストを追加します。

![スクリーンショット 2017-05-05 14.17.47.png](https://qiita-image-store.s3.amazonaws.com/0/156600/c5666dc4-3b1d-a06e-95c7-aec46e94b4b8.png)

別に用意してあるWebサーバー名（IPアドレス）と、パスを指定します。

![スクリーンショット 2017-05-05 14.20.08.png](https://qiita-image-store.s3.amazonaws.com/0/156600/e4ca7bf5-0b09-c24c-dbb2-7bfced91afec.png)

以上で準備は終わりです。作成したテスト計画をセーブしておきます。

# 3.2 テスト実行と結果の確認

ツールバーから、緑の右三角をクリックしてテストを実行します。
実行結果はグラフで見ることができます。

![スクリーンショット 2017-05-05 15.12.43.png](https://qiita-image-store.s3.amazonaws.com/0/156600/9af64ef2-ee72-c797-665b-821e08ba0034.png)